diff --git a/ModernKeePass/App.xaml b/ModernKeePass/App.xaml
index 9866df7..885a6bc 100644
--- a/ModernKeePass/App.xaml
+++ b/ModernKeePass/App.xaml
@@ -40,6 +40,13 @@
+
diff --git a/ModernKeePass/Pages/EntryDetailPage.xaml b/ModernKeePass/Pages/EntryDetailPage.xaml
index 2142368..2a50976 100644
--- a/ModernKeePass/Pages/EntryDetailPage.xaml
+++ b/ModernKeePass/Pages/EntryDetailPage.xaml
@@ -56,10 +56,16 @@
AutomationProperties.Name="Back"
AutomationProperties.AutomationId="BackButton"
AutomationProperties.ItemType="Navigation Button"/>
-
+
-
+
diff --git a/ModernKeePass/Pages/GroupDetailPage.xaml b/ModernKeePass/Pages/GroupDetailPage.xaml
index f2b8059..af21e95 100644
--- a/ModernKeePass/Pages/GroupDetailPage.xaml
+++ b/ModernKeePass/Pages/GroupDetailPage.xaml
@@ -187,24 +187,21 @@
AutomationProperties.Name="Back"
AutomationProperties.AutomationId="BackButton"
AutomationProperties.ItemType="Navigation Button"/>
-
+ VerticalAlignment="Center"
+ Margin="0,0,30,0"/>
-
-
-
-
-
+
+
diff --git a/ModernKeePass/ViewModels/EntryVm.cs b/ModernKeePass/ViewModels/EntryVm.cs
index 0e89a64..f738764 100644
--- a/ModernKeePass/ViewModels/EntryVm.cs
+++ b/ModernKeePass/ViewModels/EntryVm.cs
@@ -1,17 +1,19 @@
using Windows.UI.Text;
using Windows.UI.Xaml.Controls;
+using ModernKeePass.Common;
using ModernKeePass.Mappings;
using ModernKeePassLib;
using ModernKeePassLib.Security;
namespace ModernKeePass.ViewModels
{
- public class EntryVm
+ public class EntryVm: NotifyPropertyChangedBase
{
public GroupVm ParentGroup { get; }
- public PwEntry Entry => _pwEntry;
- public System.Drawing.Color? BackgroundColor => _pwEntry?.BackgroundColor;
- public System.Drawing.Color? ForegroundColor => _pwEntry?.ForegroundColor;
+ public PwEntry Entry { get; }
+
+ public System.Drawing.Color? BackgroundColor => Entry?.BackgroundColor;
+ public System.Drawing.Color? ForegroundColor => Entry?.ForegroundColor;
public string Title
{
@@ -47,18 +49,24 @@ namespace ModernKeePass.ViewModels
{
get
{
- if (_pwEntry == null) return Symbol.Add;
- var result = PwIconToSegoeMapping.GetSymbolFromIcon(_pwEntry.IconId);
+ if (Entry == null) return Symbol.Add;
+ var result = PwIconToSegoeMapping.GetSymbolFromIcon(Entry.IconId);
return result == Symbol.More ? Symbol.Permissions : result;
}
}
-
- private readonly PwEntry _pwEntry;
+
+ public bool IsEditMode
+ {
+ get { return _isEditMode; }
+ set { SetProperty(ref _isEditMode, value); }
+ }
+
+ private bool _isEditMode;
public EntryVm() { }
public EntryVm(PwEntry entry, GroupVm parent)
{
- _pwEntry = entry;
+ Entry = entry;
ParentGroup = parent;
}
@@ -69,12 +77,12 @@ namespace ModernKeePass.ViewModels
private string GetEntryValue(string key)
{
- return _pwEntry?.Strings.GetSafe(key).ReadString();
+ return Entry?.Strings.GetSafe(key).ReadString();
}
private void SetEntryValue(string key, string newValue)
{
- _pwEntry?.Strings.Set(key, new ProtectedString(true, newValue));
+ Entry?.Strings.Set(key, new ProtectedString(true, newValue));
}
}
}
diff --git a/ModernKeePass/ViewModels/GroupVm.cs b/ModernKeePass/ViewModels/GroupVm.cs
index d4e48bb..4da682b 100644
--- a/ModernKeePass/ViewModels/GroupVm.cs
+++ b/ModernKeePass/ViewModels/GroupVm.cs
@@ -13,12 +13,17 @@ namespace ModernKeePass.ViewModels
public GroupVm ParentGroup { get; }
public ObservableCollection Entries { get; set; } = new ObservableCollection();
public ObservableCollection Groups { get; set; } = new ObservableCollection();
- public string Name => _pwGroup == null ? "New group" : _pwGroup.Name;
+
public int EntryCount => Entries.Count - 1;
public int GroupCount => Groups.Count - 1;
public bool IsNotRoot => ParentGroup != null;
public FontWeight FontWeight => _pwGroup == null ? FontWeights.Bold : FontWeights.Normal;
+ public string Name
+ {
+ get { return _pwGroup == null ? "New group" : _pwGroup.Name; }
+ set { _pwGroup.Name = value; }
+ }
public Symbol IconSymbol
{
get
@@ -35,8 +40,15 @@ namespace ModernKeePass.ViewModels
set { SetProperty(ref _isLeftPaneOpen, value); }
}
+ public bool IsEditMode
+ {
+ get { return _isEditMode; }
+ set { SetProperty(ref _isEditMode, value); }
+ }
+
private readonly PwGroup _pwGroup;
private bool _isLeftPaneOpen;
+ private bool _isEditMode;
public GroupVm() {}