1
0
mirror of https://github.com/Artemis-RGB/Artemis synced 2025-12-13 05:48:35 +00:00

Add window titles to window service

Add window title to layer edit window
Clean up flyout settings VM
This commit is contained in:
SpoinkyNL 2017-02-06 15:24:42 +01:00
parent 992d79a43f
commit 0e1c7d9e3b
3 changed files with 21 additions and 23 deletions

View File

@ -50,7 +50,7 @@ namespace Artemis.Models
new ConstructorArgument("dataModel", dataModel),
new ConstructorArgument("layer", layer)
};
_windowService.ShowDialog<LayerEditorViewModel>(args);
_windowService.ShowDialog<LayerEditorViewModel>("Artemis | Edit layer", args);
// If the layer was a folder, but isn't anymore, assign it's children to it's parent.
if (layer.LayerType is FolderType || !layer.Children.Any())

View File

@ -1,4 +1,5 @@
using Caliburn.Micro;
using System.Dynamic;
using Caliburn.Micro;
using Ninject;
using Ninject.Parameters;
@ -13,21 +14,25 @@ namespace Artemis.Services
_kernel = kernel;
}
public T ShowWindow<T>(params IParameter[] param) where T : class
public T ShowWindow<T>(string windowName, params IParameter[] param) where T : class
{
var windowManager = new WindowManager();
var viewModel = _kernel.Get<T>(param);
windowManager.ShowWindow(viewModel);
var viewModel = _kernel.Get<T>(param);
dynamic settings = new ExpandoObject();
settings.Title = windowName;
windowManager.ShowWindow(viewModel, null, settings);
return viewModel;
}
public T ShowDialog<T>(params IParameter[] param) where T : class
public T ShowDialog<T>(string dialogName, params IParameter[] param) where T : class
{
var windowManager = new WindowManager();
var viewModel = _kernel.Get<T>(param);
windowManager.ShowDialog(viewModel);
dynamic settings = new ExpandoObject();
settings.Title = dialogName;
windowManager.ShowDialog(viewModel, null, settings);
return viewModel;
}
}

View File

@ -1,35 +1,33 @@
using System;
using System.ComponentModel;
using System.Diagnostics;
using System.Dynamic;
using System.Linq;
using System.Reflection;
using Artemis.DAL;
using Artemis.Events;
using Artemis.Managers;
using Artemis.Services;
using Artemis.Settings;
using Artemis.Utilities;
using Caliburn.Micro;
using MahApps.Metro.Controls;
using NLog;
using ILogger = Ninject.Extensions.Logging.ILogger;
using Process = System.Diagnostics.Process;
namespace Artemis.ViewModels.Flyouts
{
public sealed class FlyoutSettingsViewModel : FlyoutBaseViewModel
{
private readonly DebugViewModel _debugViewModel;
private readonly ILogger _logger;
private readonly WindowService _windowService;
private string _activeEffectName;
private bool _enableDebug;
private GeneralSettings _generalSettings;
private string _selectedKeyboardProvider;
public FlyoutSettingsViewModel(MainManager mainManager, ILogger logger, DebugViewModel debugViewModel)
public FlyoutSettingsViewModel(MainManager mainManager, ILogger logger, WindowService windowService)
{
_logger = logger;
_debugViewModel = debugViewModel;
_windowService = windowService;
MainManager = mainManager;
Header = "Settings";
@ -196,7 +194,9 @@ namespace Artemis.ViewModels.Flyouts
MainManager.LoopManager.StartAsync();
}
else
{
MainManager.DeviceManager.ReleaseActiveKeyboard(true);
}
}
public void ToggleEnabled()
@ -215,14 +215,7 @@ namespace Artemis.ViewModels.Flyouts
public void ShowDebug()
{
IWindowManager manager = new WindowManager();
dynamic settings = new ExpandoObject();
var icon = ImageUtilities.GenerateWindowIcon();
settings.Title = "Artemis | Debugger";
settings.Icon = icon;
manager.ShowWindow(_debugViewModel, null, settings);
_windowService.ShowWindow<DebugViewModel>("Artemis | Debugger");
}
public void ResetSettings()
@ -248,4 +241,4 @@ namespace Artemis.ViewModels.Flyouts
: GeneralSettings.LastKeyboard;
}
}
}
}