|
|
|
@ -123,11 +123,13 @@ namespace GBase |
|
|
|
/// </summary> |
|
|
|
/// </summary> |
|
|
|
/// <param name="entry">The entry implementing <see cref="INotifyGBaseEntryChanged"/></param> |
|
|
|
/// <param name="entry">The entry implementing <see cref="INotifyGBaseEntryChanged"/></param> |
|
|
|
/// <returns>True if successful, false if not</returns> |
|
|
|
/// <returns>True if successful, false if not</returns> |
|
|
|
public bool AddEntry(T entry) //TODO: Write to file |
|
|
|
public async Task<bool> AddEntry(T entry) //TODO: Write to file |
|
|
|
{ |
|
|
|
{ |
|
|
|
Entries.Add(entry); |
|
|
|
Entries.Add(entry); |
|
|
|
entry.GBaseEntryChanged += OnGBaseEntryChanged; |
|
|
|
entry.GBaseEntryChanged += OnGBaseEntryChanged; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
await _fileHandler.AddEntry(entry, this); |
|
|
|
|
|
|
|
|
|
|
|
return true; |
|
|
|
return true; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@ -136,13 +138,15 @@ namespace GBase |
|
|
|
/// </summary> |
|
|
|
/// </summary> |
|
|
|
/// <param name="entry">The entry implementing <see cref="INotifyGBaseEntryChanged"/></param> |
|
|
|
/// <param name="entry">The entry implementing <see cref="INotifyGBaseEntryChanged"/></param> |
|
|
|
/// <returns>True if successful, false if not</returns> |
|
|
|
/// <returns>True if successful, false if not</returns> |
|
|
|
public bool RemoveEntry(T entry) //TODO: remove from file |
|
|
|
public async Task<bool> RemoveEntry(T entry) //TODO: remove from file |
|
|
|
{ |
|
|
|
{ |
|
|
|
if (!Entries.Contains(entry)) |
|
|
|
if (!Entries.Contains(entry)) |
|
|
|
return false; |
|
|
|
return false; |
|
|
|
|
|
|
|
|
|
|
|
entry.GBaseEntryChanged -= OnGBaseEntryChanged; |
|
|
|
entry.GBaseEntryChanged -= OnGBaseEntryChanged; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
await _fileHandler.RemoveEntry(entry); |
|
|
|
|
|
|
|
|
|
|
|
return Entries.Remove(entry); |
|
|
|
return Entries.Remove(entry); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@ -190,7 +194,7 @@ namespace GBase |
|
|
|
|
|
|
|
|
|
|
|
foreach (var entry in Entries.ToList()) |
|
|
|
foreach (var entry in Entries.ToList()) |
|
|
|
{ |
|
|
|
{ |
|
|
|
RemoveEntry(entry); |
|
|
|
await RemoveEntry(entry); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
Entries.Clear(); |
|
|
|
Entries.Clear(); |
|
|
|
|