diff options
Diffstat (limited to 'ShiftOS.WinForms/Tools/ShiftOSMenuRenderer.cs')
| -rw-r--r-- | ShiftOS.WinForms/Tools/ShiftOSMenuRenderer.cs | 494 |
1 files changed, 494 insertions, 0 deletions
diff --git a/ShiftOS.WinForms/Tools/ShiftOSMenuRenderer.cs b/ShiftOS.WinForms/Tools/ShiftOSMenuRenderer.cs new file mode 100644 index 0000000..764ca7f --- /dev/null +++ b/ShiftOS.WinForms/Tools/ShiftOSMenuRenderer.cs @@ -0,0 +1,494 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Drawing; +using static ShiftOS.Engine.SkinEngine; +using System.Windows.Forms; + +namespace ShiftOS.WinForms.Tools +{ + public class ShiftOSMenuRenderer : ToolStripProfessionalRenderer + { + public ShiftOSMenuRenderer() : base(new ShiftOSColorTable()) + { + + } + + public ShiftOSMenuRenderer(ProfessionalColorTable table) : base(table) + { + + } + + protected override void OnRenderItemText(ToolStripItemTextRenderEventArgs e) + { + e.TextFont = LoadedSkin.MainFont; + if (e.Item.Selected == true) + { + e.TextColor = LoadedSkin.Menu_SelectedTextColor; + } + else + { + e.TextColor = LoadedSkin.Menu_TextColor; + } + base.OnRenderItemText(e); + } + } + + public class ShiftOSColorTable : ProfessionalColorTable + { + public override Color ButtonSelectedHighlight + { + get { return LoadedSkin.Menu_ButtonSelectedHighlight; } + } + public override Color ButtonSelectedHighlightBorder + { + get { return LoadedSkin.Menu_ButtonSelectedHighlight; } + } + public override Color ButtonPressedHighlight + { + get { return LoadedSkin.Menu_ButtonPressedHighlight; } + } + public override Color ButtonPressedHighlightBorder + { + get { return LoadedSkin.Menu_ButtonPressedHighlight; } + } + public override Color ButtonCheckedHighlight + { + get { return LoadedSkin.Menu_ButtonCheckedHighlight; } + } + public override Color ButtonCheckedHighlightBorder + { + get { return LoadedSkin.Menu_ButtonCheckedHighlightBorder; } + } + public override Color ButtonPressedBorder + { + get { return LoadedSkin.Menu_ButtonPressedBorder; } + } + public override Color ButtonSelectedBorder + { + get { return LoadedSkin.Menu_ButtonSelectedBorder; } + } + public override Color ButtonCheckedGradientBegin + { + get { return LoadedSkin.Menu_ButtonCheckedGradientBegin; } + } + public override Color ButtonCheckedGradientMiddle + { + get { return LoadedSkin.Menu_ButtonCheckedGradientMiddle; } + } + public override Color ButtonCheckedGradientEnd + { + get { return LoadedSkin.Menu_ButtonCheckedGradientEnd; } + } + public override Color ButtonSelectedGradientBegin + { + get { return LoadedSkin.Menu_ButtonSelectedGradientBegin; } + } + public override Color ButtonSelectedGradientMiddle + { + get { return LoadedSkin.Menu_ButtonSelectedGradientMiddle; } + } + public override Color ButtonSelectedGradientEnd + { + get { return LoadedSkin.Menu_ButtonSelectedGradientEnd; } + } + public override Color ButtonPressedGradientBegin + { + get { return LoadedSkin.Menu_ButtonPressedGradientBegin; } + } + public override Color ButtonPressedGradientMiddle + { + get { return LoadedSkin.Menu_ButtonPressedGradientMiddle; } + } + public override Color ButtonPressedGradientEnd + { + get { return LoadedSkin.Menu_ButtonPressedGradientEnd; } + } + public override Color CheckBackground + { + get { return LoadedSkin.Menu_CheckBackground; } + } + public override Color CheckSelectedBackground + { + get { return LoadedSkin.Menu_CheckSelectedBackground; } + } + public override Color CheckPressedBackground + { + get { return LoadedSkin.Menu_CheckPressedBackground; } + } + public override Color GripDark + { + get { return Color.Transparent; } + } + public override Color GripLight + { + get { return Color.Transparent; } + } + public override Color ImageMarginGradientBegin + { + get { return LoadedSkin.Menu_ImageMarginGradientBegin; } + } + public override Color ImageMarginGradientMiddle + { + get { return LoadedSkin.Menu_ImageMarginGradientMiddle; } + } + public override Color ImageMarginGradientEnd + { + get { return LoadedSkin.Menu_ImageMarginGradientEnd; } + } + public override Color ImageMarginRevealedGradientBegin + { + get { return LoadedSkin.Menu_ImageMarginGradientBegin; } + } + public override Color ImageMarginRevealedGradientMiddle + { + get { return LoadedSkin.Menu_ImageMarginGradientMiddle; } + } + public override Color ImageMarginRevealedGradientEnd + { + get { return LoadedSkin.Menu_ImageMarginGradientEnd; } + } + public override Color MenuStripGradientBegin + { + get { return LoadedSkin.Menu_MenuStripGradientBegin; } + } + public override Color MenuStripGradientEnd + { + get { return LoadedSkin.Menu_MenuStripGradientEnd; } + } + public override Color MenuItemSelected + { + get { return LoadedSkin.Menu_MenuItemSelected; } + } + public override Color MenuItemBorder + { + get { return LoadedSkin.Menu_MenuItemSelected; } + } + public override Color MenuBorder + { + get { return LoadedSkin.Menu_MenuBorder; } + } + public override Color MenuItemSelectedGradientBegin + { + get { return LoadedSkin.Menu_MenuItemSelectedGradientBegin; } + } + public override Color MenuItemSelectedGradientEnd + { + get { return LoadedSkin.Menu_MenuItemSelectedGradientEnd; } + } + public override Color MenuItemPressedGradientBegin + { + get { return LoadedSkin.Menu_MenuItemPressedGradientBegin; } + } + public override Color MenuItemPressedGradientMiddle + { + get { return LoadedSkin.Menu_MenuItemPressedGradientMiddle; } + } + public override Color MenuItemPressedGradientEnd + { + get { return LoadedSkin.Menu_MenuItemPressedGradientEnd; } + } + public override Color RaftingContainerGradientBegin + { + get { return LoadedSkin.Menu_RaftingContainerGradientBegin; } + } + public override Color RaftingContainerGradientEnd + { + get { return LoadedSkin.Menu_RaftingContainerGradientEnd; } + } + public override Color SeparatorDark + { + get { return LoadedSkin.Menu_SeparatorDark; } + } + public override Color SeparatorLight + { + get { return LoadedSkin.Menu_SeparatorLight; } + } + public override Color StatusStripGradientBegin + { + get { return LoadedSkin.Menu_StatusStripGradientBegin; } + } + public override Color StatusStripGradientEnd + { + get { return LoadedSkin.Menu_StatusStripGradientEnd; } + } + public override Color ToolStripBorder + { + get { return LoadedSkin.Menu_ToolStripBorder; } + } + public override Color ToolStripDropDownBackground + { + get { return LoadedSkin.Menu_ToolStripDropDownBackground; } + } + public override Color ToolStripGradientBegin + { + get { return LoadedSkin.Menu_ToolStripGradientBegin; } + } + public override Color ToolStripGradientMiddle + { + get { return LoadedSkin.Menu_ToolStripGradientMiddle; } + } + public override Color ToolStripGradientEnd + { + get { return LoadedSkin.Menu_ToolStripGradientEnd; } + } + public override Color ToolStripContentPanelGradientBegin + { + get { return LoadedSkin.Menu_ToolStripContentPanelGradientBegin; } + } + public override Color ToolStripContentPanelGradientEnd + { + get { return LoadedSkin.Menu_ToolStripContentPanelGradientEnd; } + } + public override Color ToolStripPanelGradientBegin + { + get { return LoadedSkin.Menu_ToolStripPanelGradientBegin; } + } + public override Color ToolStripPanelGradientEnd + { + get { return LoadedSkin.Menu_ToolStripPanelGradientEnd; } + } + public override Color OverflowButtonGradientBegin + { + get { return Color.Transparent; } + } + public override Color OverflowButtonGradientMiddle + { + get { return Color.Transparent; } + } + public override Color OverflowButtonGradientEnd + { + get { return Color.Transparent; } + } + } + + public class AppLauncherColorTable : ProfessionalColorTable + { + public override Color ButtonSelectedHighlight + { + get { return LoadedSkin.Menu_ButtonSelectedHighlight; } + } + public override Color ButtonSelectedHighlightBorder + { + get { return LoadedSkin.Menu_ButtonSelectedHighlight; } + } + public override Color ButtonPressedHighlight + { + get { return LoadedSkin.Menu_ButtonPressedHighlight; } + } + public override Color ButtonPressedHighlightBorder + { + get { return LoadedSkin.Menu_ButtonPressedHighlight; } + } + public override Color ButtonCheckedHighlight + { + get { return LoadedSkin.Menu_ButtonCheckedHighlight; } + } + public override Color ButtonCheckedHighlightBorder + { + get { return LoadedSkin.Menu_ButtonCheckedHighlightBorder; } + } + public override Color ButtonPressedBorder + { + get { return LoadedSkin.Menu_ButtonPressedBorder; } + } + public override Color ButtonSelectedBorder + { + get { return LoadedSkin.Menu_ButtonSelectedBorder; } + } + public override Color ButtonCheckedGradientBegin + { + get { return LoadedSkin.Menu_ButtonCheckedGradientBegin; } + } + public override Color ButtonCheckedGradientMiddle + { + get { return LoadedSkin.Menu_ButtonCheckedGradientMiddle; } + } + public override Color ButtonCheckedGradientEnd + { + get { return LoadedSkin.Menu_ButtonCheckedGradientEnd; } + } + public override Color ButtonSelectedGradientBegin + { + get { return LoadedSkin.Menu_ButtonSelectedGradientBegin; } + } + public override Color ButtonSelectedGradientMiddle + { + get { return LoadedSkin.Menu_ButtonSelectedGradientMiddle; } + } + public override Color ButtonSelectedGradientEnd + { + get { return LoadedSkin.Menu_ButtonSelectedGradientEnd; } + } + public override Color ButtonPressedGradientBegin + { + get { return LoadedSkin.Menu_ButtonPressedGradientBegin; } + } + public override Color ButtonPressedGradientMiddle + { + get { return LoadedSkin.Menu_ButtonPressedGradientMiddle; } + } + public override Color ButtonPressedGradientEnd + { + get { return LoadedSkin.Menu_ButtonPressedGradientEnd; } + } + public override Color CheckBackground + { + get { return LoadedSkin.Menu_CheckBackground; } + } + public override Color CheckSelectedBackground + { + get { return LoadedSkin.Menu_CheckSelectedBackground; } + } + public override Color CheckPressedBackground + { + get { return LoadedSkin.Menu_CheckPressedBackground; } + } + public override Color GripDark + { + get { return Color.Transparent; } + } + public override Color GripLight + { + get { return Color.Transparent; } + } + public override Color ImageMarginGradientBegin + { + get { return LoadedSkin.Menu_ImageMarginGradientBegin; } + } + public override Color ImageMarginGradientMiddle + { + get { return LoadedSkin.Menu_ImageMarginGradientMiddle; } + } + public override Color ImageMarginGradientEnd + { + get { return LoadedSkin.Menu_ImageMarginGradientEnd; } + } + public override Color ImageMarginRevealedGradientBegin + { + get { return LoadedSkin.Menu_ImageMarginGradientBegin; } + } + public override Color ImageMarginRevealedGradientMiddle + { + get { return LoadedSkin.Menu_ImageMarginGradientMiddle; } + } + public override Color ImageMarginRevealedGradientEnd + { + get { return LoadedSkin.Menu_ImageMarginGradientEnd; } + } + public override Color MenuStripGradientBegin + { + get { return LoadedSkin.Menu_MenuStripGradientBegin; } + } + public override Color MenuStripGradientEnd + { + get { return LoadedSkin.Menu_MenuStripGradientEnd; } + } + public override Color MenuItemSelected + { + get { return LoadedSkin.Menu_MenuItemSelected; } + } + public override Color MenuItemBorder + { + get { return LoadedSkin.Menu_MenuItemSelected; } + } + public override Color MenuBorder + { + get { return LoadedSkin.Menu_MenuBorder; } + } + public override Color MenuItemSelectedGradientBegin + { + get { return (GetImage("applauncher") != null) ? Color.Transparent : LoadedSkin.Menu_MenuItemSelectedGradientBegin; } + } + public override Color MenuItemSelectedGradientEnd + { + get { return (GetImage("applauncher") != null) ? Color.Transparent : LoadedSkin.Menu_MenuItemSelectedGradientEnd; } + } + public override Color MenuItemPressedGradientBegin + { + get { return (GetImage("applauncher") != null) ? Color.Transparent : LoadedSkin.Menu_MenuItemPressedGradientBegin; } + } + public override Color MenuItemPressedGradientMiddle + { + get { return (GetImage("applauncher") != null) ? Color.Transparent : LoadedSkin.Menu_MenuItemPressedGradientMiddle; } + } + public override Color MenuItemPressedGradientEnd + { + get { return (GetImage("applauncher") != null) ? Color.Transparent : LoadedSkin.Menu_MenuItemPressedGradientEnd; } + } + public override Color RaftingContainerGradientBegin + { + get { return LoadedSkin.Menu_RaftingContainerGradientBegin; } + } + public override Color RaftingContainerGradientEnd + { + get { return LoadedSkin.Menu_RaftingContainerGradientEnd; } + } + public override Color SeparatorDark + { + get { return LoadedSkin.Menu_SeparatorDark; } + } + public override Color SeparatorLight + { + get { return LoadedSkin.Menu_SeparatorLight; } + } + public override Color StatusStripGradientBegin + { + get { return LoadedSkin.Menu_StatusStripGradientBegin; } + } + public override Color StatusStripGradientEnd + { + get { return LoadedSkin.Menu_StatusStripGradientEnd; } + } + public override Color ToolStripBorder + { + get { return LoadedSkin.Menu_ToolStripBorder; } + } + public override Color ToolStripDropDownBackground + { + get { return LoadedSkin.Menu_ToolStripDropDownBackground; } + } + public override Color ToolStripGradientBegin + { + get { return LoadedSkin.Menu_ToolStripGradientBegin; } + } + public override Color ToolStripGradientMiddle + { + get { return LoadedSkin.Menu_ToolStripGradientMiddle; } + } + public override Color ToolStripGradientEnd + { + get { return LoadedSkin.Menu_ToolStripGradientEnd; } + } + public override Color ToolStripContentPanelGradientBegin + { + get { return LoadedSkin.Menu_ToolStripContentPanelGradientBegin; } + } + public override Color ToolStripContentPanelGradientEnd + { + get { return LoadedSkin.Menu_ToolStripContentPanelGradientEnd; } + } + public override Color ToolStripPanelGradientBegin + { + get { return LoadedSkin.Menu_ToolStripPanelGradientBegin; } + } + public override Color ToolStripPanelGradientEnd + { + get { return LoadedSkin.Menu_ToolStripPanelGradientEnd; } + } + public override Color OverflowButtonGradientBegin + { + get { return Color.Transparent; } + } + public override Color OverflowButtonGradientMiddle + { + get { return Color.Transparent; } + } + public override Color OverflowButtonGradientEnd + { + get { return Color.Transparent; } + } + } +} |
