Files
modernkeepass/ModernKeePass/ViewModels/OpenVm.cs

43 lines
1.1 KiB
C#
Raw Normal View History

using Windows.Storage;
using ModernKeePass.Common;
using ModernKeePass.Interfaces;
using ModernKeePass.Services;
namespace ModernKeePass.ViewModels
{
public class OpenVm: NotifyPropertyChangedBase
{
public bool IsFileSelected => DatabaseFile != null;
public string Name => DatabaseFile.DisplayName;
public StorageFile DatabaseFile { get; private set; }
public OpenVm() : this(null) { }
public OpenVm(StorageFile file)
2017-10-11 15:10:28 -04:00
{
if (!IsFileSelected) return;
OpenFile(file);
2017-10-11 15:10:28 -04:00
}
public void OpenFile(StorageFile file)
{
OpenFile(file, RecentService.Instance);
}
public void OpenFile(StorageFile file, IRecentService recent)
{
DatabaseFile = file;
OnPropertyChanged("Name");
OnPropertyChanged("IsFileSelected");
AddToRecentList(file, recent);
}
private void AddToRecentList(StorageFile file, IRecentService recent)
{
recent.Add(file, file.DisplayName);
}
}
}