Initial refactoring to support CommandManager

This commit is contained in:
Ben Wallis
2017-06-17 13:50:44 +01:00
parent b65fad0679
commit fee2a4dd99
26 changed files with 549 additions and 201 deletions

View File

@@ -11,8 +11,8 @@ namespace Filtration.ThemeEditor.Providers
{
public interface IThemeProvider
{
IThemeEditorViewModel NewThemeForScript(ItemFilterScript script);
IThemeEditorViewModel MasterThemeForScript(ItemFilterScript script);
IThemeEditorViewModel NewThemeForScript(IItemFilterScript script);
IThemeEditorViewModel MasterThemeForScript(IItemFilterScript script);
Task<IThemeEditorViewModel> LoadThemeFromFile(string filePath);
Task<Theme> LoadThemeModelFromFile(string filePath);
Task SaveThemeAsync(IThemeEditorViewModel themeEditorViewModel, string filePath);
@@ -29,7 +29,7 @@ namespace Filtration.ThemeEditor.Providers
_themePersistenceService = themePersistenceService;
}
public IThemeEditorViewModel NewThemeForScript(ItemFilterScript script)
public IThemeEditorViewModel NewThemeForScript(IItemFilterScript script)
{
var themeComponentCollection = script.ThemeComponents.Aggregate(new ThemeComponentCollection(),
(c, component) =>
@@ -45,7 +45,7 @@ namespace Filtration.ThemeEditor.Providers
return themeViewModel;
}
public IThemeEditorViewModel MasterThemeForScript(ItemFilterScript script)
public IThemeEditorViewModel MasterThemeForScript(IItemFilterScript script)
{
var themeViewModel = _themeViewModelFactory.Create();
themeViewModel.InitialiseForMasterTheme(script);

View File

@@ -12,7 +12,7 @@ namespace Filtration.ThemeEditor.Services
{
public interface IThemeService
{
void ApplyThemeToScript(Theme theme, ItemFilterScript script);
void ApplyThemeToScript(Theme theme, IItemFilterScript script);
}
public class ThemeService : IThemeService
@@ -24,7 +24,7 @@ namespace Filtration.ThemeEditor.Services
_messageBoxService = messageBoxService;
}
public void ApplyThemeToScript(Theme theme, ItemFilterScript script)
public void ApplyThemeToScript(Theme theme, IItemFilterScript script)
{
var mismatchedComponents = false;
foreach (var component in theme.Components)

View File

@@ -26,9 +26,9 @@ namespace Filtration.ThemeEditor.ViewModels
RelayCommand CloseCommand { get; }
void InitialiseForNewTheme(ThemeComponentCollection themeComponentCollection);
void InitialiseForMasterTheme(ItemFilterScript script);
void InitialiseForMasterTheme(IItemFilterScript script);
bool IsMasterTheme { get; }
ItemFilterScript IsMasterThemeForScript { get; }
IItemFilterScript IsMasterThemeForScript { get; }
string Title { get; }
string FilePath { get; set; }
string Filename { get; }
@@ -72,7 +72,7 @@ namespace Filtration.ThemeEditor.ViewModels
public bool IsMasterTheme => Components.IsMasterCollection;
public ItemFilterScript IsMasterThemeForScript { get; private set; }
public IItemFilterScript IsMasterThemeForScript { get; private set; }
public void InitialiseForNewTheme(ThemeComponentCollection themeComponentCollection)
{
@@ -80,7 +80,7 @@ namespace Filtration.ThemeEditor.ViewModels
_filenameIsFake = true;
}
public void InitialiseForMasterTheme(ItemFilterScript script)
public void InitialiseForMasterTheme(IItemFilterScript script)
{
Components = script.ThemeComponents;
IsMasterThemeForScript = script;