From bae6b910d40090a71e5e14502b236e8a46cf2a2a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Krzysztof=20=C5=81aputa?= Date: Mon, 8 Apr 2019 19:11:26 +0100 Subject: [PATCH] Read theme name from file and show it in the menu --- DarkTheme/DarkTheme.cs | 5 +++++ DarkTheme/DarkThemeExt.cs | 15 ++++++++------- DarkTheme/Properties/AssemblyInfo.cs | 4 ++-- DarkTheme/Skin/ISkin.cs | 2 ++ 4 files changed, 17 insertions(+), 9 deletions(-) diff --git a/DarkTheme/DarkTheme.cs b/DarkTheme/DarkTheme.cs index 360e717..1651065 100644 --- a/DarkTheme/DarkTheme.cs +++ b/DarkTheme/DarkTheme.cs @@ -22,6 +22,11 @@ public bool Enabled set { SetEnable(value); } } + public string Name + { + get { return _skin.Name; } + } + public DarkTheme(bool enabled) { _defaultSkin = new DefaultSkin(); diff --git a/DarkTheme/DarkThemeExt.cs b/DarkTheme/DarkThemeExt.cs index d079a77..a57d876 100644 --- a/DarkTheme/DarkThemeExt.cs +++ b/DarkTheme/DarkThemeExt.cs @@ -10,12 +10,12 @@ namespace DarkTheme { public sealed class DarkThemeExt : Plugin { - private const string DarkThemeMenuItemCaption = "Dark theme"; private const string DarkModeOnConfigItem = "DarkTheme.Enabled"; private ControlVisitor _controlVisitor; private DarkTheme _theme; private IPluginHost _host; + private ToolStripMenuItem _menuItem; public override bool Initialize(IPluginHost host) { @@ -40,12 +40,12 @@ public override ToolStripMenuItem GetMenuItem(PluginMenuType t) { if (t == PluginMenuType.Main) { - var menuItem = new ToolStripMenuItem(DarkThemeMenuItemCaption); - menuItem.CheckOnClick = true; - menuItem.Checked = _theme.Enabled; - menuItem.ShortcutKeys = Keys.Control | Keys.T; - menuItem.Click += HandleToggleDarkModeMenuItemClick; - return menuItem; + _menuItem = new ToolStripMenuItem(_theme.Name); + _menuItem.CheckOnClick = true; + _menuItem.Checked = _theme.Enabled; + _menuItem.ShortcutKeys = Keys.Control | Keys.T; + _menuItem.Click += HandleToggleDarkModeMenuItemClick; + return _menuItem; } return base.GetMenuItem(t); @@ -55,6 +55,7 @@ private void HandleToggleDarkModeMenuItemClick(object sender, EventArgs eventArg { _theme.Enabled = !_theme.Enabled; _host.CustomConfig.SetBool(DarkModeOnConfigItem, _theme.Enabled); + _menuItem.Text = _theme.Name; ApplyThemeInOpenForms(); } diff --git a/DarkTheme/Properties/AssemblyInfo.cs b/DarkTheme/Properties/AssemblyInfo.cs index 3907bcf..505bfec 100644 --- a/DarkTheme/Properties/AssemblyInfo.cs +++ b/DarkTheme/Properties/AssemblyInfo.cs @@ -32,5 +32,5 @@ // You can specify all the values or you can default the Build and Revision Numbers // by using the '*' as shown below: // [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("0.2.0.0")] -[assembly: AssemblyFileVersion("0.2.0.0")] +[assembly: AssemblyVersion("0.3.0.0")] +[assembly: AssemblyFileVersion("0.3.0.0")] diff --git a/DarkTheme/Skin/ISkin.cs b/DarkTheme/Skin/ISkin.cs index 197db68..1be155c 100644 --- a/DarkTheme/Skin/ISkin.cs +++ b/DarkTheme/Skin/ISkin.cs @@ -5,6 +5,8 @@ namespace DarkTheme.Skin { internal interface ISkin { + string Name { get; } + TreeViewDrawMode TreeViewDrawMode { get; } Image ListViewBackground { get; } bool ListViewBackgroundTiled { get; }