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

@@ -0,0 +1,45 @@
using System.Collections.ObjectModel;
using System.Linq;
using Windows.UI.Xaml.Controls;
using ModernKeePass.Common;
using ModernKeePass.Interfaces;
using ModernKeePass.Pages;
namespace ModernKeePass.ViewModels
{
public class SettingsVM : NotifyPropertyChangedBase, IHasSelectableObject
{
private ListMenuItemVm _selectedItem;
public ObservableCollection<ListMenuItemVm> MenuItems { get; set; }
public ISelectableModel SelectedItem
{
get { return _selectedItem; }
set
{
if (_selectedItem == value) return;
if (_selectedItem != null)
{
_selectedItem.IsSelected = false;
}
SetProperty(ref _selectedItem, (ListMenuItemVm)value);
if (_selectedItem != null)
{
_selectedItem.IsSelected = true;
}
}
}
public SettingsVM()
{
MenuItems = new ObservableCollection<ListMenuItemVm>
{
new ListMenuItemVm { Title = "Database", SymbolIcon = Symbol.Setting, PageType = typeof(SettingsDatabasePage), IsSelected = true },
//new ListMenuItemVm { Title = "General", SymbolIcon = Symbol.Edit, PageType = typeof(SettingsGeneralPage) }
};
SelectedItem = MenuItems.FirstOrDefault(m => m.IsSelected);
}
}
}