mirror of
https://github.com/Artemis-RGB/Artemis
synced 2026-11-11 03:19:56 +00:00
Profile editor - Added F5 hotkey to toggle normal profile playback
Profile editor - Disable toolbar and tools during normal profile playback Layer conditions - Properly apply Skip To End stop-mode on profile start
This commit is contained in:
1 parent
472bcccdb6
commit
51a5724adf
14 files changed
+110
-37
No files matched your search
@@ -37,7 +37,8 @@ namespace Artemis.UI.Screens.ProfileEditor
|
||||
private LayerPropertiesViewModel _layerPropertiesViewModel;
|
||||
private ProfileTreeViewModel _profileTreeViewModel;
|
||||
private ProfileViewModel _profileViewModel;
|
||||
|
||||
private bool _suspendedManually;
|
||||
|
||||
public ProfileEditorViewModel(ProfileViewModel profileViewModel,
|
||||
ProfileTreeViewModel profileTreeViewModel,
|
||||
DisplayConditionsViewModel dataModelConditionsViewModel,
|
||||
@@ -62,7 +63,7 @@ namespace Artemis.UI.Screens.ProfileEditor
|
||||
_eventAggregator = eventAggregator;
|
||||
_scriptVmFactory = scriptVmFactory;
|
||||
_sidebarVmFactory = sidebarVmFactory;
|
||||
|
||||
|
||||
DisplayName = "Profile Editor";
|
||||
DialogService = dialogService;
|
||||
|
||||
@@ -105,6 +106,12 @@ namespace Artemis.UI.Screens.ProfileEditor
|
||||
set => SetAndNotify(ref _profileViewModel, value);
|
||||
}
|
||||
|
||||
public bool SuspendedManually
|
||||
{
|
||||
get => _suspendedManually;
|
||||
set => SetAndNotify(ref _suspendedManually, value);
|
||||
}
|
||||
|
||||
public PluginSetting<GridLength> SidePanelsWidth => _settingsService.GetSetting("ProfileEditor.SidePanelsWidth", new GridLength(385));
|
||||
public PluginSetting<GridLength> DataModelConditionsHeight => _settingsService.GetSetting("ProfileEditor.DataModelConditionsHeight", new GridLength(345));
|
||||
public PluginSetting<GridLength> BottomPanelsHeight => _settingsService.GetSetting("ProfileEditor.BottomPanelsHeight", new GridLength(265));
|
||||
@@ -168,6 +175,17 @@ namespace Artemis.UI.Screens.ProfileEditor
|
||||
_messageService.ShowMessage("Redid profile update", "UNDO", Undo);
|
||||
}
|
||||
|
||||
public void ToggleSuspend()
|
||||
{
|
||||
_profileEditorService.SuspendEditing = !_profileEditorService.SuspendEditing;
|
||||
SuspendedManually = _profileEditorService.SuspendEditing;
|
||||
}
|
||||
|
||||
public void ToggleAutoSuspend()
|
||||
{
|
||||
StopOnFocusLoss.Value = !StopOnFocusLoss.Value;
|
||||
}
|
||||
|
||||
#region Overrides of Screen
|
||||
|
||||
protected override void OnInitialActivate()
|
||||
@@ -194,6 +212,8 @@ namespace Artemis.UI.Screens.ProfileEditor
|
||||
_profileEditorService.SelectedProfileElementChanged -= ProfileEditorServiceOnSelectedProfileElementChanged;
|
||||
_eventAggregator.Unsubscribe(this);
|
||||
SaveWorkspaceSettings();
|
||||
|
||||
_profileEditorService.SuspendEditing = false;
|
||||
_profileEditorService.ChangeSelectedProfileConfiguration(null);
|
||||
|
||||
base.OnClose();
|
||||
@@ -210,7 +230,7 @@ namespace Artemis.UI.Screens.ProfileEditor
|
||||
{
|
||||
NotifyOfPropertyChange(nameof(HasSelectedElement));
|
||||
}
|
||||
|
||||
|
||||
private void SaveWorkspaceSettings()
|
||||
{
|
||||
SidePanelsWidth.Save();
|
||||
@@ -322,7 +342,7 @@ namespace Artemis.UI.Screens.ProfileEditor
|
||||
/// <inheritdoc />
|
||||
public void Handle(MainWindowFocusChangedEvent message)
|
||||
{
|
||||
if (!StopOnFocusLoss.Value)
|
||||
if (!StopOnFocusLoss.Value || SuspendedManually)
|
||||
return;
|
||||
|
||||
_profileEditorService.SuspendEditing = !message.IsFocused;
|
||||
|
||||
Reference in new issue
Block a user