@@ -4,7 +4,12 @@ namespace PackedTables.Net
44{
55 //
66 public class PackedTableSet {
7- private string _FileName { get ; set ; } = "" ;
7+ private string _fileName { get ; set ; } = "" ;
8+ private bool _modified { get ; set ; } = false ;
9+ public bool Modified {
10+ get { return _modified ; }
11+ set { _modified = value ; }
12+ }
813 private DataSetModel _Package { get ; set ; } = new DataSetModel ( ) ;
914
1015 public PackedTableSet ( ) { }
@@ -32,6 +37,7 @@ public void LoadFromBase64String(string base64) {
3237 ResetOwnership ( ) ;
3338 }
3439 }
40+ _modified = false ;
3541 }
3642
3743 private void ResetOwnership ( ) {
@@ -48,7 +54,8 @@ private void ResetOwnership() {
4854
4955 public void LoadFromFile ( string fileName ) {
5056 if ( File . Exists ( fileName ) ) {
51- _FileName = fileName ;
57+ _fileName = fileName ;
58+ _modified = false ;
5259 var encoded = Task . Run ( async ( ) => await fileName . ReadAllTextAsync ( ) . ConfigureAwait ( false ) ) . GetAwaiter ( ) . GetResult ( ) ;
5360 LoadFromBase64String ( encoded ) ;
5461 }
@@ -57,6 +64,7 @@ public void LoadFromFile(string fileName) {
5764 public void SaveToFile ( string fileName ) {
5865 var base64 = SaveToBase64String ( ) ;
5966 Task . Run ( async ( ) => await base64 . WriteAllTextAsync ( fileName ) . ConfigureAwait ( false ) ) . GetAwaiter ( ) . GetResult ( ) ;
67+ _modified = false ;
6068 }
6169
6270 public string SaveToJson ( ) {
@@ -73,6 +81,7 @@ public void LoadFromJson(string json) {
7381 ResetOwnership ( ) ;
7482 }
7583 }
84+ _modified = false ;
7685 }
7786 #endregion
7887
@@ -106,6 +115,7 @@ public TableModel AddTable(string tableName) {
106115 } ;
107116 _Package . Tables [ tableNew . Id ] = tableNew ;
108117 _Package . NameIndex [ tableName ] = tableNew . Id ;
118+ _modified = true ;
109119 return tableNew ;
110120 }
111121
@@ -127,6 +137,7 @@ public void RemoveTable(string tableName) {
127137 if ( table != null ) {
128138 _Package . Tables . TryRemove ( table . Id , out _ ) ;
129139 _Package . NameIndex . TryRemove ( tableName , out _ ) ;
140+ _modified = true ;
130141 } else {
131142 throw new Exception ( $ "Table { tableName } does not exist.") ;
132143 }
0 commit comments