#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#include <Misc.au3>
#include <GUIListBox.au3>
#include <Array.au3>
#include <EditConstants.au3>
Opt("MouseCoordMode", 2)
Dim $Object[100][100]
Global $Counter = 1
Func _NewFormCloseButton($Id, $Width = 25, $Height = 25, $BgColor = 0xEDEDED, $FrameColor = 0x6699CC, $TextColor = 0x666666, $TextFont = "MS Sans Serif", $TextSize = 16, $Tip = "")
	If $Width = Default Then $Width = 25
	If $Height = Default Then $Height = 25
	If $BgColor = Default Then $BgColor = 0xEDEDED
	If $FrameColor = Default Then $FrameColor = 0x6699CC
	If $TextColor = Default Then $TextColor = 0x666666
	If $TextFont = Default Then $TextFont = "MS Sans Serif"
	If $TextSize = Default Then $TextSize = 16
	If $Tip = Default Then $Tip = ""
	$Pos = WinGetPos($Id)
	$Id = $Counter
	$Text = " X"
	$Left = $Pos[2] - $Width - 7
	For $i = 0 To UBound($Object) - 1
		If $Object[$i][16] = "FormMinimizeButton" Then
			$Left = $Pos[2] - $Object[$i][3] - $Width - 9
		EndIf
	Next
	$Top = 1
	$Object[$Counter][0] = $Id
	$Object[$Counter][1] = $Left
	$Object[$Counter][2] = $Top
	$Object[$Counter][3] = $Width
	$Object[$Counter][4] = $Height
	$Object[$Counter][5] = $BgColor
	$Object[$Counter][6] = $FrameColor
	$Object[$Counter][7] = $Text
	$Object[$Counter][8] = $TextColor
	$Object[$Counter][9] = $TextFont
	$Object[$Counter][10] = $TextSize
	$Object[$Counter][13] = $Tip
	$Object[$Counter][14] = GUICtrlCreateLabel($Text, $Left + 1, $Top + 1, $Width - 2, $Height - 2)
	$Object[$Counter][15] = GUICtrlCreateGraphic($Left, $Top, $Width, $Height)
	$Object[$Counter][16] = "FormCloseButton"
	$Object[$Counter][19] = "Enabled"
	GUICtrlSetBkColor($Object[$Counter][14], $BgColor)
	GUICtrlSetFont($Object[$Counter][14], $TextSize, 400, 0, $TextFont)
	GUICtrlSetColor($Object[$Counter][14], $TextColor)
	GUICtrlSetTip($Object[$Counter][14], $Tip)
	GUICtrlSetCursor($Object[$Counter][14], 0)
	GUICtrlSetBkColor($Object[$Counter][15], $FrameColor)
	$Counter = $Counter + 1
	Return $Id
EndFunc   ;==>_NewFormCloseButton
Func _NewFormMinimizeButton($Id, $Width = 25, $Height = 25, $BgColor = 0xEDEDED, $FrameColor = 0x6699CC, $TextColor = 0x666666, $TextFont = "MS Sans Serif", $TextSize = 18, $Tip = "")
	If $Width = Default Then $Width = 25
	If $Height = Default Then $Height = 25
	If $BgColor = Default Then $BgColor = 0xEDEDED
	If $FrameColor = Default Then $FrameColor = 0x6699CC
	If $TextColor = Default Then $TextColor = 0x666666
	If $TextFont = Default Then $TextFont = "MS Sans Serif"
	If $TextSize = Default Then $TextSize = 18
	If $Tip = Default Then $Tip = ""
	$Pos = WinGetPos($Id)
	$Left = $Pos[2] - $Width - 7
	For $i = 0 To UBound($Object) - 1
		If $Object[$i][16] = "FormCloseButton" Then
			$Left = $Pos[2] - $Object[$i][3] - $Width - 9
		EndIf
	Next
	$Id = $Counter
	$Text = " -"
	$Top = 1
	$Object[$Counter][0] = $Id
	$Object[$Counter][1] = $Left
	$Object[$Counter][2] = $Top
	$Object[$Counter][3] = $Width
	$Object[$Counter][4] = $Height
	$Object[$Counter][5] = $BgColor
	$Object[$Counter][6] = $FrameColor
	$Object[$Counter][7] = $Text
	$Object[$Counter][8] = $TextColor
	$Object[$Counter][9] = $TextFont
	$Object[$Counter][10] = $TextSize
	$Object[$Counter][13] = $Tip
	$Object[$Counter][14] = GUICtrlCreateLabel($Text, $Left + 1, $Top + 1, $Width - 2, $Height - 2)
	$Object[$Counter][15] = GUICtrlCreateGraphic($Left, $Top, $Width, $Height)
	$Object[$Counter][16] = "FormMinimizeButton"
	$Object[$Counter][19] = "Enabled"
	GUICtrlSetBkColor($Object[$Counter][14], $BgColor)
	GUICtrlSetFont($Object[$Counter][14], $TextSize, 800, 0, $TextFont)
	GUICtrlSetColor($Object[$Counter][14], $TextColor)
	GUICtrlSetTip($Object[$Counter][14], $Tip)
	GUICtrlSetCursor($Object[$Counter][14], 0)
	GUICtrlSetBkColor($Object[$Counter][15], $FrameColor)
	$Counter = $Counter + 1
	Return $Id
EndFunc   ;==>_NewFormMinimizeButton
Func _NewFormBar($Id, $Height = 25, $Text = "", $BgColor = 0xEDEDED, $FrameColor = 0x6699CC, $TextColor = 0x666666, $TextFont = "MS Sans Serif", $TextSize = 10, $Tip = "")
	If $Height = Default Then $Height = 25
	If $Text = Default Then $Text = ""
	If $BgColor = Default Then $BgColor = 0xEDEDED
	If $FrameColor = Default Then $FrameColor = 0x6699CC
	If $TextColor = Default Then $TextColor = 0x666666
	If $TextFont = Default Then $TextFont = "MS Sans Serif"
	If $TextSize = Default Then $TextSize = 10
	If $Tip = Default Then $Tip = ""
	$Pos = WinGetPos($Id)
	$Left = 1
	$Width = $Pos[2] - 8
	$FormMinimizeButton = 0
	$FormCloseButton = 0
	For $i = 0 To UBound($Object) - 1
		If $Object[$i][16] = "FormCloseButton" Then
			$Width = $Pos[2] - 10 - $Object[$i][3]
			$FormCloseButton = $Object[$i][3]
			If $FormMinimizeButton <> 0 Then $Width = $Pos[2] - 12 - $Object[$i][3] - $FormCloseButton
		ElseIf $Object[$i][16] = "FormMinimizeButton" Then
			$Width = $Pos[2] - 10 - $Object[$i][3]
			$FormMinimizeButton = $Object[$i][3]
			If $FormCloseButton <> 0 Then $Width = $Pos[2] - 12 - $Object[$i][3] - $FormCloseButton
		EndIf
	Next
	$Id = $Counter
	$Top = 1
	$Object[$Counter][0] = $Id
	$Object[$Counter][1] = $Left
	$Object[$Counter][2] = $Top
	$Object[$Counter][3] = $Width
	$Object[$Counter][4] = $Height
	$Object[$Counter][5] = $BgColor
	$Object[$Counter][6] = $FrameColor
	$Object[$Counter][7] = $Text
	$Object[$Counter][8] = $TextColor
	$Object[$Counter][9] = $TextFont
	$Object[$Counter][10] = $TextSize
	$Object[$Counter][13] = $Tip
	$Object[$Counter][14] = GUICtrlCreateLabel($Text, $Left + 1, $Top + 1, $Width - 2, $Height - 2, BitOR($SS_CENTER, $SS_CENTERIMAGE))
	$Object[$Counter][15] = GUICtrlCreateGraphic($Left, $Top, $Width, $Height)
	$Object[$Counter][16] = "FormBar"
	$Object[$Counter][19] = "Enabled"
	GUICtrlSetBkColor($Object[$Counter][14], $BgColor)
	GUICtrlSetFont($Object[$Counter][14], $TextSize, 400, 0, $TextFont)
	GUICtrlSetColor($Object[$Counter][14], $TextColor)
	GUICtrlSetTip($Object[$Counter][14], $Tip)
	GUICtrlSetCursor($Object[$Counter][14], 9)
	GUICtrlSetBkColor($Object[$Counter][15], $FrameColor)
	$Counter = $Counter + 1
	Return $Id
EndFunc   ;==>_NewFormBar
Func _NewButton($Left, $Top, $Width = 75, $Height = 25, $Text = "", $BgColor = 0xEDEDED, $FrameColor = 0x6699CC, $TextColor = 0x666666, $TextFont = "MS Sans Serif", $TextSize = 10, $Tip = "")
	If $Width = Default Then $Width = 75
	If $Height = Default Then $Height = 25
	If $Text = Default Then $Text = ""
	If $BgColor = Default Then $BgColor = 0xEDEDED
	If $FrameColor = Default Then $FrameColor = 0x6699CC
	If $TextColor = Default Then $TextColor = 0x666666
	If $TextFont = Default Then $TextFont = "MS Sans Serif"
	If $TextSize = Default Then $TextSize = 10
	If $Tip = Default Then $Tip = ""
	$Id = $Counter
	$Object[$Counter][0] = $Id
	$Object[$Counter][1] = $Left
	$Object[$Counter][2] = $Top
	$Object[$Counter][3] = $Width
	$Object[$Counter][4] = $Height
	$Object[$Counter][5] = $BgColor
	$Object[$Counter][6] = $FrameColor
	$Object[$Counter][7] = $Text
	$Object[$Counter][8] = $TextColor
	$Object[$Counter][9] = $TextFont
	$Object[$Counter][10] = $TextSize
	$Object[$Counter][13] = $Tip
	$Object[$Counter][14] = GUICtrlCreateLabel($Text, $Left + 1, $Top + 1, $Width - 2, $Height - 2, BitOR($SS_CENTER, $SS_CENTERIMAGE))
	$Object[$Counter][15] = GUICtrlCreateGraphic($Left, $Top, $Width, $Height)
	$Object[$Counter][16] = "Button"
	$Object[$Counter][19] = "Enabled"
	GUICtrlSetBkColor($Object[$Counter][14], $BgColor)
	GUICtrlSetFont($Object[$Counter][14], $TextSize, 400, 0, $TextFont)
	GUICtrlSetColor($Object[$Counter][14], $TextColor)
	GUICtrlSetTip($Object[$Counter][14], $Tip)
	GUICtrlSetCursor($Object[$Counter][14], 0)
	GUICtrlSetBkColor($Object[$Counter][15], $FrameColor)
	$Counter = $Counter + 1
	Return $Id
EndFunc   ;==>_NewButton
Func _NewSwitchButton($Left, $Top, $Width = 75, $Height = 25, $Text = "", $BgColor = 0xEDEDED, $FrameColor = 0x6699CC, $TextColor = 0x666666, $TextFont = "MS Sans Serif", $TextSize = 10, $Tip = "")
	If $Width = Default Then $Width = 75
	If $Height = Default Then $Height = 25
	If $Text = Default Then $Text = ""
	If $BgColor = Default Then $BgColor = 0xEDEDED
	If $FrameColor = Default Then $FrameColor = 0x6699CC
	If $TextColor = Default Then $TextColor = 0x666666
	If $TextFont = Default Then $TextFont = "MS Sans Serif"
	If $TextSize = Default Then $TextSize = 10
	If $Tip = Default Then $Tip = ""
	$Id = $Counter
	$Object[$Counter][0] = $Id
	$Object[$Counter][1] = $Left
	$Object[$Counter][2] = $Top
	$Object[$Counter][3] = $Width
	$Object[$Counter][4] = $Height
	$Object[$Counter][5] = $BgColor
	$Object[$Counter][6] = $FrameColor
	$Object[$Counter][7] = $Text
	$Object[$Counter][8] = $TextColor
	$Object[$Counter][9] = $TextFont
	$Object[$Counter][10] = $TextSize
	$Object[$Counter][13] = $Tip
	$Object[$Counter][14] = GUICtrlCreateLabel($Text, $Left + 1, $Top + 1, $Width - 2, $Height - 2, BitOR($SS_CENTER, $SS_CENTERIMAGE))
	$Object[$Counter][15] = GUICtrlCreateGraphic($Left, $Top, $Width, $Height)
	$Object[$Counter][16] = "SwitchButton"
	$Object[$Counter][19] = "Enabled"
	GUICtrlSetBkColor($Object[$Counter][14], $BgColor)
	GUICtrlSetFont($Object[$Counter][14], $TextSize, 400, 0, $TextFont)
	GUICtrlSetColor($Object[$Counter][14], $TextColor)
	GUICtrlSetTip($Object[$Counter][14], $Tip)
	GUICtrlSetCursor($Object[$Counter][14], 0)
	GUICtrlSetBkColor($Object[$Counter][15], $FrameColor)
	$Counter = $Counter + 1
	Return $Id
EndFunc   ;==>_NewSwitchButton
Func _NewTextField($Left, $Top, $Width = 120, $Height = 25, $Text = "", $BgColor = 0xFFFFFF, $FrameColor = 0x6699CC, $TextColor = 0x666666, $TextFont = "MS Sans Serif", $TextSize = 10, $Tip = "")
	If $Width = Default Then $Width = 120
	If $Height = Default Then $Height = 25
	If $Text = Default Then $Text = ""
	If $BgColor = Default Then $BgColor = 0xFFFFFF
	If $FrameColor = Default Then $FrameColor = 0x6699CC
	If $TextColor = Default Then $TextColor = 0x666666
	If $TextFont = Default Then $TextFont = "MS Sans Serif"
	If $TextSize = Default Then $TextSize = 10
	If $Tip = Default Then $Tip = ""
	$Id = $Counter
	$Object[$Counter][0] = $Id
	$Object[$Counter][1] = $Left
	$Object[$Counter][2] = $Top
	$Object[$Counter][3] = $Width
	$Object[$Counter][4] = $Height
	$Object[$Counter][5] = $BgColor
	$Object[$Counter][6] = $FrameColor
	$Object[$Counter][7] = $Text
	$Object[$Counter][8] = $TextColor
	$Object[$Counter][9] = $TextFont
	$Object[$Counter][10] = $TextSize
	$Object[$Counter][13] = $Tip
	$Object[$Counter][14] = GUICtrlCreateInput($Text, $Left + 1, $Top + 1, $Width - 2, $Height - 2, -1, $WS_EX_TOOLWINDOW)
	$Object[$Counter][15] = GUICtrlCreateGraphic($Left, $Top, $Width, $Height)
	$Object[$Counter][16] = "TextField"
	$Object[$Counter][19] = "Enabled"
	GUICtrlSetBkColor($Object[$Counter][14], $BgColor)
	GUICtrlSetFont($Object[$Counter][14], $TextSize, 400, 0, $TextFont)
	GUICtrlSetColor($Object[$Counter][14], $TextColor)
	GUICtrlSetTip($Object[$Counter][14], $Tip)
	GUICtrlSetBkColor($Object[$Counter][15], $FrameColor)
	$Counter = $Counter + 1
	Return $Id
EndFunc   ;==>_NewTextField
Func _NewPasswordField($Left, $Top, $Width = 120, $Height = 25, $Text = "", $BgColor = 0xFFFFFF, $FrameColor = 0x6699CC, $TextColor = 0x666666, $TextFont = "MS Sans Serif", $TextSize = 10, $Tip = "")
	If $Width = Default Then $Width = 120
	If $Height = Default Then $Height = 25
	If $Text = Default Then $Text = ""
	If $BgColor = Default Then $BgColor = 0xFFFFFF
	If $FrameColor = Default Then $FrameColor = 0x6699CC
	If $TextColor = Default Then $TextColor = 0x666666
	If $TextFont = Default Then $TextFont = "MS Sans Serif"
	If $TextSize = Default Then $TextSize = 10
	If $Tip = Default Then $Tip = ""
	$Id = $Counter
	$Object[$Counter][0] = $Id
	$Object[$Counter][1] = $Left
	$Object[$Counter][2] = $Top
	$Object[$Counter][3] = $Width
	$Object[$Counter][4] = $Height
	$Object[$Counter][5] = $BgColor
	$Object[$Counter][6] = $FrameColor
	$Object[$Counter][7] = $Text
	$Object[$Counter][8] = $TextColor
	$Object[$Counter][9] = $TextFont
	$Object[$Counter][10] = $TextSize
	$Object[$Counter][13] = $Tip
	$Object[$Counter][14] = GUICtrlCreateInput($Text, $Left + 1, $Top + 1, $Width - 2, $Height - 2, BitOR($ES_PASSWORD, $ES_AUTOHSCROLL), $WS_EX_TOOLWINDOW)
	$Object[$Counter][15] = GUICtrlCreateGraphic($Left, $Top, $Width, $Height)
	$Object[$Counter][16] = "PasswordField"
	$Object[$Counter][19] = "Enabled"
	GUICtrlSetBkColor($Object[$Counter][14], $BgColor)
	GUICtrlSetFont($Object[$Counter][14], $TextSize, 400, 0, $TextFont)
	GUICtrlSetColor($Object[$Counter][14], $TextColor)
	GUICtrlSetTip($Object[$Counter][14], $Tip)
	GUICtrlSetBkColor($Object[$Counter][15], $FrameColor)
	$Counter = $Counter + 1
	Return $Id
EndFunc   ;==>_NewPasswordField
Func _NewNumberField($Left, $Top, $Width = 120, $Height = 25, $Text = "", $BgColor = 0xFFFFFF, $FrameColor = 0x6699CC, $TextColor = 0x666666, $TextFont = "MS Sans Serif", $TextSize = 10, $Tip = "")
	If $Width = Default Then $Width = 120
	If $Height = Default Then $Height = 25
	If $Text = Default Then $Text = ""
	If $BgColor = Default Then $BgColor = 0xFFFFFF
	If $FrameColor = Default Then $FrameColor = 0x6699CC
	If $TextColor = Default Then $TextColor = 0x666666
	If $TextFont = Default Then $TextFont = "MS Sans Serif"
	If $TextSize = Default Then $TextSize = 10
	If $Tip = Default Then $Tip = ""
	$Id = $Counter
	$Object[$Counter][0] = $Id
	$Object[$Counter][1] = $Left
	$Object[$Counter][2] = $Top
	$Object[$Counter][3] = $Width
	$Object[$Counter][4] = $Height
	$Object[$Counter][5] = $BgColor
	$Object[$Counter][6] = $FrameColor
	$Object[$Counter][7] = $Text
	$Object[$Counter][8] = $TextColor
	$Object[$Counter][9] = $TextFont
	$Object[$Counter][10] = $TextSize
	$Object[$Counter][13] = $Tip
	$Object[$Counter][14] = GUICtrlCreateInput($Text, $Left + 1, $Top + 1, $Width - 2, $Height - 2, BitOR($ES_AUTOHSCROLL, $ES_NUMBER), $WS_EX_TOOLWINDOW)
	$Object[$Counter][15] = GUICtrlCreateGraphic($Left, $Top, $Width, $Height)
	$Object[$Counter][16] = "NumberField"
	$Object[$Counter][19] = "Enabled"
	GUICtrlSetBkColor($Object[$Counter][14], $BgColor)
	GUICtrlSetFont($Object[$Counter][14], $TextSize, 400, 0, $TextFont)
	GUICtrlSetColor($Object[$Counter][14], $TextColor)
	GUICtrlSetTip($Object[$Counter][14], $Tip)
	GUICtrlSetBkColor($Object[$Counter][15], $FrameColor)
	$Counter = $Counter + 1
	Return $Id
EndFunc   ;==>_NewNumberField
Func _NewTextArea($Left, $Top, $Width = 100, $Height = 100, $Text = "", $BgColor = 0xFFFFFF, $FrameColor = 0x6699CC, $TextColor = 0x666666, $TextFont = "MS Sans Serif", $TextSize = 10, $Tip = "")
	If $Width = Default Then $Width = 100
	If $Height = Default Then $Height = 100
	If $Text = Default Then $Text = ""
	If $BgColor = Default Then $BgColor = 0xFFFFFF
	If $FrameColor = Default Then $FrameColor = 0x6699CC
	If $TextColor = Default Then $TextColor = 0x666666
	If $TextFont = Default Then $TextFont = "MS Sans Serif"
	If $TextSize = Default Then $TextSize = 10
	If $Tip = Default Then $Tip = ""
	$Id = $Counter
	DllCall("uxtheme.dll", "none", "SetThemeAppProperties", "int", 4)
	$Object[$Counter][0] = $Id
	$Object[$Counter][1] = $Left
	$Object[$Counter][2] = $Top
	$Object[$Counter][3] = $Width
	$Object[$Counter][4] = $Height
	$Object[$Counter][5] = $BgColor
	$Object[$Counter][6] = $FrameColor
	$Object[$Counter][7] = $Text
	$Object[$Counter][8] = $TextColor
	$Object[$Counter][9] = $TextFont
	$Object[$Counter][10] = $TextSize
	$Object[$Counter][13] = $Tip
	$Object[$Counter][14] = GUICtrlCreateEdit($Text, $Left + 1, $Top + 1, $Width - 2, $Height - 2, -1, $WS_EX_TOOLWINDOW)
	$Object[$Counter][15] = GUICtrlCreateGraphic($Left, $Top, $Width, $Height)
	$Object[$Counter][16] = "TextArea"
	$Object[$Counter][19] = "Enabled"
	DllCall("uxtheme.dll", "none", "SetThemeAppProperties", "int", 7)
	GUICtrlSetBkColor($Object[$Counter][14], $BgColor)
	GUICtrlSetFont($Object[$Counter][14], $TextSize, 400, 0, $TextFont)
	GUICtrlSetColor($Object[$Counter][14], $TextColor)
	GUICtrlSetTip($Object[$Counter][14], $Tip)
	GUICtrlSetBkColor($Object[$Counter][15], $FrameColor)
	$Counter = $Counter + 1
	Return $Id
EndFunc   ;==>_NewTextArea
Func _NewProgressBar($Left, $Top, $Width = 150, $Height = 25, $BgColor = 0xEFEFEF, $FrameColor = 0x6699CC, $Position = 0, $BarColor = 0x99CCFF, $Tip = "")
	If $Width = Default Then $Width = 150
	If $Height = Default Then $Height = 25
	If $BgColor = Default Then $BgColor = 0xEFEFEF
	If $FrameColor = Default Then $FrameColor = 0x6699CC
	If $Position = Default Then $Position = 0
	If $BarColor = Default Then $BarColor = 0x99CCFF
	If $Tip = Default Then $Tip = ""
	$Id = $Counter
	$StringPosition = -2 + $Width / 100 * $Position
	If $StringPosition <= 1 Then $StringPosition = 2
	$Object[$Counter][0] = $Id
	$Object[$Counter][1] = $Left
	$Object[$Counter][2] = $Top
	$Object[$Counter][3] = $Width
	$Object[$Counter][4] = $Height
	$Object[$Counter][5] = $BgColor
	$Object[$Counter][6] = $FrameColor
	$Object[$Counter][11] = $Position
	$Object[$Counter][12] = $BarColor
	$Object[$Counter][13] = $Tip
	$Object[$Counter][14] = GUICtrlCreateLabel("", $Left + 1, $Top + 1, $Width - 2, $Height - 2)
	$Object[$Counter][15] = GUICtrlCreateGraphic($Left, $Top, $Width, $Height)
	$Object[$Counter][16] = "ProgressBar"
	$Object[$Counter][17] = GUICtrlCreateLabel("", $Left + 1, $Top + 1, $StringPosition, $Height - 2)
	$Object[$Counter][19] = "Enabled"
	GUICtrlSetBkColor($Object[$Counter][14], $BgColor)
	GUICtrlSetTip($Object[$Counter][14], $Tip)
	GUICtrlSetBkColor($Object[$Counter][15], $FrameColor)
	GUICtrlSetBkColor($Object[$Counter][17], $BarColor)
	$Counter = $Counter + 1
	Return $Id
EndFunc   ;==>_NewProgressBar
Func _NewProgressSlider($Left, $Top, $Width = 150, $Height = 25, $BgColor = 0xEFEFEF, $FrameColor = 0x6699CC, $Position = 0, $BarColor = 0x99CCFF, $Tip = "")
	If $Width = Default Then $Width = 150
	If $Height = Default Then $Height = 25
	If $BgColor = Default Then $BgColor = 0xEFEFEF
	If $FrameColor = Default Then $FrameColor = 0x6699CC
	If $Position = Default Then $Position = 0
	If $BarColor = Default Then $BarColor = 0x99CCFF
	If $Tip = Default Then $Tip = ""
	$Id = $Counter
	$StringPosition = -2 + $Width / 100 * $Position
	If $StringPosition <= 1 Then $StringPosition = 2
	$Object[$Counter][0] = $Id
	$Object[$Counter][1] = $Left
	$Object[$Counter][2] = $Top
	$Object[$Counter][3] = $Width
	$Object[$Counter][4] = $Height
	$Object[$Counter][5] = $BgColor
	$Object[$Counter][6] = $FrameColor
	$Object[$Counter][11] = $Position
	$Object[$Counter][12] = $BarColor
	$Object[$Counter][13] = $Tip
	$Object[$Counter][14] = GUICtrlCreateLabel("", $Left + 1, $Top + 1, $Width - 2, $Height - 2)
	$Object[$Counter][15] = GUICtrlCreateGraphic($Left, $Top, $Width, $Height)
	$Object[$Counter][16] = "ProgressSlider"
	$Object[$Counter][17] = GUICtrlCreateLabel("", $Left + 1, $Top + 1, $StringPosition, $Height - 2)
	$Object[$Counter][19] = "Enabled"
	GUICtrlSetBkColor($Object[$Counter][14], $BgColor)
	GUICtrlSetTip($Object[$Counter][14], $Tip)
	GUICtrlSetCursor($Object[$Counter][14], 0)
	GUICtrlSetBkColor($Object[$Counter][15], $FrameColor)
	GUICtrlSetBkColor($Object[$Counter][17], $BarColor)
	GUICtrlSetCursor($Object[$Counter][17], 0)
	$Counter = $Counter + 1
	Return $Id
EndFunc   ;==>_NewProgressSlider
Func _NewSlider($Left, $Top, $Width = 150, $Height = 25, $BgColor = 0xEFEFEF, $FrameColor = 0x6699CC, $Position = 0, $BarColor = 0x99CCFF, $Tip = "")
	If $Width = Default Then $Width = 150
	If $Height = Default Then $Height = 25
	If $BgColor = Default Then $BgColor = 0xEFEFEF
	If $FrameColor = Default Then $FrameColor = 0x6699CC
	If $Position = Default Then $Position = 0
	If $BarColor = Default Then $BarColor = 0x99CCFF
	If $Tip = Default Then $Tip = ""
	$Id = $Counter
	$Object[$Counter][0] = $Id
	$Object[$Counter][1] = $Left
	$Object[$Counter][2] = $Top
	$Object[$Counter][3] = $Width
	$Object[$Counter][4] = $Height
	$Object[$Counter][5] = $BgColor
	$Object[$Counter][6] = $FrameColor
	$Object[$Counter][11] = $Position
	$Object[$Counter][12] = $BarColor
	$Object[$Counter][13] = $Tip
	$Object[$Counter][14] = GUICtrlCreateLabel("", $Left + 1, $Top + 1, $Width - 2, $Height - 2)
	$Object[$Counter][15] = GUICtrlCreateGraphic($Left, $Top, $Width, $Height)
	$Object[$Counter][16] = "Slider"
	$Object[$Counter][17] = GUICtrlCreateLabel("", $Left + 1, $Top + 1, $Width / 5, $Height - 2)
	$Object[$Counter][19] = "Enabled"
	GUICtrlSetBkColor($Object[$Counter][14], $BgColor)
	GUICtrlSetTip($Object[$Counter][14], $Tip)
	GUICtrlSetCursor($Object[$Counter][14], 0)
	GUICtrlSetBkColor($Object[$Counter][15], $FrameColor)
	GUICtrlSetBkColor($Object[$Counter][17], $BarColor)
	GUICtrlSetCursor($Object[$Counter][17], 0)
	$Counter = $Counter + 1
	Return $Id
EndFunc   ;==>_NewSlider
Func _NewCheckBox($Left, $Top, $Width = 15, $Height = 15, $BgColor = 0xEFEFEF, $FrameColor = 0x6699CC, $TextColor = 0x6699CC, $Tip = "")
	If $Width = Default Then $Width = 15
	If $Height = Default Then $Height = 15
	If $BgColor = Default Then $BgColor = 0xEFEFEF
	If $FrameColor = Default Then $FrameColor = 0x6699CC
	If $TextColor = Default Then $TextColor = 0x6699CC
	If $Tip = Default Then $Tip = ""
	$Id = $Counter
	$Object[$Counter][0] = $Id
	$Object[$Counter][1] = $Left
	$Object[$Counter][2] = $Top
	$Object[$Counter][3] = $Width
	$Object[$Counter][4] = $Height
	$Object[$Counter][5] = $BgColor
	$Object[$Counter][6] = $FrameColor
	$Object[$Counter][8] = $TextColor
	$Object[$Counter][13] = $Tip
	$Object[$Counter][14] = GUICtrlCreateLabel("", $Left + 1, $Top + 1, $Width - 2, $Height - 2, BitOR($SS_CENTER, $SS_CENTERIMAGE))
	$Object[$Counter][15] = GUICtrlCreateGraphic($Left, $Top, $Width, $Height)
	$Object[$Counter][16] = "CheckBox"
	$Object[$Counter][18] = "Unchecked"
	$Object[$Counter][19] = "Enabled"
	GUICtrlSetBkColor($Object[$Counter][14], $BgColor)
	GUICtrlSetTip($Object[$Counter][14], $Tip)
	GUICtrlSetFont($Object[$Counter][14], 14, 400, 0, "Webdings")
	GUICtrlSetCursor($Object[$Counter][14], 0)
	GUICtrlSetColor($Object[$Counter][14], $TextColor)
	GUICtrlSetBkColor($Object[$Counter][15], $FrameColor)
	$Counter = $Counter + 1
	Return $Id
EndFunc   ;==>_NewCheckBox
Func _NewRadioBox($Left, $Top, $Width = 15, $Height = 15, $BgColor = 0xEFEFEF, $FrameColor = 0x6699CC, $TextColor = 0x6699CC, $Tip = "")
	If $Width = Default Then $Width = 15
	If $Height = Default Then $Height = 15
	If $BgColor = Default Then $BgColor = 0xEFEFEF
	If $FrameColor = Default Then $FrameColor = 0x6699CC
	If $TextColor = Default Then $TextColor = 0x6699CC
	If $Tip = Default Then $Tip = ""
	$Id = $Counter
	$Object[$Counter][0] = $Id
	$Object[$Counter][1] = $Left
	$Object[$Counter][2] = $Top
	$Object[$Counter][3] = $Width
	$Object[$Counter][4] = $Height
	$Object[$Counter][5] = $BgColor
	$Object[$Counter][6] = $FrameColor
	$Object[$Counter][8] = $TextColor
	$Object[$Counter][13] = $Tip
	$Object[$Counter][14] = GUICtrlCreateLabel("", $Left + 1, $Top + 1, $Width - 2, $Height - 2, BitOR($SS_CENTER, $SS_CENTERIMAGE))
	$Object[$Counter][15] = GUICtrlCreateGraphic($Left, $Top, $Width, $Height)
	$Object[$Counter][16] = "RadioBox"
	$Object[$Counter][18] = "Unchecked"
	$Object[$Counter][19] = "Enabled"
	GUICtrlSetBkColor($Object[$Counter][14], $BgColor)
	GUICtrlSetTip($Object[$Counter][14], $Tip)
	GUICtrlSetFont($Object[$Counter][14], 4, 400, 0, "Webdings")
	GUICtrlSetCursor($Object[$Counter][14], 0)
	GUICtrlSetColor($Object[$Counter][14], $TextColor)
	GUICtrlSetBkColor($Object[$Counter][15], $FrameColor)
	$Counter = $Counter + 1
	Return $Id
EndFunc   ;==>_NewRadioBox
Func _NewList($Left, $Top, $Width = 100, $Height = 98, $Text = "", $BgColor = 0xEFEFEF, $FrameColor = 0x6699CC, $TextColor = 0x666666, $TextFont = "MS Sans Serif", $TextSize = 10, $Tip = "")
	If $Width = Default Then $Width = 100
	If $Height = Default Then $Height = 98
	If $Text = Default Then $Text = ""
	If $BgColor = Default Then $BgColor = 0xEFEFEF
	If $FrameColor = Default Then $FrameColor = 0x6699CC
	If $TextColor = Default Then $TextColor = 0x666666
	If $TextFont = Default Then $TextFont = "MS Sans Serif"
	If $TextSize = Default Then $TextSize = 10
	If $Tip = Default Then $Tip = ""
	$Id = $Counter
	DllCall("uxtheme.dll", "none", "SetThemeAppProperties", "int", 4)
	$Object[$Counter][0] = $Id
	$Object[$Counter][1] = $Left
	$Object[$Counter][2] = $Top
	$Object[$Counter][3] = $Width
	$Object[$Counter][4] = $Height
	$Object[$Counter][5] = $BgColor
	$Object[$Counter][6] = $FrameColor
	$Object[$Counter][7] = $Text
	$Object[$Counter][8] = $TextColor
	$Object[$Counter][9] = $TextFont
	$Object[$Counter][10] = $TextSize
	$Object[$Counter][13] = $Tip
	$Object[$Counter][14] = GUICtrlCreateList($Text, $Left + 1, $Top + 1, $Width - 2, $Height - 2, $WS_VSCROLL, $WS_EX_TOOLWINDOW)
	$Object[$Counter][15] = GUICtrlCreateGraphic($Left, $Top, $Width, $Height)
	$Object[$Counter][16] = "List"
	$Object[$Counter][19] = "Enabled"
	DllCall("uxtheme.dll", "none", "SetThemeAppProperties", "int", 7)
	GUICtrlSetBkColor($Object[$Counter][14], $BgColor)
	GUICtrlSetFont($Object[$Counter][14], $TextSize, 400, 0, $TextFont)
	GUICtrlSetColor($Object[$Counter][14], $TextColor)
	GUICtrlSetTip($Object[$Counter][14], $Tip)
	GUICtrlSetBkColor($Object[$Counter][15], $FrameColor)
	$Counter = $Counter + 1
	Return $Id
EndFunc   ;==>_NewList
Func _NewText($Left, $Top, $Width = 40, $Height = 25, $Text = "", $BgColor = 0xFFFFFF, $FrameColor = 0xFFFFFF, $TextColor = 0x666666, $TextFont = "MS Sans Serif", $TextSize = 10, $Tip = "")
	If $Width = Default Then $Width = 40
	If $Height = Default Then $Height = 25
	If $Text = Default Then $Text = ""
	If $BgColor = Default Then $BgColor = 0xFFFFFF
	If $FrameColor = Default Then $FrameColor = 0xFFFFFF
	If $TextColor = Default Then $TextColor = 0x666666
	If $TextFont = Default Then $TextFont = "MS Sans Serif"
	If $TextSize = Default Then $TextSize = 10
	If $Tip = Default Then $Tip = ""
	$Id = $Counter
	$Object[$Counter][0] = $Id
	$Object[$Counter][1] = $Left
	$Object[$Counter][2] = $Top
	$Object[$Counter][3] = $Width
	$Object[$Counter][4] = $Height
	$Object[$Counter][5] = $BgColor
	$Object[$Counter][6] = $FrameColor
	$Object[$Counter][7] = $Text
	$Object[$Counter][8] = $TextColor
	$Object[$Counter][9] = $TextFont
	$Object[$Counter][10] = $TextSize
	$Object[$Counter][13] = $Tip
	$Object[$Counter][14] = GUICtrlCreateLabel($Text, $Left + 1, $Top + 1, $Width - 2, $Height - 2)
	$Object[$Counter][15] = GUICtrlCreateGraphic($Left, $Top, $Width, $Height)
	$Object[$Counter][16] = "Text"
	$Object[$Counter][19] = "Enabled"
	GUICtrlSetBkColor($Object[$Counter][14], $BgColor)
	GUICtrlSetFont($Object[$Counter][14], $TextSize, 400, 0, $TextFont)
	GUICtrlSetColor($Object[$Counter][14], $TextColor)
	GUICtrlSetTip($Object[$Counter][14], $Tip)
	GUICtrlSetBkColor($Object[$Counter][15], $FrameColor)
	$Counter = $Counter + 1
	Return $Id
EndFunc   ;==>_NewText
Func _GetBounds($Id)
	For $i = 0 To UBound($Object) - 1
		If $Id = $Object[$i][0] Then
			Return "[" & $Object[$i][1] & "][" & $Object[$i][2] & "][" & $Object[$i][3] & "][" & $Object[$i][4] & "]"
		EndIf
	Next
EndFunc   ;==>_GetBounds
Func _GetBgColor($Id)
	For $i = 0 To UBound($Object) - 1
		If $Id = $Object[$i][0] Then
			Return "0x" & Hex($Object[$i][5], 6)
		EndIf
	Next
EndFunc   ;==>_GetBgColor
Func _GetFrameColor($Id)
	For $i = 0 To UBound($Object) - 1
		If $Id = $Object[$i][0] Then
			Return "0x" & Hex($Object[$i][6], 6)
		EndIf
	Next
EndFunc   ;==>_GetFrameColor
Func _GetText($Id)
	For $i = 0 To UBound($Object) - 1
		If $Id = $Object[$i][0] Then
			If $Object[$i][16] = "TextField" Or $Object[$i][16] = "NumberField" Or $Object[$i][16] = "PasswordField" Or $Object[$i][16] = "TextArea" Or $Object[$i][16] = "List" Then
				$Read = GUICtrlRead($Object[$i][14])
				$Object[$i][7] = $Read
			EndIf
			Return $Object[$i][7]
		EndIf
	Next
EndFunc   ;==>_GetText
Func _GetTextColor($Id)
	For $i = 0 To UBound($Object) - 1
		If $Id = $Object[$i][0] Then
			Return "0x" & Hex($Object[$i][8], 6)
		EndIf
	Next
EndFunc   ;==>_GetTextColor
Func _GetTextFont($Id)
	For $i = 0 To UBound($Object) - 1
		If $Id = $Object[$i][0] Then
			Return $Object[$i][9]
		EndIf
	Next
EndFunc   ;==>_GetTextFont
Func _GetTextSize($Id)
	For $i = 0 To UBound($Object) - 1
		If $Id = $Object[$i][0] Then
			Return $Object[$i][10]
		EndIf
	Next
EndFunc   ;==>_GetTextSize
Func _GetTip($Id)
	For $i = 0 To UBound($Object) - 1
		If $Id = $Object[$i][0] Then
			Return $Object[$i][13]
		EndIf
	Next
EndFunc   ;==>_GetTip
Func _GetHandle($Id)
	For $i = 0 To UBound($Object) - 1
		If $Id = $Object[$i][0] Then
			If $Object[$i][19] <> "Disable" Then
				Return $Object[$i][14]
			Else
				Return 1
			EndIf
		EndIf
	Next
EndFunc   ;==>_GetHandle
Func _GetBarColor($Id)
	For $i = 0 To UBound($Object) - 1
		If $Id = $Object[$i][0] Then
			Return "0x" & Hex($Object[$i][12], 6)
		EndIf
	Next
EndFunc   ;==>_GetBarColor
Func _GetPosition($Id)
	For $i = 0 To UBound($Object) - 1
		If $Id = $Object[$i][0] Then
			Return $Object[$i][11]
		EndIf
	Next
EndFunc   ;==>_GetPosition
Func _GetState($Id)
	For $i = 0 To UBound($Object) - 1
		If $Id = $Object[$i][0] Then
			Return $Object[$i][19]
		EndIf
	Next
EndFunc   ;==>_GetState
Func _SetBounds($Id, $Left, $Top, $Width, $Height)
	For $i = 0 To UBound($Object) - 1
		If $Id = $Object[$i][0] Then
			$Object[$i][1] = $Left
			$Object[$i][2] = $Top
			$Object[$i][3] = $Width
			$Object[$i][4] = $Height
			GUICtrlSetPos($Object[$i][14], $Left, $Top, $Width, $Height)
			GUICtrlSetPos($Object[$i][15], $Left, $Top, $Width, $Height)
			_SetPosition($Object[$i][0], $Object[$i][11])
		EndIf
	Next
EndFunc   ;==>_SetBounds
Func _SetBgColor($Id, $BgColor)
	For $i = 0 To UBound($Object) - 1
		If $Id = $Object[$i][0] Then
			$Object[$i][5] = $BgColor
			GUICtrlSetBkColor($Object[$i][14], $BgColor)
		EndIf
	Next
EndFunc   ;==>_SetBgColor
Func _SetAllBgColors($BgColor)
	For $i = 0 To UBound($Object) - 1
		If $Object[$i][0] <> "" Then
			$Object[$i][5] = $BgColor
			GUICtrlSetBkColor($Object[$i][14], $BgColor)
		EndIf
	Next
EndFunc   ;==>_SetAllBgColors
Func _SetFrameColor($Id, $FrameColor)
	For $i = 0 To UBound($Object) - 1
		If $Id = $Object[$i][0] Then
			$Object[$i][6] = $FrameColor
			GUICtrlSetBkColor($Object[$i][15], $FrameColor)
		EndIf
	Next
EndFunc   ;==>_SetFrameColor
Func _SetAllFrameColors($FrameColor)
	For $i = 0 To UBound($Object) - 1
		If $Object[$i][0] <> "" Then
			$Object[$i][6] = $FrameColor
			GUICtrlSetBkColor($Object[$i][15], $FrameColor)
		EndIf
	Next
EndFunc   ;==>_SetAllFrameColors
Func _SetText($Id, $Text)
	For $i = 0 To UBound($Object) - 1
		If $Id = $Object[$i][0] Then
			If $Object[$i][16] <> "CheckBox" Or $Object[$i][16] <> "RadioBox" Then
				$Object[$i][7] = $Text
				GUICtrlSetData($Object[$i][14], $Text)
			EndIf
		EndIf
	Next
EndFunc   ;==>_SetText
Func _SetTextColor($Id, $TextColor)
	For $i = 0 To UBound($Object) - 1
		If $Id = $Object[$i][0] Then
			$Object[$i][8] = $TextColor
			GUICtrlSetColor($Object[$i][14], $TextColor)
		EndIf
	Next
EndFunc   ;==>_SetTextColor
Func _SetAllTextColors($TextColor)
	For $i = 0 To UBound($Object) - 1
		If $Object[$i][0] <> "" Then
			$Object[$i][8] = $TextColor
			GUICtrlSetColor($Object[$i][14], $TextColor)
		EndIf
	Next
EndFunc   ;==>_SetAllTextColors
Func _SetTextFont($Id, $TextFont)
	For $i = 0 To UBound($Object) - 1
		If $Id = $Object[$i][0] Then
			$Object[$i][9] = $TextFont
			GUICtrlSetFont($Object[$i][14], $Object[$i][10], 400, 0, $TextFont)
		EndIf
	Next
EndFunc   ;==>_SetTextFont
Func _SetAllTextFonts($TextFont)
	For $i = 0 To UBound($Object) - 1
		If $Object[$i][0] <> "" Then
			$Object[$i][9] = $TextFont
			GUICtrlSetFont($Object[$i][14], $Object[$i][10], 400, 0, $TextFont)
		EndIf
	Next
EndFunc   ;==>_SetAllTextFonts
Func _SetTextSize($Id, $TextSize)
	For $i = 0 To UBound($Object) - 1
		If $Id = $Object[$i][0] Then
			$Object[$i][10] = $TextSize
			GUICtrlSetFont($Object[$i][14], $TextSize, 400, 0, $Object[$i][9])
		EndIf
	Next
EndFunc   ;==>_SetTextSize
Func _SetAllTextSizes($TextSize)
	For $i = 0 To UBound($Object) - 1
		If $Object[$i][0] <> "" Then
			$Object[$i][10] = $TextSize
			GUICtrlSetFont($Object[$i][14], $TextSize, 400, 0, $Object[$i][9])
		EndIf
	Next
EndFunc   ;==>_SetAllTextSizes
Func _SetTip($Id, $Tip)
	For $i = 0 To UBound($Object) - 1
		If $Id = $Object[$i][0] Then
			$Object[$i][13] = $Tip
			GUICtrlSetTip($Object[$i][14], $Tip)
		EndIf
	Next
EndFunc   ;==>_SetTip
Func _SetState($Id, $State)
	For $i = 0 To UBound($Object) - 1
		If $Id = $Object[$i][0] Then
			If $State = "Checked" Or $State = "Unchecked" Then
				$Object[$i][18] = $State
				If $Object[$i][16] = "CheckBox" Then
					If $State = "Checked" Then GUICtrlSetData($Object[$i][14], "a")
					If $State = "Unchecked" Then GUICtrlSetData($Object[$i][14], "")
				ElseIf $Object[$i][16] = "RadioBox" Then
					If $State = "Checked" Then GUICtrlSetData($Object[$i][14], "g")
				EndIf
			Else
				$Object[$i][19] = $State
				If $State = "Enabled" Then
					GUICtrlSetBkColor($Object[$i][14], $Object[$i][5])
				ElseIf $State = "Disable" Then
					GUICtrlSetBkColor($Object[$i][14], 0xCCCCCC)
				EndIf
			EndIf
		EndIf
	Next
EndFunc   ;==>_SetState
Func _SetBarColor($Id, $BarColor)
	For $i = 0 To UBound($Object) - 1
		If $Id = $Object[$i][0] Then
			$Object[$i][12] = $BarColor
			_SetPosition($Object[$i][0], $Object[$i][11])
		EndIf
	Next
EndFunc   ;==>_SetBarColor
Func _SetAllBarColors($BarColor)
	For $i = 0 To UBound($Object) - 1
		If $Object[$i][0] <> "" Then
			$Object[$i][12] = $BarColor
			_SetPosition($Object[$i][0], $Object[$i][11])
		EndIf
	Next
EndFunc   ;==>_SetAllBarColors
Func _SetPosition($Id, $Position)
	For $i = 0 To UBound($Object) - 1
		If $Id = $Object[$i][0] Then
			If $Object[$i][16] = "ProgressBar" Or $Object[$i][16] = "Slider" Or $Object[$i][16] = "ProgressSlider" Then
				$Object[$i][11] = $Position
				$StringPosition = -2 + $Object[$i][3] / 100 * $Position
				If $Object[$i][16] = "ProgressBar" Or $Object[$i][16] = "ProgressSlider" Then
					If $StringPosition <= 1 Then $StringPosition = 2
					GUICtrlSetPos($Object[$i][17], $Object[$i][1] + 1, $Object[$i][2] + 1, $StringPosition, $Object[$i][4] - 2)
				ElseIf $Object[$i][16] = "Slider" Then
					$WidthPosition = $Object[$i][1] + 2 + $StringPosition - $Object[$i][3] / 5 / 2
					If $WidthPosition > -1 + $Object[$i][1] + $Object[$i][3] - $Object[$i][3] / 5 Then $WidthPosition = -1 + $Object[$i][1] + $Object[$i][3] - $Object[$i][3] / 5
					If $WidthPosition < $Object[$i][1] + 1 Then $WidthPosition = $Object[$i][1] + 1
					GUICtrlSetPos($Object[$i][17], $WidthPosition, $Object[$i][2] + 1, $Object[$i][3] / 5, $Object[$i][4] - 2)
				EndIf
				GUICtrlSetBkColor($Object[$i][17], $Object[$i][12])
				GUICtrlSetBkColor($Object[$i][14], $Object[$i][5])
			EndIf
		EndIf
	Next
EndFunc   ;==>_SetPosition
Func _SetHover($Id)
	Local $MousePosition = MouseGetPos()
	If WinActive($Id) Then
		For $i = 0 To UBound($Object) - 1
			If $MousePosition[0] >= $Object[$i][1] And $MousePosition[0] <= $Object[$i][1] + $Object[$i][3] Then
				If $MousePosition[1] >= $Object[$i][2] And $MousePosition[1] <= $Object[$i][2] + $Object[$i][4] Then
					If _IsPressed(1) = 1 Then
						If $Object[$i][19] <> "Disable" Or $Object[$i][16] = "SwitchButton" Then
							If $Object[$i][16] = "FormBar" Then
								Opt("MouseCoordMode", 1)
								$Pos = WinGetPos($Id)
								Dim $Form[2]
								$Form[0] = $Pos[0]
								$Form[1] = $Pos[1]
								GUICtrlSetBkColor($Object[$i][14], 0xCCCCCC)
								If _IsPressed(1) = 1 Then
									Do
										Local $MousePosition1 = MouseGetPos()
										Sleep(1)
										Local $MousePosition2 = MouseGetPos()
										If $MousePosition1[1] > $MousePosition2[1] Then
											WinMove($Id, "", $Form[0], $Form[1] + $MousePosition2[1] - $MousePosition1[1])
											$Form[1] = $Form[1] + $MousePosition2[1] - $MousePosition1[1]
										EndIf
										If $MousePosition1[1] < $MousePosition2[1] Then
											WinMove($Id, "", $Form[0], $Form[1] + $MousePosition2[1] - $MousePosition1[1])
											$Form[1] = $Form[1] + $MousePosition2[1] - $MousePosition1[1]
										EndIf
										If $MousePosition1[0] > $MousePosition2[0] Then
											WinMove($Id, "", $Form[0] + $MousePosition2[0] - $MousePosition1[0], $Form[1])
											$Form[0] = $Form[0] + $MousePosition2[0] - $MousePosition1[0]
										EndIf
										If $MousePosition1[0] < $MousePosition2[0] Then
											WinMove($Id, "", $Form[0] + $MousePosition2[0] - $MousePosition1[0], $Form[1])
											$Form[0] = $Form[0] + $MousePosition2[0] - $MousePosition1[0]
										EndIf
									Until _IsPressed(1) = 0
									GUICtrlSetBkColor($Object[$i][14], $Object[$i][5])
								EndIf
								Opt("MouseCoordMode", 2)
							EndIf
							If $Object[$i][16] = "Button" Or $Object[$i][16] = "FormCloseButton" Or $Object[$i][16] = "FormMinimizeButton" Or $Object[$i][16] = "CheckBox" Or $Object[$i][16] = "SwitchButton" Or $Object[$i][16] = "RadioBox" Or $Object[$i][16] = "ProgressSlider" Or $Object[$i][16] = "Slider" Then
								If $Object[$i][16] = "CheckBox" Then
									$Read = GUICtrlRead($Object[$i][14])
									If $Read = "" Then
										$Object[$i][18] = "Checked"
										GUICtrlSetData($Object[$i][14], "a")
									Else
										$Object[$i][18] = "Unchecked"
										GUICtrlSetData($Object[$i][14], "")
									EndIf
								ElseIf $Object[$i][16] = "RadioBox" Then
									$Object[$i][18] = "Checked"
									GUICtrlSetData($Object[$i][14], "g")
								EndIf
								$Switch = 0
								Do
									If $Switch = 0 Then
										If $Object[$i][16] = "SwitchButton" Then
											If $Object[$i][19] = "Disable" Then
												_SetState($Object[$i][0], "Enabled")
											Else
												_SetState($Object[$i][0], "Disable")
											EndIf
										EndIf
										If $Object[$i][16] = "ProgressSlider" Or $Object[$i][16] = "Slider" Then
											$Position = $MousePosition[0] - $Object[$i][1]
											$Position = $Position / $Object[$i][3] * 100
											_SetPosition($Object[$i][0], $Position)
										EndIf
										GUICtrlSetBkColor($Object[$i][14], 0xCCCCCC)
										$Switch = 1
									EndIf
									Sleep(40)
								Until _IsPressed(1) = 0
								If $Object[$i][16] <> "SwitchButton" Then
									GUICtrlSetBkColor($Object[$i][14], $Object[$i][5])
								Else
									If _GetState($Object[$i][0]) = "Enabled" Then GUICtrlSetBkColor($Object[$i][14], $Object[$i][5])
								EndIf
							EndIf
						EndIf
					Else
						GUICtrlSetPos($Object[$i][15], $Object[$i][1] - 1, $Object[$i][2] - 1, $Object[$i][3] + 2, $Object[$i][4] + 2)
					EndIf
				Else
					GUICtrlSetPos($Object[$i][15], $Object[$i][1], $Object[$i][2], $Object[$i][3], $Object[$i][4])
				EndIf
			Else
				GUICtrlSetPos($Object[$i][15], $Object[$i][1], $Object[$i][2], $Object[$i][3], $Object[$i][4])
			EndIf
		Next
	EndIf
EndFunc   ;==>_SetHover
Func _GetObjects()
	_ArrayDisplay($Object, "Objects")
EndFunc   ;==>_GetObjects