811 lines
24 KiB
VB.net
811 lines
24 KiB
VB.net
Imports System.Drawing.Drawing2D
|
|
Imports System.ComponentModel
|
|
|
|
'###################################################
|
|
'# #
|
|
'# COLOR BY Mavamaarten #
|
|
'# #
|
|
'# THEME & CODE BY Patak #
|
|
'# #
|
|
'###################################################
|
|
|
|
Public Class DesignForm
|
|
#Region " Gestion du type de Control "
|
|
|
|
Inherits ContainerControl
|
|
|
|
#End Region
|
|
|
|
#Region " Initialisation de variable "
|
|
|
|
Private Locked As Boolean = False
|
|
Private Position As Point = Nothing
|
|
|
|
Dim Couleur_Ecriture As Color = Color.FromArgb(70, 70, 70)
|
|
Dim Couleur_BackColor As Color = Color.FromArgb(25, 25, 25)
|
|
|
|
Dim Couleur_Degrade1 As Color = Color.FromArgb(35, 35, 35)
|
|
Dim Couleur_Degrade2 As Color = Color.FromArgb(25, 25, 25)
|
|
|
|
Dim Couleur_BordureExt As Color = Color.Black
|
|
|
|
Dim Couleur_BordureInt1_Haut As Color = Color.FromArgb(74, 74, 74)
|
|
Dim Couleur_BordureInt1_Bas As Color = Color.FromArgb(39, 39, 39)
|
|
Dim Couleur_BordureInt2 As Color = Color.FromArgb(43, 43, 43)
|
|
|
|
Dim Couleur_Separation1 As Color = Color.Black
|
|
Dim Couleur_Separation2 As Color = Color.FromArgb(26, 128, 154)
|
|
Dim Couleur_Separation3 As Color = Color.Black
|
|
|
|
Dim Hauteur_Barre As Integer = 33
|
|
|
|
#End Region
|
|
|
|
#Region " Gestion du New "
|
|
|
|
Sub New()
|
|
Dock = DockStyle.Fill
|
|
Font = New Font("Verdana", 10, FontStyle.Regular)
|
|
SendToBack()
|
|
DoubleBuffered = True
|
|
Padding = New Padding(2, 36, 2, 2)
|
|
|
|
End Sub
|
|
|
|
#End Region
|
|
|
|
#Region " Propriétés "
|
|
|
|
Public Overrides Property Text As String
|
|
Get
|
|
Return MyBase.Text
|
|
End Get
|
|
Set(ByVal Value As String)
|
|
MyBase.Text = Value
|
|
Invalidate()
|
|
End Set
|
|
End Property
|
|
|
|
#End Region
|
|
|
|
#Region " Gestion et création du design "
|
|
|
|
Protected Overrides Sub OnPaint(ByVal e As System.Windows.Forms.PaintEventArgs)
|
|
MyBase.OnPaint(e)
|
|
e.Graphics.SmoothingMode = SmoothingMode.Default
|
|
|
|
'BACKGROUND
|
|
|
|
e.Graphics.Clear(Couleur_BackColor)
|
|
|
|
'HAUT
|
|
|
|
Dim Rectangle_Haut As New Rectangle(0, 0, Width, Hauteur_Barre)
|
|
Dim Haut_Brush As New LinearGradientBrush(Rectangle_Haut, Couleur_Degrade1, Couleur_Degrade2, LinearGradientMode.Vertical)
|
|
e.Graphics.FillRectangle(Haut_Brush, Rectangle_Haut)
|
|
Haut_Brush.Dispose()
|
|
|
|
'ECRITURE
|
|
|
|
Dim StringFormat As New StringFormat
|
|
StringFormat.LineAlignment = StringAlignment.Center
|
|
StringFormat.Alignment = StringAlignment.Near
|
|
|
|
Dim Rectangle_Ecriture As New Rectangle(15, 0, Width - 15, Hauteur_Barre)
|
|
|
|
e.Graphics.DrawString(Text, Font, New SolidBrush(Couleur_Ecriture), Rectangle_Ecriture, StringFormat)
|
|
StringFormat.Dispose()
|
|
|
|
'BORDURE INT1
|
|
|
|
Dim Rectangle_BordureInt1 As New Rectangle(1, 1, Width - 3, Hauteur_Barre - 4)
|
|
Dim Rectangle_BordureInt1_AvecBordure As New Rectangle(0, 0, Width - 1, Hauteur_Barre - 2)
|
|
|
|
Dim Brush_BordureInt1 As New LinearGradientBrush(Rectangle_BordureInt1_AvecBordure, Couleur_BordureInt1_Haut, Couleur_BordureInt1_Bas, LinearGradientMode.Vertical)
|
|
e.Graphics.DrawRectangle(New Pen(Brush_BordureInt1, 1), Rectangle_BordureInt1)
|
|
|
|
'BORDURE INT2
|
|
|
|
Dim Rectangle_BordureInt2 As New Rectangle(1, Hauteur_Barre + 2, Width - 3, Height - Hauteur_Barre - 4)
|
|
e.Graphics.DrawRectangle(New Pen(Couleur_BordureInt2, 1), Rectangle_BordureInt2)
|
|
|
|
'SEPARATION
|
|
|
|
Dim Separation_Point1 As New Point(0, Hauteur_Barre)
|
|
Dim Separation_Point2 As New Point(Width, Hauteur_Barre)
|
|
|
|
Dim Separation_Brush As New LinearGradientBrush(Separation_Point1, Separation_Point2, Color.Black, Color.Black)
|
|
|
|
Dim ColorBlend As New ColorBlend
|
|
ColorBlend.Colors = New Color() {Couleur_Separation1, Couleur_Separation2, Couleur_Separation3}
|
|
ColorBlend.Positions = New Single() {0, 0.5, 1}
|
|
|
|
Separation_Brush.InterpolationColors = ColorBlend
|
|
|
|
e.Graphics.DrawLine(New Pen(Separation_Brush, 2), Separation_Point1, Separation_Point2)
|
|
|
|
Separation_Brush.Dispose()
|
|
|
|
'BORDURE EXT1
|
|
|
|
Dim Rectangle_BordureExt1 As New Rectangle(0, 0, Width - 1, Hauteur_Barre - 2)
|
|
e.Graphics.DrawRectangle(New Pen(Couleur_BordureExt, 1), Rectangle_BordureExt1)
|
|
|
|
'BORDURE EXT2
|
|
|
|
Dim Rectangle_BordureExt2 As New Rectangle(0, Hauteur_Barre + 1, Width - 1, Height - Hauteur_Barre - 2)
|
|
e.Graphics.DrawRectangle(New Pen(Couleur_BordureExt, 1), Rectangle_BordureExt2)
|
|
|
|
End Sub
|
|
|
|
#End Region
|
|
|
|
#Region " Gestion des actions "
|
|
|
|
Protected Overrides Sub OnHandleCreated(ByVal e As System.EventArgs)
|
|
MyBase.OnHandleCreated(e)
|
|
FindForm.FormBorderStyle = FormBorderStyle.None
|
|
End Sub
|
|
|
|
Protected Overrides Sub OnMouseDown(ByVal e As System.Windows.Forms.MouseEventArgs)
|
|
MyBase.OnMouseDown(e)
|
|
Dim Rectangle As New Rectangle(0, 0, Width, Hauteur_Barre)
|
|
If (Rectangle.Contains(e.Location)) Then
|
|
Locked = True
|
|
Position = e.Location
|
|
End If
|
|
End Sub
|
|
|
|
Protected Overrides Sub OnMouseUp(ByVal e As System.Windows.Forms.MouseEventArgs)
|
|
MyBase.OnMouseUp(e)
|
|
Locked = False
|
|
End Sub
|
|
|
|
Protected Overrides Sub OnMouseMove(ByVal e As System.Windows.Forms.MouseEventArgs)
|
|
MyBase.OnMouseMove(e)
|
|
If (Locked) Then
|
|
FindForm.Location = Cursor.Position - Position
|
|
End If
|
|
End Sub
|
|
|
|
Protected Overrides Sub OnResize(ByVal e As System.EventArgs)
|
|
MyBase.OnResize(e)
|
|
Invalidate()
|
|
End Sub
|
|
|
|
#End Region
|
|
End Class
|
|
|
|
Public Class DesignControlBox
|
|
#Region " Gestion du type de Control "
|
|
|
|
Inherits Control
|
|
|
|
#End Region
|
|
|
|
#Region " Initialisation de variable "
|
|
|
|
Dim Couleur_Ecriture_None As Color = Color.FromArgb(70, 70, 70)
|
|
Dim Couleur_Ecriture_Over As Color = Color.FromArgb(150, 150, 150)
|
|
Dim Couleur_Ecriture_Down As Color = Color.FromArgb(200, 200, 200)
|
|
|
|
Dim Etat_Bouton As Etat = Etat.None
|
|
Dim Position As New Point
|
|
|
|
#End Region
|
|
|
|
#Region " Initialisation des Enum "
|
|
|
|
Enum Etat As Integer
|
|
None
|
|
Over
|
|
Down
|
|
End Enum
|
|
|
|
#End Region
|
|
|
|
#Region " Gestion du New "
|
|
|
|
Sub New()
|
|
Me.Size = New Size(40, 20)
|
|
Me.SetStyle(ControlStyles.SupportsTransparentBackColor, True)
|
|
Me.BackColor = Color.Transparent
|
|
Me.Anchor = AnchorStyles.Top Or AnchorStyles.Right
|
|
DoubleBuffered = True
|
|
End Sub
|
|
|
|
#End Region
|
|
|
|
#Region " Gestion et création du design "
|
|
|
|
Protected Overrides Sub OnPaint(ByVal e As System.Windows.Forms.PaintEventArgs)
|
|
MyBase.OnPaint(e)
|
|
e.Graphics.SmoothingMode = SmoothingMode.Default
|
|
|
|
Dim Point_Min As New Point(2, 4)
|
|
Dim Point_Close As New Point(22, 5)
|
|
|
|
'GESTION DES ETATS
|
|
|
|
Dim Couleur_Ecriture As Color
|
|
|
|
Select Case Etat_Bouton
|
|
Case Etat.None
|
|
Couleur_Ecriture = Couleur_Ecriture_None
|
|
Case Etat.Over
|
|
Couleur_Ecriture = Couleur_Ecriture_Over
|
|
Case Etat.Down
|
|
Couleur_Ecriture = Couleur_Ecriture_Down
|
|
End Select
|
|
|
|
'ECRITURE
|
|
|
|
If (Position.X <= 20) Then
|
|
e.Graphics.DrawString("0", New Font("Marlett", 8), New SolidBrush(Couleur_Ecriture), Point_Min)
|
|
e.Graphics.DrawString("r", New Font("Marlett", 8), New SolidBrush(Couleur_Ecriture_None), Point_Close)
|
|
Else
|
|
e.Graphics.DrawString("0", New Font("Marlett", 8), New SolidBrush(Couleur_Ecriture_None), Point_Min)
|
|
e.Graphics.DrawString("r", New Font("Marlett", 8), New SolidBrush(Couleur_Ecriture), Point_Close)
|
|
End If
|
|
End Sub
|
|
|
|
#End Region
|
|
|
|
#Region " Gestion des actions "
|
|
|
|
Protected Overrides Sub OnMouseMove(e As System.Windows.Forms.MouseEventArgs)
|
|
MyBase.OnMouseMove(e)
|
|
Position = e.Location
|
|
Invalidate()
|
|
End Sub
|
|
|
|
Protected Overrides Sub OnClick(e As System.EventArgs)
|
|
MyBase.OnClick(e)
|
|
If (Position.X <= 20) Then
|
|
FindForm.WindowState = FormWindowState.Minimized
|
|
Else
|
|
FindForm.Close()
|
|
End If
|
|
End Sub
|
|
|
|
Protected Overrides Sub OnMouseEnter(ByVal e As System.EventArgs)
|
|
MyBase.OnMouseEnter(e)
|
|
Etat_Bouton = Etat.Over
|
|
Invalidate()
|
|
End Sub
|
|
|
|
Protected Overrides Sub OnMouseLeave(ByVal e As System.EventArgs)
|
|
MyBase.OnMouseLeave(e)
|
|
Etat_Bouton = Etat.None
|
|
Invalidate()
|
|
End Sub
|
|
|
|
Protected Overrides Sub OnMouseDown(ByVal e As System.Windows.Forms.MouseEventArgs)
|
|
MyBase.OnMouseDown(e)
|
|
Etat_Bouton = Etat.Down
|
|
Invalidate()
|
|
End Sub
|
|
|
|
Protected Overrides Sub OnMouseUp(ByVal e As System.Windows.Forms.MouseEventArgs)
|
|
MyBase.OnMouseUp(e)
|
|
Etat_Bouton = Etat.Over
|
|
Invalidate()
|
|
End Sub
|
|
|
|
Protected Overrides Sub OnResize(ByVal e As System.EventArgs)
|
|
MyBase.OnResize(e)
|
|
Invalidate()
|
|
End Sub
|
|
|
|
#End Region
|
|
End Class
|
|
|
|
Public Class DesignGroupBox
|
|
#Region " Gestion du type de Control "
|
|
|
|
Inherits ContainerControl
|
|
|
|
#End Region
|
|
|
|
#Region " Initialisation de variable "
|
|
|
|
Dim Couleur_Ecriture As Color = Color.DarkGray
|
|
Dim Couleur_BackColor As Color = Color.FromArgb(27, 27, 27)
|
|
|
|
Dim Couleur_Degrade1 As Color = Color.FromArgb(39, 39, 39)
|
|
Dim Couleur_Degrade2 As Color = Color.FromArgb(24, 24, 24)
|
|
|
|
Dim Couleur_BordureExt As Color = Color.Black
|
|
|
|
Dim Couleur_BordureInt1_Haut As Color = Color.FromArgb(52, 52, 52)
|
|
Dim Couleur_BordureInt1_Bas As Color = Color.FromArgb(37, 37, 37)
|
|
Dim Couleur_BordureInt2 As Color = Color.FromArgb(43, 43, 43)
|
|
|
|
Dim Couleur_Separation As Color = Color.Black
|
|
|
|
Dim Hauteur_Barre As Integer = 25
|
|
|
|
#End Region
|
|
|
|
#Region " Gestion du New "
|
|
|
|
Sub New()
|
|
Me.Size = New Size(172, 108)
|
|
Font = New Font("Verdana", 8.25, FontStyle.Regular)
|
|
DoubleBuffered = True
|
|
Padding = New Padding(2, 27, 2, 2)
|
|
End Sub
|
|
|
|
#End Region
|
|
|
|
#Region " Propriétés "
|
|
|
|
Public Overrides Property Text As String
|
|
Get
|
|
Return MyBase.Text
|
|
End Get
|
|
Set(ByVal Value As String)
|
|
MyBase.Text = Value
|
|
Invalidate()
|
|
End Set
|
|
End Property
|
|
|
|
#End Region
|
|
|
|
#Region " Gestion et création du design "
|
|
|
|
Protected Overrides Sub OnPaint(ByVal e As System.Windows.Forms.PaintEventArgs)
|
|
MyBase.OnPaint(e)
|
|
e.Graphics.SmoothingMode = SmoothingMode.Default
|
|
|
|
'BACKGROUND
|
|
|
|
e.Graphics.Clear(Couleur_BackColor)
|
|
|
|
'HAUT
|
|
|
|
Dim Rectangle_Haut As New Rectangle(0, 0, Width, Hauteur_Barre)
|
|
Dim Haut_Brush As New LinearGradientBrush(Rectangle_Haut, Couleur_Degrade1, Couleur_Degrade2, LinearGradientMode.Vertical)
|
|
e.Graphics.FillRectangle(Haut_Brush, Rectangle_Haut)
|
|
Haut_Brush.Dispose()
|
|
|
|
'ECRITURE
|
|
|
|
Dim StringFormat As New StringFormat
|
|
StringFormat.LineAlignment = StringAlignment.Center
|
|
StringFormat.Alignment = StringAlignment.Near
|
|
|
|
Dim Rectangle_Ecriture As New Rectangle(9, 2, Width - 9, Hauteur_Barre - 2)
|
|
|
|
e.Graphics.DrawString(Text, Font, New SolidBrush(Couleur_Ecriture), Rectangle_Ecriture, StringFormat)
|
|
StringFormat.Dispose()
|
|
|
|
'BORDURE INT1
|
|
|
|
Dim Rectangle_BordureInt1 As New Rectangle(1, 1, Width - 3, Hauteur_Barre - 2)
|
|
Dim Rectangle_BordureInt1_AvecBordure As New Rectangle(0, 0, Width - 1, Hauteur_Barre)
|
|
|
|
Dim Brush_BordureInt1 As New LinearGradientBrush(Rectangle_BordureInt1_AvecBordure, Couleur_BordureInt1_Haut, Couleur_BordureInt1_Bas, LinearGradientMode.Vertical)
|
|
e.Graphics.DrawRectangle(New Pen(Brush_BordureInt1, 1), Rectangle_BordureInt1)
|
|
|
|
'BORDURE INT2
|
|
|
|
Dim Rectangle_BordureInt2 As New Rectangle(1, Hauteur_Barre, Width - 3, Height - Hauteur_Barre - 2)
|
|
e.Graphics.DrawRectangle(New Pen(Couleur_BordureInt2, 1), Rectangle_BordureInt2)
|
|
|
|
'SEPARATION
|
|
|
|
Dim Separation_Point1 As New Point(0, Hauteur_Barre)
|
|
Dim Separation_Point2 As New Point(Width, Hauteur_Barre)
|
|
|
|
e.Graphics.DrawLine(New Pen(Couleur_Separation, 1), Separation_Point1, Separation_Point2)
|
|
|
|
'BORDURE EXT
|
|
|
|
Dim Rectangle_BordureExt As New Rectangle(0, 0, Width - 1, Height - 1)
|
|
e.Graphics.DrawRectangle(New Pen(Couleur_BordureExt, 1), Rectangle_BordureExt)
|
|
|
|
End Sub
|
|
|
|
#End Region
|
|
|
|
#Region " Gestion des actions "
|
|
|
|
Protected Overrides Sub OnResize(ByVal e As System.EventArgs)
|
|
MyBase.OnResize(e)
|
|
Invalidate()
|
|
End Sub
|
|
|
|
#End Region
|
|
End Class
|
|
|
|
Public Class DesignButton
|
|
#Region " Gestion du type de Control "
|
|
|
|
Inherits Control
|
|
|
|
#End Region
|
|
|
|
#Region " Initialisation de variable "
|
|
|
|
Dim Couleur_Ecriture As Color = Color.FromArgb(170, 170, 170)
|
|
|
|
Dim Couleur_Degrade1_None As Color = Color.FromArgb(40, 40, 40)
|
|
Dim Couleur_Degrade2_None As Color = Color.FromArgb(20, 20, 20)
|
|
|
|
Dim Couleur_Degrade1_Over As Color = Color.FromArgb(46, 46, 46)
|
|
Dim Couleur_Degrade2_Over As Color = Color.FromArgb(26, 26, 26)
|
|
|
|
Dim Couleur_Degrade1_Down As Color = Color.FromArgb(37, 37, 37)
|
|
Dim Couleur_Degrade2_Down As Color = Color.FromArgb(18, 18, 18)
|
|
|
|
Dim Couleur_BordureExt As Color = Color.Black
|
|
|
|
Dim Couleur_BordureInt_Haut_None As Color = Color.FromArgb(53, 53, 53)
|
|
Dim Couleur_BordureInt_Bas_None As Color = Color.FromArgb(34, 34, 34)
|
|
|
|
Dim Couleur_BordureInt_Haut_Over As Color = Color.FromArgb(58, 58, 58)
|
|
Dim Couleur_BordureInt_Bas_Over As Color = Color.FromArgb(39, 39, 39)
|
|
|
|
Dim Couleur_BordureInt_Haut_Down As Color = Color.FromArgb(50, 50, 50)
|
|
Dim Couleur_BordureInt_Bas_Down As Color = Color.FromArgb(32, 32, 32)
|
|
|
|
Dim Etat_Bouton As Etat = Etat.None
|
|
|
|
#End Region
|
|
|
|
#Region " Initialisation des Enum "
|
|
|
|
Enum Etat As Integer
|
|
None
|
|
Over
|
|
Down
|
|
End Enum
|
|
|
|
#End Region
|
|
|
|
#Region " Gestion du New "
|
|
|
|
Sub New()
|
|
Me.Size = New Size(130, 40)
|
|
Font = New Font("Verdana", 9, FontStyle.Regular)
|
|
DoubleBuffered = True
|
|
End Sub
|
|
|
|
#End Region
|
|
|
|
#Region " Propriétés "
|
|
|
|
Public Overrides Property Text As String
|
|
Get
|
|
Return MyBase.Text
|
|
End Get
|
|
Set(ByVal Value As String)
|
|
MyBase.Text = Value
|
|
Invalidate()
|
|
End Set
|
|
End Property
|
|
|
|
#End Region
|
|
|
|
#Region " Gestion et création du design "
|
|
|
|
Protected Overrides Sub OnPaint(ByVal e As System.Windows.Forms.PaintEventArgs)
|
|
MyBase.OnPaint(e)
|
|
e.Graphics.SmoothingMode = SmoothingMode.Default
|
|
|
|
'GESTION DES ETATS
|
|
|
|
Dim Couleur_Degrade1 As New Color
|
|
Dim Couleur_Degrade2 As New Color
|
|
|
|
Dim Couleur_BordureInt_Haut As New Color
|
|
Dim Couleur_BordureInt_Bas As New Color
|
|
|
|
Select Case Etat_Bouton
|
|
Case Etat.None
|
|
Couleur_Degrade1 = Couleur_Degrade1_None
|
|
Couleur_Degrade2 = Couleur_Degrade2_None
|
|
|
|
Couleur_BordureInt_Haut = Couleur_BordureInt_Haut_None
|
|
Couleur_BordureInt_Bas = Couleur_BordureInt_Bas_None
|
|
Case Etat.Over
|
|
Couleur_Degrade1 = Couleur_Degrade1_Over
|
|
Couleur_Degrade2 = Couleur_Degrade2_Over
|
|
|
|
Couleur_BordureInt_Haut = Couleur_BordureInt_Haut_Over
|
|
Couleur_BordureInt_Bas = Couleur_BordureInt_Bas_Over
|
|
Case Etat.Down
|
|
Couleur_Degrade1 = Couleur_Degrade1_Down
|
|
Couleur_Degrade2 = Couleur_Degrade2_Down
|
|
|
|
Couleur_BordureInt_Haut = Couleur_BordureInt_Haut_Down
|
|
Couleur_BordureInt_Bas = Couleur_BordureInt_Bas_Down
|
|
End Select
|
|
|
|
'BACKGROUND
|
|
|
|
Dim Rectangle_Haut As New Rectangle(0, 0, Width, Height)
|
|
|
|
Dim Haut_Brush As LinearGradientBrush = New LinearGradientBrush(Rectangle_Haut, Couleur_Degrade1, Couleur_Degrade2, LinearGradientMode.Vertical)
|
|
e.Graphics.FillRectangle(Haut_Brush, Rectangle_Haut)
|
|
Haut_Brush.Dispose()
|
|
|
|
'ECRITURE
|
|
|
|
Dim StringFormat As New StringFormat
|
|
StringFormat.LineAlignment = StringAlignment.Center
|
|
StringFormat.Alignment = StringAlignment.Center
|
|
|
|
Dim Rectangle_Ecriture As New Rectangle(0, 0, Width, Height)
|
|
|
|
e.Graphics.DrawString(Text, Font, New SolidBrush(Couleur_Ecriture), Rectangle_Ecriture, StringFormat)
|
|
|
|
'BORDURE INT
|
|
|
|
Dim Rectangle_BordureInt As New Rectangle(1, 1, Width - 3, Height - 3)
|
|
Dim Rectangle_BordureInt_AvecBordure As New Rectangle(0, 0, Width - 1, Height - 1)
|
|
|
|
Dim Brush_BordureInt As New LinearGradientBrush(Rectangle_BordureInt_AvecBordure, Couleur_BordureInt_Haut, Couleur_BordureInt_Bas, LinearGradientMode.Vertical)
|
|
e.Graphics.DrawRectangle(New Pen(Brush_BordureInt, 1), Rectangle_BordureInt)
|
|
|
|
'BORDURE EXT
|
|
|
|
Dim Rectangle_BordureExt As New Rectangle(0, 0, Width - 1, Height - 1)
|
|
e.Graphics.DrawRectangle(New Pen(Couleur_BordureExt, 1), Rectangle_BordureExt)
|
|
End Sub
|
|
|
|
#End Region
|
|
|
|
#Region " Gestion des actions "
|
|
|
|
Protected Overrides Sub OnMouseEnter(ByVal e As System.EventArgs)
|
|
MyBase.OnMouseEnter(e)
|
|
Etat_Bouton = Etat.Over
|
|
Invalidate()
|
|
End Sub
|
|
|
|
Protected Overrides Sub OnMouseLeave(ByVal e As System.EventArgs)
|
|
MyBase.OnMouseLeave(e)
|
|
Etat_Bouton = Etat.None
|
|
Invalidate()
|
|
End Sub
|
|
|
|
Protected Overrides Sub OnMouseDown(ByVal e As System.Windows.Forms.MouseEventArgs)
|
|
MyBase.OnMouseDown(e)
|
|
Etat_Bouton = Etat.Down
|
|
Invalidate()
|
|
End Sub
|
|
|
|
Protected Overrides Sub OnMouseUp(ByVal e As System.Windows.Forms.MouseEventArgs)
|
|
MyBase.OnMouseUp(e)
|
|
Etat_Bouton = Etat.Over
|
|
Invalidate()
|
|
End Sub
|
|
|
|
Protected Overrides Sub OnResize(ByVal e As System.EventArgs)
|
|
MyBase.OnResize(e)
|
|
Invalidate()
|
|
End Sub
|
|
|
|
#End Region
|
|
End Class
|
|
|
|
<DefaultEvent("CheckedChanged")> _
|
|
Class DeumosCheckBox
|
|
Inherits ThemeControl153
|
|
|
|
Sub New()
|
|
LockHeight = 16
|
|
|
|
SetColor("Border", 26, 26, 26)
|
|
SetColor("Gloss1", 35, Color.White)
|
|
SetColor("Gloss2", 5, Color.White)
|
|
SetColor("Checked1", Color.Transparent)
|
|
SetColor("Checked2", 40, Color.White)
|
|
SetColor("Unchecked1", 8, 8, 8)
|
|
SetColor("Unchecked2", 16, 16, 16)
|
|
SetColor("Glow", 5, Color.White)
|
|
SetColor("Text", Color.White)
|
|
SetColor("InnerOutline", Color.Black)
|
|
SetColor("OuterOutline", Color.Black)
|
|
End Sub
|
|
|
|
Private C1, C2, C3, C4, C5, C6 As Color
|
|
Private P1, P2, P3 As Pen
|
|
Private B1, B2 As SolidBrush
|
|
|
|
Protected Overrides Sub ColorHook()
|
|
C1 = GetColor("Gloss1")
|
|
C2 = GetColor("Gloss2")
|
|
C3 = GetColor("Checked1")
|
|
C4 = GetColor("Checked2")
|
|
C5 = GetColor("Unchecked1")
|
|
C6 = GetColor("Unchecked2")
|
|
|
|
P1 = New Pen(GetColor("Border"))
|
|
P2 = New Pen(GetColor("InnerOutline"))
|
|
P3 = New Pen(GetColor("OuterOutline"))
|
|
|
|
B1 = New SolidBrush(GetColor("Glow"))
|
|
B2 = New SolidBrush(GetColor("Text"))
|
|
End Sub
|
|
|
|
Protected Overrides Sub PaintHook()
|
|
G.Clear(BackColor)
|
|
|
|
DrawBorders(P1, 0, 0, _Field, _Field, 1)
|
|
DrawGradient(C1, C2, 0, 0, _Field, _Field \ 2)
|
|
|
|
If _Checked Then
|
|
DrawGradient(C3, C4, 2, 2, _Field - 4, _Field - 4)
|
|
Else
|
|
DrawGradient(C5, C6, 2, 2, _Field - 4, _Field - 4, 90)
|
|
End If
|
|
|
|
If State = MouseState.Over Then
|
|
G.FillRectangle(B1, 0, 0, _Field, _Field)
|
|
End If
|
|
|
|
DrawText(B2, HorizontalAlignment.Left, _Field + 3, 0)
|
|
|
|
DrawBorders(P2, 0, 0, _Field, _Field, 2)
|
|
DrawBorders(P3, 0, 0, _Field, _Field)
|
|
|
|
DrawCorners(BackColor, 0, 0, _Field, _Field)
|
|
End Sub
|
|
|
|
Private _Field As Integer = 16
|
|
Property Field() As Integer
|
|
Get
|
|
Return _Field
|
|
End Get
|
|
Set(ByVal value As Integer)
|
|
If value < 4 Then Return
|
|
_Field = value
|
|
LockHeight = value
|
|
Invalidate()
|
|
End Set
|
|
End Property
|
|
|
|
Private _Checked As Boolean
|
|
Property Checked() As Boolean
|
|
Get
|
|
Return _Checked
|
|
End Get
|
|
Set(ByVal value As Boolean)
|
|
_Checked = value
|
|
Invalidate()
|
|
End Set
|
|
End Property
|
|
|
|
Protected Overrides Sub OnMouseDown(ByVal e As System.Windows.Forms.MouseEventArgs)
|
|
_Checked = Not _Checked
|
|
RaiseEvent CheckedChanged(Me)
|
|
MyBase.OnMouseDown(e)
|
|
End Sub
|
|
|
|
Event CheckedChanged(ByVal sender As Object)
|
|
|
|
End Class
|
|
|
|
<DefaultEvent("CheckedChanged")> _
|
|
Class DeumosRadioButton
|
|
Inherits ThemeControl153
|
|
|
|
Sub New()
|
|
LockHeight = 16
|
|
|
|
SetColor("Gloss1", 38, Color.White)
|
|
SetColor("Gloss2", 5, Color.White)
|
|
SetColor("Checked1", Color.Transparent)
|
|
SetColor("Checked2", 40, Color.White)
|
|
SetColor("Unchecked1", 8, 8, 8)
|
|
SetColor("Unchecked2", 16, 16, 16)
|
|
SetColor("Glow", 5, Color.White)
|
|
SetColor("Text", Color.White)
|
|
SetColor("InnerOutline", Color.Black)
|
|
SetColor("OuterOutline", 15, Color.White)
|
|
End Sub
|
|
|
|
Protected Overrides Sub ColorHook()
|
|
C1 = GetColor("Gloss1")
|
|
C2 = GetColor("Gloss2")
|
|
C3 = GetColor("Checked1")
|
|
C4 = GetColor("Checked2")
|
|
C5 = GetColor("Unchecked1")
|
|
C6 = GetColor("Unchecked2")
|
|
|
|
B1 = New SolidBrush(GetColor("Glow"))
|
|
B2 = New SolidBrush(GetColor("Text"))
|
|
|
|
P1 = New Pen(GetColor("InnerOutline"))
|
|
P2 = New Pen(GetColor("OuterOutline"))
|
|
End Sub
|
|
|
|
Private C1, C2, C3, C4, C5, C6 As Color
|
|
Private P1, P2 As Pen
|
|
Private B1, B2 As SolidBrush
|
|
|
|
Private R1, R2 As Rectangle
|
|
Private G1 As LinearGradientBrush
|
|
|
|
Protected Overrides Sub PaintHook()
|
|
G.Clear(BackColor)
|
|
|
|
G.SmoothingMode = SmoothingMode.HighQuality
|
|
R1 = New Rectangle(4, 2, _Field - 8, (_Field \ 2) - 1)
|
|
R2 = New Rectangle(4, 2, _Field - 8, (_Field \ 2))
|
|
|
|
G1 = New LinearGradientBrush(R2, C1, C2, 90S)
|
|
G.FillEllipse(G1, R1)
|
|
|
|
R1 = New Rectangle(2, 2, _Field - 4, _Field - 4)
|
|
|
|
If _Checked Then
|
|
G1 = New LinearGradientBrush(R1, C3, C4, 90S)
|
|
Else
|
|
G1 = New LinearGradientBrush(R1, C5, C6, 90S)
|
|
End If
|
|
G.FillEllipse(G1, R1)
|
|
|
|
If State = MouseState.Over Then
|
|
R1 = New Rectangle(2, 2, _Field - 4, _Field - 4)
|
|
G.FillEllipse(B1, R1)
|
|
End If
|
|
|
|
DrawText(B2, HorizontalAlignment.Left, _Field + 3, 0)
|
|
|
|
G.DrawEllipse(P1, 2, 2, _Field - 4, _Field - 4)
|
|
G.DrawEllipse(P2, 1, 1, _Field - 2, _Field - 2)
|
|
|
|
End Sub
|
|
|
|
Private _Field As Integer = 16
|
|
Property Field() As Integer
|
|
Get
|
|
Return _Field
|
|
End Get
|
|
Set(ByVal value As Integer)
|
|
If value < 4 Then Return
|
|
_Field = value
|
|
LockHeight = value
|
|
Invalidate()
|
|
End Set
|
|
End Property
|
|
|
|
Private _Checked As Boolean
|
|
Property Checked() As Boolean
|
|
Get
|
|
Return _Checked
|
|
End Get
|
|
Set(ByVal value As Boolean)
|
|
_Checked = value
|
|
InvalidateControls()
|
|
RaiseEvent CheckedChanged(Me)
|
|
Invalidate()
|
|
End Set
|
|
End Property
|
|
|
|
Protected Overrides Sub OnMouseDown(ByVal e As System.Windows.Forms.MouseEventArgs)
|
|
If Not _Checked Then Checked = True
|
|
MyBase.OnMouseDown(e)
|
|
End Sub
|
|
|
|
Event CheckedChanged(ByVal sender As Object)
|
|
|
|
Protected Overrides Sub OnCreation()
|
|
InvalidateControls()
|
|
End Sub
|
|
|
|
Private Sub InvalidateControls()
|
|
If Not IsHandleCreated OrElse Not _Checked Then Return
|
|
|
|
For Each C As Control In Parent.Controls
|
|
If C IsNot Me AndAlso TypeOf C Is DeumosRadioButton Then
|
|
DirectCast(C, DeumosRadioButton).Checked = False
|
|
End If
|
|
Next
|
|
End Sub
|
|
|
|
End Class |