mirror of
https://mirror.ghproxy.com/https://github.com/dexyfex/CodeWalker
synced 2024-11-24 07:52:53 +08:00
Theming for RPF Explorer
This commit is contained in:
parent
a24ef35611
commit
2e75c875bd
@ -199,6 +199,9 @@
|
|||||||
<setting name="ProjectWindowTheme" serializeAs="String">
|
<setting name="ProjectWindowTheme" serializeAs="String">
|
||||||
<value>Blue</value>
|
<value>Blue</value>
|
||||||
</setting>
|
</setting>
|
||||||
|
<setting name="ExplorerWindowTheme" serializeAs="String">
|
||||||
|
<value>Windows</value>
|
||||||
|
</setting>
|
||||||
</CodeWalker.Properties.Settings>
|
</CodeWalker.Properties.Settings>
|
||||||
</userSettings>
|
</userSettings>
|
||||||
</configuration>
|
</configuration>
|
@ -1,7 +1,10 @@
|
|||||||
using System;
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
using System.ComponentModel;
|
using System.ComponentModel;
|
||||||
|
using System.Drawing;
|
||||||
using System.Runtime.InteropServices;
|
using System.Runtime.InteropServices;
|
||||||
using System.Windows.Forms;
|
using System.Windows.Forms;
|
||||||
|
using WeifenLuo.WinFormsUI.Docking;
|
||||||
using Point = System.Drawing.Point;
|
using Point = System.Drawing.Point;
|
||||||
|
|
||||||
namespace CodeWalker
|
namespace CodeWalker
|
||||||
@ -261,6 +264,78 @@ namespace CodeWalker
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
public static class FormTheme
|
||||||
|
{
|
||||||
|
public static void SetTheme(Control form, ThemeBase theme)
|
||||||
|
{
|
||||||
|
form.BackColor = SystemColors.Control;
|
||||||
|
form.ForeColor = SystemColors.ControlText;
|
||||||
|
var txtback = SystemColors.Window;
|
||||||
|
var wndback = SystemColors.Window;
|
||||||
|
var disback = SystemColors.Control;
|
||||||
|
var disfore = form.ForeColor;
|
||||||
|
var btnback = Color.Transparent;
|
||||||
|
|
||||||
|
if (theme is VS2015DarkTheme)
|
||||||
|
{
|
||||||
|
form.BackColor = theme.ColorPalette.MainWindowActive.Background;
|
||||||
|
form.ForeColor = Color.White;
|
||||||
|
txtback = Color.FromArgb(40, 40, 40);// form.BackColor;
|
||||||
|
wndback = theme.ColorPalette.MainWindowActive.Background;
|
||||||
|
disback = form.BackColor;// Color.FromArgb(32,32,32);
|
||||||
|
disfore = Color.DarkGray;
|
||||||
|
btnback = form.BackColor;
|
||||||
|
}
|
||||||
|
|
||||||
|
var allcontrols = new List<Control>();
|
||||||
|
RecurseControls(form, allcontrols);
|
||||||
|
|
||||||
|
foreach (var c in allcontrols)
|
||||||
|
{
|
||||||
|
if (c is TabPage)
|
||||||
|
{
|
||||||
|
c.ForeColor = form.ForeColor;
|
||||||
|
c.BackColor = wndback;
|
||||||
|
}
|
||||||
|
else if ((c is CheckedListBox) || (c is ListBox) || (c is ListView))
|
||||||
|
{
|
||||||
|
c.ForeColor = form.ForeColor;
|
||||||
|
c.BackColor = wndback;
|
||||||
|
}
|
||||||
|
else if ((c is TextBox))
|
||||||
|
{
|
||||||
|
var txtbox = c as TextBox;
|
||||||
|
c.ForeColor = txtbox.ReadOnly ? disfore : form.ForeColor;
|
||||||
|
c.BackColor = txtbox.ReadOnly ? disback : txtback;
|
||||||
|
}
|
||||||
|
else if ((c is Button) || (c is GroupBox))
|
||||||
|
{
|
||||||
|
c.ForeColor = form.ForeColor;
|
||||||
|
c.BackColor = btnback;
|
||||||
|
}
|
||||||
|
else if (c is TreeView)
|
||||||
|
{
|
||||||
|
c.ForeColor = form.ForeColor;
|
||||||
|
c.BackColor = wndback;
|
||||||
|
(c as TreeView).LineColor = form.ForeColor;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
private static void RecurseControls(Control c, List<Control> l)
|
||||||
|
{
|
||||||
|
foreach (Control cc in c.Controls)
|
||||||
|
{
|
||||||
|
l.Add(cc);
|
||||||
|
RecurseControls(cc, l);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
//unused
|
//unused
|
||||||
//public class AccurateTimer
|
//public class AccurateTimer
|
||||||
//{
|
//{
|
||||||
|
@ -12,58 +12,9 @@ namespace CodeWalker.Project
|
|||||||
public class ProjectPanel : DockContent
|
public class ProjectPanel : DockContent
|
||||||
{
|
{
|
||||||
|
|
||||||
|
|
||||||
public virtual void SetTheme(ThemeBase theme)
|
public virtual void SetTheme(ThemeBase theme)
|
||||||
{
|
{
|
||||||
BackColor = SystemColors.Control;
|
FormTheme.SetTheme(this, theme);
|
||||||
ForeColor = SystemColors.ControlText;
|
|
||||||
var txtback = SystemColors.Window;
|
|
||||||
var disback = SystemColors.Control;
|
|
||||||
var disfore = ForeColor;
|
|
||||||
var btnback = Color.Transparent;
|
|
||||||
|
|
||||||
if (theme is VS2015DarkTheme)
|
|
||||||
{
|
|
||||||
BackColor = theme.ColorPalette.MainWindowActive.Background;
|
|
||||||
ForeColor = Color.White;
|
|
||||||
txtback = BackColor;
|
|
||||||
disback = BackColor;// Color.FromArgb(32,32,32);
|
|
||||||
disfore = Color.DarkGray;
|
|
||||||
btnback = BackColor;
|
|
||||||
}
|
|
||||||
|
|
||||||
var allcontrols = new List<Control>();
|
|
||||||
RecurseControls(this, allcontrols);
|
|
||||||
|
|
||||||
foreach (var c in allcontrols)
|
|
||||||
{
|
|
||||||
if ((c is TabPage) || (c is CheckedListBox) || (c is ListBox))
|
|
||||||
{
|
|
||||||
c.ForeColor = ForeColor;
|
|
||||||
c.BackColor = txtback;
|
|
||||||
}
|
|
||||||
else if ((c is TextBox))
|
|
||||||
{
|
|
||||||
var txtbox = c as TextBox;
|
|
||||||
c.ForeColor = txtbox.ReadOnly ? disfore : ForeColor;
|
|
||||||
c.BackColor = txtbox.ReadOnly ? disback : txtback;
|
|
||||||
}
|
|
||||||
else if ((c is Button) || (c is GroupBox))
|
|
||||||
{
|
|
||||||
c.ForeColor = ForeColor;
|
|
||||||
c.BackColor = btnback;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
private void RecurseControls(Control c, List<Control> l)
|
|
||||||
{
|
|
||||||
foreach (Control cc in c.Controls)
|
|
||||||
{
|
|
||||||
l.Add(cc);
|
|
||||||
RecurseControls(cc, l);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
102
ExploreForm.Designer.cs
generated
102
ExploreForm.Designer.cs
generated
@ -58,6 +58,12 @@
|
|||||||
this.ViewSmallIconsMenu = new System.Windows.Forms.ToolStripMenuItem();
|
this.ViewSmallIconsMenu = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
this.ViewListMenu = new System.Windows.Forms.ToolStripMenuItem();
|
this.ViewListMenu = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
this.ViewDetailsMenu = new System.Windows.Forms.ToolStripMenuItem();
|
this.ViewDetailsMenu = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
|
this.toolStripSeparator11 = new System.Windows.Forms.ToolStripSeparator();
|
||||||
|
this.ViewThemeMenu = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
|
this.ViewThemeWindowsMenu = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
|
this.ViewThemeBlueMenu = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
|
this.ViewThemeLightMenu = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
|
this.ViewThemeDarkMenu = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
this.ToolsMenu = new System.Windows.Forms.ToolStripMenuItem();
|
this.ToolsMenu = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
this.ToolsBinSearchMenu = new System.Windows.Forms.ToolStripMenuItem();
|
this.ToolsBinSearchMenu = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
this.ToolsRpfBrowserMenu = new System.Windows.Forms.ToolStripMenuItem();
|
this.ToolsRpfBrowserMenu = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
@ -80,7 +86,7 @@
|
|||||||
this.SearchButton = new System.Windows.Forms.ToolStripSplitButton();
|
this.SearchButton = new System.Windows.Forms.ToolStripSplitButton();
|
||||||
this.SearchGlobalButton = new System.Windows.Forms.ToolStripMenuItem();
|
this.SearchGlobalButton = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
this.SearchFilterButton = new System.Windows.Forms.ToolStripMenuItem();
|
this.SearchFilterButton = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
this.StatusBar = new System.Windows.Forms.StatusStrip();
|
this.MainStatusBar = new System.Windows.Forms.StatusStrip();
|
||||||
this.StatusLabel = new System.Windows.Forms.ToolStripStatusLabel();
|
this.StatusLabel = new System.Windows.Forms.ToolStripStatusLabel();
|
||||||
this.FileImageList16 = new System.Windows.Forms.ImageList(this.components);
|
this.FileImageList16 = new System.Windows.Forms.ImageList(this.components);
|
||||||
this.MainSplitContainer = new System.Windows.Forms.SplitContainer();
|
this.MainSplitContainer = new System.Windows.Forms.SplitContainer();
|
||||||
@ -135,9 +141,10 @@
|
|||||||
this.SaveFileDialog = new System.Windows.Forms.SaveFileDialog();
|
this.SaveFileDialog = new System.Windows.Forms.SaveFileDialog();
|
||||||
this.OpenFileDialog = new System.Windows.Forms.OpenFileDialog();
|
this.OpenFileDialog = new System.Windows.Forms.OpenFileDialog();
|
||||||
this.FolderBrowserDialog = new System.Windows.Forms.FolderBrowserDialog();
|
this.FolderBrowserDialog = new System.Windows.Forms.FolderBrowserDialog();
|
||||||
|
this.VSExtender = new WeifenLuo.WinFormsUI.Docking.VisualStudioToolStripExtender(this.components);
|
||||||
this.MainMenu.SuspendLayout();
|
this.MainMenu.SuspendLayout();
|
||||||
this.MainToolbar.SuspendLayout();
|
this.MainToolbar.SuspendLayout();
|
||||||
this.StatusBar.SuspendLayout();
|
this.MainStatusBar.SuspendLayout();
|
||||||
((System.ComponentModel.ISupportInitialize)(this.MainSplitContainer)).BeginInit();
|
((System.ComponentModel.ISupportInitialize)(this.MainSplitContainer)).BeginInit();
|
||||||
this.MainSplitContainer.Panel1.SuspendLayout();
|
this.MainSplitContainer.Panel1.SuspendLayout();
|
||||||
this.MainSplitContainer.Panel2.SuspendLayout();
|
this.MainSplitContainer.Panel2.SuspendLayout();
|
||||||
@ -366,7 +373,9 @@
|
|||||||
this.ViewLargeIconsMenu,
|
this.ViewLargeIconsMenu,
|
||||||
this.ViewSmallIconsMenu,
|
this.ViewSmallIconsMenu,
|
||||||
this.ViewListMenu,
|
this.ViewListMenu,
|
||||||
this.ViewDetailsMenu});
|
this.ViewDetailsMenu,
|
||||||
|
this.toolStripSeparator11,
|
||||||
|
this.ViewThemeMenu});
|
||||||
this.ViewMenu.Name = "ViewMenu";
|
this.ViewMenu.Name = "ViewMenu";
|
||||||
this.ViewMenu.Size = new System.Drawing.Size(44, 20);
|
this.ViewMenu.Size = new System.Drawing.Size(44, 20);
|
||||||
this.ViewMenu.Text = "View";
|
this.ViewMenu.Text = "View";
|
||||||
@ -374,21 +383,21 @@
|
|||||||
// ViewLargeIconsMenu
|
// ViewLargeIconsMenu
|
||||||
//
|
//
|
||||||
this.ViewLargeIconsMenu.Name = "ViewLargeIconsMenu";
|
this.ViewLargeIconsMenu.Name = "ViewLargeIconsMenu";
|
||||||
this.ViewLargeIconsMenu.Size = new System.Drawing.Size(134, 22);
|
this.ViewLargeIconsMenu.Size = new System.Drawing.Size(152, 22);
|
||||||
this.ViewLargeIconsMenu.Text = "Large Icons";
|
this.ViewLargeIconsMenu.Text = "Large Icons";
|
||||||
this.ViewLargeIconsMenu.Click += new System.EventHandler(this.ViewLargeIconsMenu_Click);
|
this.ViewLargeIconsMenu.Click += new System.EventHandler(this.ViewLargeIconsMenu_Click);
|
||||||
//
|
//
|
||||||
// ViewSmallIconsMenu
|
// ViewSmallIconsMenu
|
||||||
//
|
//
|
||||||
this.ViewSmallIconsMenu.Name = "ViewSmallIconsMenu";
|
this.ViewSmallIconsMenu.Name = "ViewSmallIconsMenu";
|
||||||
this.ViewSmallIconsMenu.Size = new System.Drawing.Size(134, 22);
|
this.ViewSmallIconsMenu.Size = new System.Drawing.Size(152, 22);
|
||||||
this.ViewSmallIconsMenu.Text = "Small Icons";
|
this.ViewSmallIconsMenu.Text = "Small Icons";
|
||||||
this.ViewSmallIconsMenu.Click += new System.EventHandler(this.ViewSmallIconsMenu_Click);
|
this.ViewSmallIconsMenu.Click += new System.EventHandler(this.ViewSmallIconsMenu_Click);
|
||||||
//
|
//
|
||||||
// ViewListMenu
|
// ViewListMenu
|
||||||
//
|
//
|
||||||
this.ViewListMenu.Name = "ViewListMenu";
|
this.ViewListMenu.Name = "ViewListMenu";
|
||||||
this.ViewListMenu.Size = new System.Drawing.Size(134, 22);
|
this.ViewListMenu.Size = new System.Drawing.Size(152, 22);
|
||||||
this.ViewListMenu.Text = "List";
|
this.ViewListMenu.Text = "List";
|
||||||
this.ViewListMenu.Click += new System.EventHandler(this.ViewListMenu_Click);
|
this.ViewListMenu.Click += new System.EventHandler(this.ViewListMenu_Click);
|
||||||
//
|
//
|
||||||
@ -397,10 +406,56 @@
|
|||||||
this.ViewDetailsMenu.Checked = true;
|
this.ViewDetailsMenu.Checked = true;
|
||||||
this.ViewDetailsMenu.CheckState = System.Windows.Forms.CheckState.Checked;
|
this.ViewDetailsMenu.CheckState = System.Windows.Forms.CheckState.Checked;
|
||||||
this.ViewDetailsMenu.Name = "ViewDetailsMenu";
|
this.ViewDetailsMenu.Name = "ViewDetailsMenu";
|
||||||
this.ViewDetailsMenu.Size = new System.Drawing.Size(134, 22);
|
this.ViewDetailsMenu.Size = new System.Drawing.Size(152, 22);
|
||||||
this.ViewDetailsMenu.Text = "Details";
|
this.ViewDetailsMenu.Text = "Details";
|
||||||
this.ViewDetailsMenu.Click += new System.EventHandler(this.ViewDetailsMenu_Click);
|
this.ViewDetailsMenu.Click += new System.EventHandler(this.ViewDetailsMenu_Click);
|
||||||
//
|
//
|
||||||
|
// toolStripSeparator11
|
||||||
|
//
|
||||||
|
this.toolStripSeparator11.Name = "toolStripSeparator11";
|
||||||
|
this.toolStripSeparator11.Size = new System.Drawing.Size(149, 6);
|
||||||
|
//
|
||||||
|
// ViewThemeMenu
|
||||||
|
//
|
||||||
|
this.ViewThemeMenu.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||||
|
this.ViewThemeWindowsMenu,
|
||||||
|
this.ViewThemeBlueMenu,
|
||||||
|
this.ViewThemeLightMenu,
|
||||||
|
this.ViewThemeDarkMenu});
|
||||||
|
this.ViewThemeMenu.Name = "ViewThemeMenu";
|
||||||
|
this.ViewThemeMenu.Size = new System.Drawing.Size(152, 22);
|
||||||
|
this.ViewThemeMenu.Text = "Theme";
|
||||||
|
//
|
||||||
|
// ViewThemeWindowsMenu
|
||||||
|
//
|
||||||
|
this.ViewThemeWindowsMenu.Checked = true;
|
||||||
|
this.ViewThemeWindowsMenu.CheckState = System.Windows.Forms.CheckState.Checked;
|
||||||
|
this.ViewThemeWindowsMenu.Name = "ViewThemeWindowsMenu";
|
||||||
|
this.ViewThemeWindowsMenu.Size = new System.Drawing.Size(152, 22);
|
||||||
|
this.ViewThemeWindowsMenu.Text = "Windows";
|
||||||
|
this.ViewThemeWindowsMenu.Click += new System.EventHandler(this.ViewThemeWindowsMenu_Click);
|
||||||
|
//
|
||||||
|
// ViewThemeBlueMenu
|
||||||
|
//
|
||||||
|
this.ViewThemeBlueMenu.Name = "ViewThemeBlueMenu";
|
||||||
|
this.ViewThemeBlueMenu.Size = new System.Drawing.Size(152, 22);
|
||||||
|
this.ViewThemeBlueMenu.Text = "Blue";
|
||||||
|
this.ViewThemeBlueMenu.Click += new System.EventHandler(this.ViewThemeBlueMenu_Click);
|
||||||
|
//
|
||||||
|
// ViewThemeLightMenu
|
||||||
|
//
|
||||||
|
this.ViewThemeLightMenu.Name = "ViewThemeLightMenu";
|
||||||
|
this.ViewThemeLightMenu.Size = new System.Drawing.Size(152, 22);
|
||||||
|
this.ViewThemeLightMenu.Text = "Light";
|
||||||
|
this.ViewThemeLightMenu.Click += new System.EventHandler(this.ViewThemeLightMenu_Click);
|
||||||
|
//
|
||||||
|
// ViewThemeDarkMenu
|
||||||
|
//
|
||||||
|
this.ViewThemeDarkMenu.Name = "ViewThemeDarkMenu";
|
||||||
|
this.ViewThemeDarkMenu.Size = new System.Drawing.Size(152, 22);
|
||||||
|
this.ViewThemeDarkMenu.Text = "Dark";
|
||||||
|
this.ViewThemeDarkMenu.Click += new System.EventHandler(this.ViewThemeDarkMenu_Click);
|
||||||
|
//
|
||||||
// ToolsMenu
|
// ToolsMenu
|
||||||
//
|
//
|
||||||
this.ToolsMenu.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
this.ToolsMenu.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||||
@ -609,15 +664,15 @@
|
|||||||
this.SearchFilterButton.Text = "Filter";
|
this.SearchFilterButton.Text = "Filter";
|
||||||
this.SearchFilterButton.Click += new System.EventHandler(this.SearchFilterButton_Click);
|
this.SearchFilterButton.Click += new System.EventHandler(this.SearchFilterButton_Click);
|
||||||
//
|
//
|
||||||
// StatusBar
|
// MainStatusBar
|
||||||
//
|
//
|
||||||
this.StatusBar.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
this.MainStatusBar.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||||
this.StatusLabel});
|
this.StatusLabel});
|
||||||
this.StatusBar.Location = new System.Drawing.Point(0, 565);
|
this.MainStatusBar.Location = new System.Drawing.Point(0, 565);
|
||||||
this.StatusBar.Name = "StatusBar";
|
this.MainStatusBar.Name = "MainStatusBar";
|
||||||
this.StatusBar.Size = new System.Drawing.Size(876, 22);
|
this.MainStatusBar.Size = new System.Drawing.Size(876, 22);
|
||||||
this.StatusBar.TabIndex = 2;
|
this.MainStatusBar.TabIndex = 2;
|
||||||
this.StatusBar.Text = "statusStrip1";
|
this.MainStatusBar.Text = "MainStatusBar";
|
||||||
//
|
//
|
||||||
// StatusLabel
|
// StatusLabel
|
||||||
//
|
//
|
||||||
@ -1115,13 +1170,17 @@
|
|||||||
//
|
//
|
||||||
this.OpenFileDialog.Multiselect = true;
|
this.OpenFileDialog.Multiselect = true;
|
||||||
//
|
//
|
||||||
|
// VSExtender
|
||||||
|
//
|
||||||
|
this.VSExtender.DefaultRenderer = null;
|
||||||
|
//
|
||||||
// ExploreForm
|
// ExploreForm
|
||||||
//
|
//
|
||||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||||
this.ClientSize = new System.Drawing.Size(876, 587);
|
this.ClientSize = new System.Drawing.Size(876, 587);
|
||||||
this.Controls.Add(this.MainSplitContainer);
|
this.Controls.Add(this.MainSplitContainer);
|
||||||
this.Controls.Add(this.StatusBar);
|
this.Controls.Add(this.MainStatusBar);
|
||||||
this.Controls.Add(this.MainToolbar);
|
this.Controls.Add(this.MainToolbar);
|
||||||
this.Controls.Add(this.MainMenu);
|
this.Controls.Add(this.MainMenu);
|
||||||
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
|
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
|
||||||
@ -1134,8 +1193,8 @@
|
|||||||
this.MainMenu.PerformLayout();
|
this.MainMenu.PerformLayout();
|
||||||
this.MainToolbar.ResumeLayout(false);
|
this.MainToolbar.ResumeLayout(false);
|
||||||
this.MainToolbar.PerformLayout();
|
this.MainToolbar.PerformLayout();
|
||||||
this.StatusBar.ResumeLayout(false);
|
this.MainStatusBar.ResumeLayout(false);
|
||||||
this.StatusBar.PerformLayout();
|
this.MainStatusBar.PerformLayout();
|
||||||
this.MainSplitContainer.Panel1.ResumeLayout(false);
|
this.MainSplitContainer.Panel1.ResumeLayout(false);
|
||||||
this.MainSplitContainer.Panel2.ResumeLayout(false);
|
this.MainSplitContainer.Panel2.ResumeLayout(false);
|
||||||
((System.ComponentModel.ISupportInitialize)(this.MainSplitContainer)).EndInit();
|
((System.ComponentModel.ISupportInitialize)(this.MainSplitContainer)).EndInit();
|
||||||
@ -1160,7 +1219,7 @@
|
|||||||
private System.Windows.Forms.ToolStripMenuItem EditMenu;
|
private System.Windows.Forms.ToolStripMenuItem EditMenu;
|
||||||
private System.Windows.Forms.ToolStripMenuItem ViewMenu;
|
private System.Windows.Forms.ToolStripMenuItem ViewMenu;
|
||||||
private System.Windows.Forms.ToolStrip MainToolbar;
|
private System.Windows.Forms.ToolStrip MainToolbar;
|
||||||
private System.Windows.Forms.StatusStrip StatusBar;
|
private System.Windows.Forms.StatusStrip MainStatusBar;
|
||||||
private System.Windows.Forms.ToolStripStatusLabel StatusLabel;
|
private System.Windows.Forms.ToolStripStatusLabel StatusLabel;
|
||||||
private System.Windows.Forms.ImageList FileImageList16;
|
private System.Windows.Forms.ImageList FileImageList16;
|
||||||
private System.Windows.Forms.ToolStripSplitButton BackButton;
|
private System.Windows.Forms.ToolStripSplitButton BackButton;
|
||||||
@ -1260,5 +1319,12 @@
|
|||||||
private System.Windows.Forms.Label label2;
|
private System.Windows.Forms.Label label2;
|
||||||
private System.Windows.Forms.ToolStripMenuItem ListContextDefragmentMenu;
|
private System.Windows.Forms.ToolStripMenuItem ListContextDefragmentMenu;
|
||||||
private System.Windows.Forms.ToolStripSeparator ListContextDefragmentSeparator;
|
private System.Windows.Forms.ToolStripSeparator ListContextDefragmentSeparator;
|
||||||
|
private System.Windows.Forms.ToolStripSeparator toolStripSeparator11;
|
||||||
|
private System.Windows.Forms.ToolStripMenuItem ViewThemeMenu;
|
||||||
|
private System.Windows.Forms.ToolStripMenuItem ViewThemeBlueMenu;
|
||||||
|
private System.Windows.Forms.ToolStripMenuItem ViewThemeLightMenu;
|
||||||
|
private System.Windows.Forms.ToolStripMenuItem ViewThemeDarkMenu;
|
||||||
|
private WeifenLuo.WinFormsUI.Docking.VisualStudioToolStripExtender VSExtender;
|
||||||
|
private System.Windows.Forms.ToolStripMenuItem ViewThemeWindowsMenu;
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -15,6 +15,7 @@ using System.Threading;
|
|||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using System.Windows.Forms;
|
using System.Windows.Forms;
|
||||||
using System.Xml;
|
using System.Xml;
|
||||||
|
using WeifenLuo.WinFormsUI.Docking;
|
||||||
|
|
||||||
namespace CodeWalker
|
namespace CodeWalker
|
||||||
{
|
{
|
||||||
@ -45,14 +46,84 @@ namespace CodeWalker
|
|||||||
|
|
||||||
private bool EditMode = false;
|
private bool EditMode = false;
|
||||||
|
|
||||||
|
public ThemeBase Theme { get; private set; }
|
||||||
|
|
||||||
|
|
||||||
public ExploreForm()
|
public ExploreForm()
|
||||||
{
|
{
|
||||||
InitializeComponent();
|
InitializeComponent();
|
||||||
|
|
||||||
|
SetTheme(Settings.Default.ExplorerWindowTheme, false);
|
||||||
|
|
||||||
ShowMainListViewPathColumn(false);
|
ShowMainListViewPathColumn(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void SetTheme(string themestr, bool changing = true)
|
||||||
|
{
|
||||||
|
//string configFile = Path.Combine(Path.GetDirectoryName(Application.ExecutablePath), "DockPanel.temp.config");
|
||||||
|
//MainDockPanel.SaveAsXml(configFile);
|
||||||
|
//CloseAllContents();
|
||||||
|
|
||||||
|
foreach (ToolStripMenuItem menu in ViewThemeMenu.DropDownItems)
|
||||||
|
{
|
||||||
|
menu.Checked = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
Theme = null;
|
||||||
|
var version = VisualStudioToolStripExtender.VsVersion.Vs2015;
|
||||||
|
|
||||||
|
switch (themestr)
|
||||||
|
{
|
||||||
|
default:
|
||||||
|
case "Windows":
|
||||||
|
//Theme = new VS2005Theme();
|
||||||
|
ViewThemeWindowsMenu.Checked = true;
|
||||||
|
version = VisualStudioToolStripExtender.VsVersion.Unknown;
|
||||||
|
if (changing)
|
||||||
|
{
|
||||||
|
MessageBox.Show("Please reopen RPF Explorer to change back to Windows theme.");
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case "Blue":
|
||||||
|
Theme = new VS2015BlueTheme();
|
||||||
|
ViewThemeBlueMenu.Checked = true;
|
||||||
|
break;
|
||||||
|
case "Light":
|
||||||
|
Theme = new VS2015LightTheme();
|
||||||
|
ViewThemeLightMenu.Checked = true;
|
||||||
|
break;
|
||||||
|
case "Dark":
|
||||||
|
Theme = new VS2015DarkTheme();
|
||||||
|
ViewThemeDarkMenu.Checked = true;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (changing)
|
||||||
|
{
|
||||||
|
Settings.Default.ExplorerWindowTheme = themestr;
|
||||||
|
Settings.Default.Save();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
//Theme.Extender.FloatWindowFactory = new ExplorerFloatWindowFactory();
|
||||||
|
//MainDockPanel.Theme = Theme;
|
||||||
|
|
||||||
|
if (Theme != null)
|
||||||
|
{
|
||||||
|
VSExtender.SetStyle(MainMenu, version, Theme);
|
||||||
|
VSExtender.SetStyle(MainToolbar, version, Theme);
|
||||||
|
VSExtender.SetStyle(MainStatusBar, version, Theme);
|
||||||
|
|
||||||
|
FormTheme.SetTheme(this, Theme);
|
||||||
|
|
||||||
|
MainSplitContainer.BackColor = Theme.ColorPalette.MainWindowActive.Background;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
//if (File.Exists(configFile)) MainDockPanel.LoadFromXml(configFile, m_deserializeDockContent);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
private void Init()
|
private void Init()
|
||||||
{
|
{
|
||||||
//called from ExploreForm_Load
|
//called from ExploreForm_Load
|
||||||
@ -3404,6 +3475,26 @@ namespace CodeWalker
|
|||||||
SetView(System.Windows.Forms.View.Details);
|
SetView(System.Windows.Forms.View.Details);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void ViewThemeWindowsMenu_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
SetTheme("Windows");
|
||||||
|
}
|
||||||
|
|
||||||
|
private void ViewThemeBlueMenu_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
SetTheme("Blue");
|
||||||
|
}
|
||||||
|
|
||||||
|
private void ViewThemeLightMenu_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
SetTheme("Light");
|
||||||
|
}
|
||||||
|
|
||||||
|
private void ViewThemeDarkMenu_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
SetTheme("Dark");
|
||||||
|
}
|
||||||
|
|
||||||
private void ToolsOptionsMenu_Click(object sender, EventArgs e)
|
private void ToolsOptionsMenu_Click(object sender, EventArgs e)
|
||||||
{
|
{
|
||||||
MessageBox.Show("Options TODO!");
|
MessageBox.Show("Options TODO!");
|
||||||
|
@ -302,7 +302,7 @@
|
|||||||
NQar60zqQI0AAAAASUVORK5CYII=
|
NQar60zqQI0AAAAASUVORK5CYII=
|
||||||
</value>
|
</value>
|
||||||
</data>
|
</data>
|
||||||
<metadata name="StatusBar.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
<metadata name="MainStatusBar.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||||
<value>253, 17</value>
|
<value>253, 17</value>
|
||||||
</metadata>
|
</metadata>
|
||||||
<metadata name="FileImageList16.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
<metadata name="FileImageList16.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||||
@ -313,7 +313,7 @@
|
|||||||
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
|
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
|
||||||
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
|
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
|
||||||
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAADo
|
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAADo
|
||||||
HwAAAk1TRnQBSQFMAgEBGAEAAfgBAAH4AQABEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
|
HwAAAk1TRnQBSQFMAgEBGAEAARgBAQEYAQEBEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
|
||||||
AwABQAMAAXADAAEBAQABCAYAARwYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA
|
AwABQAMAAXADAAEBAQABCAYAARwYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA
|
||||||
AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5
|
AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5
|
||||||
AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA
|
AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA
|
||||||
@ -592,6 +592,9 @@
|
|||||||
<metadata name="FolderBrowserDialog.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
<metadata name="FolderBrowserDialog.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||||
<value>152, 56</value>
|
<value>152, 56</value>
|
||||||
</metadata>
|
</metadata>
|
||||||
|
<metadata name="VSExtender.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||||
|
<value>317, 56</value>
|
||||||
|
</metadata>
|
||||||
<metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
<metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||||
<value>126</value>
|
<value>126</value>
|
||||||
</metadata>
|
</metadata>
|
||||||
|
@ -27,24 +27,6 @@ namespace CodeWalker.Project.Panels
|
|||||||
InitializeComponent();
|
InitializeComponent();
|
||||||
}
|
}
|
||||||
|
|
||||||
public override void SetTheme(ThemeBase theme)
|
|
||||||
{
|
|
||||||
base.SetTheme(theme);
|
|
||||||
if (theme is VS2015DarkTheme)
|
|
||||||
{
|
|
||||||
ProjectTreeView.BackColor = theme.ColorPalette.MainWindowActive.Background;
|
|
||||||
ProjectTreeView.ForeColor = Color.White;
|
|
||||||
ProjectTreeView.LineColor = Color.White;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
ProjectTreeView.BackColor = SystemColors.Window;
|
|
||||||
ProjectTreeView.ForeColor = SystemColors.WindowText;
|
|
||||||
ProjectTreeView.LineColor = Color.Black;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
public void LoadProjectTree(ProjectFile projectFile)
|
public void LoadProjectTree(ProjectFile projectFile)
|
||||||
{
|
{
|
||||||
|
@ -178,8 +178,11 @@ namespace CodeWalker.Project
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
Settings.Default.ProjectWindowTheme = themestr;
|
if (changing)
|
||||||
Settings.Default.Save();
|
{
|
||||||
|
Settings.Default.ProjectWindowTheme = themestr;
|
||||||
|
Settings.Default.Save();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
Theme.Extender.FloatWindowFactory = new ProjectFloatWindowFactory();
|
Theme.Extender.FloatWindowFactory = new ProjectFloatWindowFactory();
|
||||||
|
12
Properties/Settings.Designer.cs
generated
12
Properties/Settings.Designer.cs
generated
@ -722,5 +722,17 @@ namespace CodeWalker.Properties {
|
|||||||
this["ProjectWindowTheme"] = value;
|
this["ProjectWindowTheme"] = value;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||||
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||||
|
[global::System.Configuration.DefaultSettingValueAttribute("Windows")]
|
||||||
|
public string ExplorerWindowTheme {
|
||||||
|
get {
|
||||||
|
return ((string)(this["ExplorerWindowTheme"]));
|
||||||
|
}
|
||||||
|
set {
|
||||||
|
this["ExplorerWindowTheme"] = value;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -189,5 +189,8 @@
|
|||||||
<Setting Name="ProjectWindowTheme" Type="System.String" Scope="User">
|
<Setting Name="ProjectWindowTheme" Type="System.String" Scope="User">
|
||||||
<Value Profile="(Default)">Blue</Value>
|
<Value Profile="(Default)">Blue</Value>
|
||||||
</Setting>
|
</Setting>
|
||||||
|
<Setting Name="ExplorerWindowTheme" Type="System.String" Scope="User">
|
||||||
|
<Value Profile="(Default)">Windows</Value>
|
||||||
|
</Setting>
|
||||||
</Settings>
|
</Settings>
|
||||||
</SettingsFile>
|
</SettingsFile>
|
Loading…
Reference in New Issue
Block a user