New Database settings page

Implements Recycle Bin (new group creation still needs to be implemented)
Code refactoring
This commit is contained in:
2017-10-30 18:34:38 +01:00
committed by BONNEVILLE Geoffroy
parent fa3d38db18
commit 699452667c
22 changed files with 395 additions and 459 deletions

View File

@@ -16,13 +16,31 @@ namespace ModernKeePass.Common
Opening = 1,
Opened = 2
}
private PwDatabase _pwDatabase = new PwDatabase();
private readonly PwDatabase _pwDatabase = new PwDatabase();
private StorageFile _databaseFile;
private GroupVm _recycleBin;
public GroupVm RootGroup { get; set; }
public GroupVm RecycleBin
{
get { return _recycleBin; }
set
{
_recycleBin = value;
_pwDatabase.RecycleBinUuid = _recycleBin.IdUuid;
}
}
public DatabaseStatus Status { get; private set; } = DatabaseStatus.Closed;
public string Name => DatabaseFile?.Name;
public bool RecycleBinEnabled
{
get { return _pwDatabase.RecycleBinEnabled; }
set { _pwDatabase.RecycleBinEnabled = value; }
}
public StorageFile DatabaseFile
{
get { return _databaseFile; }
@@ -52,7 +70,7 @@ namespace ModernKeePass.Common
if (_pwDatabase.IsOpen)
{
Status = DatabaseStatus.Opened;
RootGroup = new GroupVm(_pwDatabase.RootGroup, null);
RootGroup = new GroupVm(_pwDatabase.RootGroup, null, RecycleBinEnabled ? _pwDatabase.RecycleBinUuid : null);
}
}
catch (ArgumentNullException)