mirror of
https://github.com/Ottermandias/Glamourer.git
synced 2025-12-15 13:14:17 +01:00
Store last selected design, apply that design and last selected tab.
This commit is contained in:
parent
f07717240f
commit
64c1f75ee0
3 changed files with 20 additions and 0 deletions
|
|
@ -16,6 +16,7 @@ public class EphemeralConfig : ISavable
|
|||
public bool LockDesignQuickBar { get; set; } = false;
|
||||
public bool LockMainWindow { get; set; } = false;
|
||||
public MainWindow.TabType SelectedTab { get; set; } = MainWindow.TabType.Settings;
|
||||
public Guid SelectedDesign { get; set; } = Guid.Empty;
|
||||
public int LastSeenVersion { get; set; } = GlamourerChangelog.LastChangelogVersion;
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -91,6 +91,7 @@ public class MainWindow : Window, IDisposable
|
|||
messages,
|
||||
debugTab,
|
||||
];
|
||||
SelectTab = _config.Ephemeral.SelectedTab;
|
||||
_event.Subscribe(OnTabSelected, TabSelected.Priority.MainWindow);
|
||||
IsOpen = _config.OpenWindowAtStart;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -61,6 +61,24 @@ public sealed class DesignFileSystemSelector : FileSystemSelector<Design, Design
|
|||
AddButton(CloneDesignButton, 20);
|
||||
AddButton(DeleteButton, 1000);
|
||||
SetFilterTooltip();
|
||||
|
||||
if (_config.Ephemeral.SelectedDesign == Guid.Empty)
|
||||
return;
|
||||
|
||||
var design = designManager.Designs.ByIdentifier(_config.Ephemeral.SelectedDesign);
|
||||
if (design != null)
|
||||
SelectByValue(design);
|
||||
}
|
||||
|
||||
protected override void Select(FileSystem<Design>.Leaf? leaf, bool clear, in DesignState storage = default)
|
||||
{
|
||||
base.Select(leaf, clear, storage);
|
||||
var id = SelectedLeaf?.Value.Identifier ?? Guid.Empty;
|
||||
if (id != _config.Ephemeral.SelectedDesign)
|
||||
{
|
||||
_config.Ephemeral.SelectedDesign = id;
|
||||
_config.Ephemeral.Save();
|
||||
}
|
||||
}
|
||||
|
||||
protected override void DrawPopups()
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue