RaUI/Source/ryControls/Gdu.WinFormUI/GMControls/ScrollBar/GMScrollBarThemeBase.cs
如果当时 34a3ef3ed9 ### 2021-02-22更新
------
#### ryControls    V2.1.2102.2201
*.[新增]新加入Gdu.WinformUI控件。
2021-02-22 21:42:59 +08:00

117 lines
4.2 KiB
C#

using System;
using System.Drawing;
using System.Drawing.Drawing2D;
//忽略没有注释警告
#pragma warning disable 1591
namespace MGdu.WinFormUI
{
public class GMScrollBarThemeBase : IDisposable
{
public int InnerPaddingWidth { get; set; }
public int MiddleButtonOutterSpace1 { get; set; }
public int MiddleButtonOutterSpace2 { get; set; }
public int SideButtonLength { get; set; }
public int BestUndirectLen { get; set; }
public bool DrawBackground { get; set; }
public bool DrawBorder { get; set; }
public bool DrawInnerBorder { get; set; }
public bool ShowSideButtons { get; set; }
public Color BackColor { get; set; }
public Color BorderColor { get; set; }
public Color InnerBorderColor { get; set; }
public Size SideButtonForePathSize { get; set; }
public ButtonForePathGetter SideButtonForePathGetter { get; set; }
public ButtonColorTable SideButtonColorTable { get; set; }
public ButtonColorTable MiddleButtonColorTable { get; set; }
public ForePathRenderMode HowSideButtonForePathDraw { get; set; }
public bool DrawLinesInMiddleButton { get; set; }
public Color MiddleButtonLine1Color { get; set; }
public Color MiddleButtonLine2Color { get; set; }
public int MiddleBtnLineOutterSpace1 { get; set; }
public int MiddleBtnLineOutterSpace2 { get; set; }
public int SideButtonRadius { get; set; }
public int MiddleButtonRadius { get; set; }
public ButtonBorderType SideButtonBorderType { get; set; }
private void SetDefaultValue()
{
InnerPaddingWidth = 0;
MiddleButtonOutterSpace1 = 1;
MiddleButtonOutterSpace2 = 0;
SideButtonLength = 16;
BestUndirectLen = 15;
DrawBackground = true;
DrawBorder = false;
DrawInnerBorder = false;
ShowSideButtons = true;
//SideButtonCanDisabled = false;
BackColor = Color.FromArgb(227,227,227);
BorderColor = Color.FromArgb(248, 248, 248);
SideButtonForePathSize = new Size(10, 9);
SideButtonForePathGetter = new ButtonForePathGetter(
MGdu.WinFormUI.MyGraphics.GraphicsPathHelper.Create7x4DownTriangleFlag);
SideButtonColorTable = SideBtnColor();
MiddleButtonColorTable = MdlBtnColor();
HowSideButtonForePathDraw = ForePathRenderMode.Draw;
DrawLinesInMiddleButton = true;
MiddleBtnLineOutterSpace1 = 4;
MiddleBtnLineOutterSpace2 = 4;
MiddleButtonLine1Color = Color.FromArgb(89, 89, 89);
MiddleButtonLine2Color = Color.FromArgb(182, 182, 182);
SideButtonRadius = MiddleButtonRadius = 0;
SideButtonBorderType = ButtonBorderType.Rectangle;
}
private ButtonColorTable SideBtnColor()
{
ButtonColorTable table = MdlBtnColor();
table.ForeColorNormal = Color.FromArgb(73, 73, 73);
table.ForeColorHover = Color.FromArgb(32, 106, 145);
table.ForeColorPressed = Color.FromArgb(15, 38, 50);
table.ForeColorDisabled = SystemColors.ControlDarkDark;
table.BackColorDisabled = SystemColors.ControlDark;
return table;
}
private ButtonColorTable MdlBtnColor()
{
ButtonColorTable table = new ButtonColorTable();
table.BorderColorNormal = Color.FromArgb(151, 151, 151);
table.BorderColorHover = Color.FromArgb(53, 111, 155);
table.BorderColorPressed = Color.FromArgb(60, 127, 177);
table.BackColorNormal = Color.FromArgb(217, 218, 219);
table.BackColorHover = Color.FromArgb(169, 219, 246);
table.BackColorPressed = Color.FromArgb(111, 202, 240);
return table;
}
public GMScrollBarThemeBase()
{
SetDefaultValue();
}
#region IDisposable
public void Dispose()
{
//if (SideButtonForePath != null)
// SideButtonForePath.Dispose();
}
#endregion
}
}