Added Inactive Border Color

This commit is contained in:
g0nzo83
2024-02-23 21:48:01 +01:00
parent e87013c458
commit 2e63ff4358
6 changed files with 201 additions and 71 deletions

View File

@@ -47,8 +47,8 @@ Class Main_Class extends ThumbWindow {
This.default_JSON := JSON.Load(default_JSON)
This.TrayMenu()
This.MinimizeDelay := This.Minimizeclients_Delay
This.MinimizeDelay := This.Minimizeclients_Delay
;Hotkey to trigger by the script to get permissions t bring a Window in foreground
;Register all posible modifire combinations
prefixArr := ["","^","!", "#", "+", "+^", "+#", "+!", "^#", "^!","#!", "^+!", "^+#", "^#!", "+!#","^+#!"]
@@ -143,7 +143,8 @@ Class Main_Class extends ThumbWindow {
; sets the Border to the active window thumbnail
else if (Ahwnd != This.BorderActive) {
;Shows the Thumbnail on top of other thumbnails
WinSetAlwaysOnTop(1,This.ThumbWindows.%Ahwnd%["Window"].Hwnd )
if (This.ShowThumbnailsAlwaysOnTop)
WinSetAlwaysOnTop(1,This.ThumbWindows.%Ahwnd%["Window"].Hwnd )
This.ShowActiveBorder(Ahwnd)
This.UpdateThumb_AfterActivation(, Ahwnd)

View File

@@ -149,7 +149,7 @@ class Propertys extends TrayMenu {
ClientHighligtBorderthickness {
get => This._JSON["_Profiles"][This.LastUsedProfile]["Thumbnail Settings"]["ClientHighligtBorderthickness"]
set => This._JSON["_Profiles"][This.LastUsedProfile]["Thumbnail Settings"]["ClientHighligtBorderthickness"] := Trim(value, "`n ")
set => This._JSON["_Profiles"][This.LastUsedProfile]["Thumbnail Settings"]["ClientHighligtBorderthickness"] := (Trim(value, "`n ") <= 0 ? 1 : Trim(value, "`n "))
}
ClientHighligtColor {
@@ -180,9 +180,25 @@ class Propertys extends TrayMenu {
ThumbnailTextMargins[var] {
get => This._JSON["_Profiles"][This.LastUsedProfile]["Thumbnail Settings"]["ThumbnailTextMargins"][var]
set => This._JSON["_Profiles"][This.LastUsedProfile]["Thumbnail Settings"]["ThumbnailTextMargins"][var] := Trim(value, "`n ")
}
InactiveClientBorderthickness {
get {
if ( !This._JSON["_Profiles"][This.LastUsedProfile]["Thumbnail Settings"].Has("InactiveClientBorderthickness") )
This._JSON["_Profiles"][This.LastUsedProfile]["Thumbnail Settings"]["InactiveClientBorderthickness"] := "2"
return This._JSON["_Profiles"][This.LastUsedProfile]["Thumbnail Settings"]["InactiveClientBorderthickness"]
}
set => This._JSON["_Profiles"][This.LastUsedProfile]["Thumbnail Settings"]["InactiveClientBorderthickness"] := (Trim(value, "`n ") <= 0 ? 1 : Trim(value, "`n "))
}
InactiveClientBorderColor {
get {
if ( !This._JSON["_Profiles"][This.LastUsedProfile]["Thumbnail Settings"].Has("InactiveClientBorderColor") )
This._JSON["_Profiles"][This.LastUsedProfile]["Thumbnail Settings"]["InactiveClientBorderColor"] := "#8A8A8A"
return convertToHex(This._JSON["_Profiles"][This.LastUsedProfile]["Thumbnail Settings"]["InactiveClientBorderColor"])
}
set => This._JSON["_Profiles"][This.LastUsedProfile]["Thumbnail Settings"]["InactiveClientBorderColor"] := convertToHex(Trim(value, "`n "))
}
;########################
;## Profile ClientSettings
@@ -190,7 +206,7 @@ class Propertys extends TrayMenu {
CustomColorsGet[CName?] {
get {
name := "", nameIndex := 0, ctext := "", cBorder := ""
name := "", nameIndex := 0, ctext := "", cBorder := "", cIABorder := ""
for index, names in This._JSON["_Profiles"][This.LastUsedProfile]["Custom Colors"]["cColors"]["CharNames"] {
if (names = CName) {
nameIndex := index
@@ -207,8 +223,10 @@ class Propertys extends TrayMenu {
}
if (This._JSON["_Profiles"][This.LastUsedProfile]["Custom Colors"]["cColors"]["TextColor"].Length >= nameIndex)
ctext := This._JSON["_Profiles"][This.LastUsedProfile]["Custom Colors"]["cColors"]["TextColor"][nameIndex]
if (This._JSON["_Profiles"][This.LastUsedProfile]["Custom Colors"]["cColors"]["IABordercolor"].Length >= nameIndex)
cIABorder := This._JSON["_Profiles"][This.LastUsedProfile]["Custom Colors"]["cColors"]["IABordercolor"][nameIndex]
}
return Map("Char", name, "Border", cBorder, "Text", ctext)
return Map("Char", name, "Border", cBorder, "Text", ctext, "IABorder", cIABorder)
}
}
@@ -216,6 +234,7 @@ class Propertys extends TrayMenu {
IndexcChars => This._JSON["_Profiles"][This.LastUsedProfile]["Custom Colors"]["cColors"]["CharNames"].Length
IndexcBorder => This._JSON["_Profiles"][This.LastUsedProfile]["Custom Colors"]["cColors"]["Bordercolor"].Length
IndexcText => This._JSON["_Profiles"][This.LastUsedProfile]["Custom Colors"]["cColors"]["TextColor"].Length
IndexcIABorders => This._JSON["_Profiles"][This.LastUsedProfile]["Custom Colors"]["cColors"]["IABordercolor"].Length
CustomColors_AllCharNames {
get {
@@ -253,8 +272,8 @@ class Propertys extends TrayMenu {
tempvar := []
ListChars := StrSplit(value, "`n")
for k, v in ListChars {
chars := RegExReplace(convertToHex(Trim(v, "`n ")), ".*:\s*", "")
tempvar.Push(chars)
chars := RegExReplace(Trim(v, "`n "), ".*:\s*", "")
tempvar.Push(convertToHex(chars))
}
This._JSON["_Profiles"][This.LastUsedProfile]["Custom Colors"]["cColors"]["Bordercolor"] := tempvar
}
@@ -274,13 +293,39 @@ class Propertys extends TrayMenu {
tempvar := []
ListChars := StrSplit(value, "`n")
for k, v in ListChars {
chars := RegExReplace(convertToHex(Trim(v, "`n ")), ".*:\s*", "")
tempvar.Push(chars)
chars := RegExReplace(Trim(v, "`n "), ".*:\s*", "")
tempvar.Push(convertToHex(chars))
}
This._JSON["_Profiles"][This.LastUsedProfile]["Custom Colors"]["cColors"]["TextColor"] := tempvar
}
}
CustomColors_IABorder_Colors {
get {
names := ""
if (!This._JSON["_Profiles"][This.LastUsedProfile]["Custom Colors"]["cColors"].Has("IABordercolor")) {
This._JSON["_Profiles"][This.LastUsedProfile]["Custom Colors"]["cColors"]["IABordercolor"] := ["FFFFFF"]
SetTimer(This.Save_Settings_Delay_Timer, -200)
}
for k, v in This._JSON["_Profiles"][This.LastUsedProfile]["Custom Colors"]["cColors"]["IABordercolor"] {
if (A_Index < This._JSON["_Profiles"][This.LastUsedProfile]["Custom Colors"]["cColors"]["IABordercolor"].Length)
names .= k ": " v "`n"
else
names .= k ": " v
}
return names
}
set {
tempvar := []
ListChars := StrSplit(value, "`n")
for k, v in ListChars {
chars := RegExReplace(Trim(v, "`n "), ".*:\s*", "")
tempvar.Push(convertToHex(chars))
}
This._JSON["_Profiles"][This.LastUsedProfile]["Custom Colors"]["cColors"]["IABordercolor"] := tempvar
}
}
CustomColorsActive {
get => This._JSON["_Profiles"][This.LastUsedProfile]["Custom Colors"]["cColorActive"]
@@ -446,6 +491,7 @@ class Propertys extends TrayMenu {
}
This.Thumbnail_visibility := Obj
SetTimer(This.Save_Settings_Delay_Timer, -200)
This.NeedRestart := 1
;This.LV_Item := Item
; ddd := GuiCtrlObj.GetText(Item)
; ToolTip(Item ", " ddd " -, " Checked)
@@ -534,7 +580,8 @@ class Propertys extends TrayMenu {
FileAppend(JSON.Dump(This._JSON, , " "), "EVE-X-Preview.json")
This.SelectProfile_DDL.Delete()
This.SelectProfile_DDL.Add(This.Profiles_to_Array())
This.LastUsedProfile := "Default"
ControlChooseString(Obj.value, This.SelectProfile_DDL, "EVE-X-Preview - Settings")
This.LastUsedProfile := Obj.value
Return
}
Save_ThumbnailPossitions() {

View File

@@ -3,9 +3,6 @@
;if settings got chnaged which require a restart to apply
This.NeedRestart := 0
;MsgBox(This.CustomColorsGet["Example Char"]["Char"])
SetControlDelay(-1)
This.S_Gui := Gui("+OwnDialogs +MinimizeBox -Resize -MaximizeBox -DPIScale SysMenu +MinSize500x250")
This.S_Gui.Title := "EVE-X-Preview - Settings"
@@ -54,7 +51,7 @@
else {
for _, ob in v
ob.Visible := 0
}
}
}
This.S_Gui.Show("AutoSize")
}
@@ -91,7 +88,7 @@
v.Visible := 1
}
}
}
}
}
else {
for _, Ctrl in Controls {
@@ -100,12 +97,10 @@
}
}
if (This.Profiles.Count = 1 && This.SelectProfile_DDL.Text = "Default")
MsgBox("you must first create a profile to change the settings")
MsgBox("you need create a profile first to change the settings")
}
This.S_Gui.Show("AutoSize")
}
}
@@ -254,7 +249,6 @@
;Sets all controls invisible at beginning
for k, v in This.S_Gui.Controls.Profile_Settings
v.Visible := 0
}
ClientSettings_Ctrl(visible?) {
@@ -297,21 +291,21 @@
}
}
;TODO Needs to be implemented - Add Propertys
; User defined colurs per Client
; User defined colors per Client
Custom_ColorsCtrl() {
This.S_Gui.Controls.Profile_Settings.PsDDL["Custom Colors"] := [], CustomColors := []
CustomColors.Push This.S_Gui.Add("GroupBox", "x20 y80 h480 w500 Section", "")
CustomColors.Push This.S_Gui.Add("GroupBox", "x20 y80 h480 w565 Section", "")
CustomColors.Push This.S_Gui.Add("Text", " xp+25 yp+140 Section ", "Custom Colors Active On/Off")
CustomColors.Push This.S_Gui.Add("Text", " x70 yp+40 ", "Character name")
CustomColors.Push This.S_Gui.Add("Text", " xp+150 yp ", "Border Color")
CustomColors.Push This.S_Gui.Add("Text", " xp+130 yp ", "Text Color")
CustomColors.Push This.S_Gui.Add("Text", " xp+25 yp+140 Section ", "Custom Colors Active - On/Off")
CustomColors.Push This.S_Gui.Add("Text", " x35 yp+40 ", "Character Name:")
CustomColors.Push This.S_Gui.Add("Text", " xp+155 yp ", "Active Border Color:")
CustomColors.Push This.S_Gui.Add("Text", " xp+135 yp ", "Text Color:")
CustomColors.Push This.S_Gui.Add("Text", " xp+125 yp ", "Inactive Border Color:")
CustomColors.Push This.S_Gui.Add("CheckBox", " xs+200 ys vCcoloractive Checked" This.CustomColorsActive, " ON / Off")
This.S_Gui["Ccoloractive"].OnEvent("Click", (obj, *) => Cclors_Eventhandler(obj))
CustomColors.Push This.S_Gui.Add("Edit", " x60 yp+60 w150 h250 -Wrap vCchars", This.CustomColors_AllCharNames)
CustomColors.Push This.S_Gui.Add("Edit", " x30 yp+60 w150 h250 -Wrap vCchars", This.CustomColors_AllCharNames)
This.S_Gui["Cchars"].OnEvent("Change", (obj, *) => Cclors_Eventhandler(obj))
CustomColors.Push This.S_Gui.Add("Edit", " x+10 yp w120 hp -Wrap vCBorderColor", This.CustomColors_AllBColors)
@@ -320,6 +314,8 @@
CustomColors.Push This.S_Gui.Add("Edit", " x+10 yp wp hp -Wrap vCTextColor", This.CustomColors_AllTColors)
This.S_Gui["CTextColor"].OnEvent("Change", (obj, *) => Cclors_Eventhandler(obj))
CustomColors.Push This.S_Gui.Add("Edit", " x+10 yp wp hp -Wrap vIABorderColor", This.CustomColors_IABorder_Colors)
This.S_Gui["IABorderColor"].OnEvent("Change", (obj, *) => Cclors_Eventhandler(obj))
This.S_Gui.Controls.Profile_Settings.PsDDL["Custom Colors"] := CustomColors
for k, v in This.S_Gui.Controls.Profile_Settings.PsDDL["Custom Colors"]
@@ -356,11 +352,19 @@
}
This.NeedRestart := 1
}
else if (obj.Name = "IABorderColor") {
indexOld := This.IndexcText
This.CustomColors_IABorder_Colors := obj.value
if (indexOld < This.IndexcText) {
obj.value := This.CustomColors_IABorder_Colors
ControlSend("^{End}", obj.Hwnd)
}
This.NeedRestart := 1
}
SetTimer(This.Save_Settings_Delay_Timer, -200)
}
}
Hotkey_GroupsCtrl() {
This.S_Gui.Controls.Profile_Settings.PsDDL["Hotkey Groups"] := [], Hotkey_Groups := []
@@ -441,8 +445,6 @@
ForwardHKObj.value := This.Hotkey_Groups[ddlObj.Text]["ForwardsHotkey"], ForwardHKObj.Enabled := 1
BackwardHKObj.value := This.Hotkey_Groups[ddlObj.Text]["BackwardsHotkey"], BackwardHKObj.Enabled := 1
}
}
SaveHKGroupList(obj) {
@@ -524,7 +526,7 @@
ThumbnailSettings_Ctrl() {
This.S_Gui.Controls.Profile_Settings.PsDDL["Thumbnail Settings"] := [], ThumbnailSettings := []
ThumbnailSettings.Push This.S_Gui.Add("GroupBox", "x20 y80 h530 w500 Section", "")
ThumbnailSettings.Push This.S_Gui.Add("GroupBox", "x20 y80 h580 w500 Section", "")
ThumbnailSettings.Push This.S_Gui.Add("Text", "xp+15 yp+140 Section", "Show Thumbnail Text Overlay:")
ThumbnailSettings.Push This.S_Gui.Add("Text", " xs y+15 ", "Thumbnail Text Color:")
@@ -532,11 +534,14 @@
ThumbnailSettings.Push This.S_Gui.Add("Text", " xs y+15 ", "Thumbnail Text Font:")
ThumbnailSettings.Push This.S_Gui.Add("Text", " xs y+15 ", "Thumbnail Text Margins:")
ThumbnailSettings.Push This.S_Gui.Add("Text", " xs y+15 ", "Client Highligt Color:")
ThumbnailSettings.Push This.S_Gui.Add("Text", " xs y+15 ", "Client Highligt Border thickness:")
ThumbnailSettings.Push This.S_Gui.Add("Text", " xs y+15 ", "Client Highligt Border Thickness:")
ThumbnailSettings.Push This.S_Gui.Add("Text", " xs y+15 ", "Show Client Highlight Border:")
ThumbnailSettings.Push This.S_Gui.Add("Text", " xs y+15 ", "Hide Thumbnails On Lost Focus:")
ThumbnailSettings.Push This.S_Gui.Add("Text", " xs y+15 ", "Thumbnail Opacity:")
ThumbnailSettings.Push This.S_Gui.Add("Text", " xs y+15 ", "Show Thumbnails AlwaysOnTop:")
ThumbnailSettings.Push This.S_Gui.Add("Text", " xs y+15", "Show All Borders:")
ThumbnailSettings.Push This.S_Gui.Add("Text", " xs y+15", "Inactive Client Border Thickness:")
ThumbnailSettings.Push This.S_Gui.Add("Text", " xs y+15", "Inactive Client Border Color:")
ThumbnailSettings.Push This.S_Gui.Add("CheckBox", "xs+230 ys Section vShowThumbnailTextOverlay Checked" This.ShowThumbnailTextOverlay, "On/Off")
This.S_Gui["ShowThumbnailTextOverlay"].OnEvent("Click", (obj, *) => ThumbnailSettings_EventHandler(obj))
@@ -563,7 +568,6 @@
ThumbnailSettings.Push This.S_Gui.Add("Text", " x+5 yp+3 ", "Hex or RGB")
This.S_Gui["ClientHighligtColor"].OnEvent("Change", (obj, *) => ThumbnailSettings_EventHandler(obj))
ThumbnailSettings.Push This.S_Gui.Add("Text", " xs y+15 ", "px:")
ThumbnailSettings.Push This.S_Gui.Add("Edit", "x+5 yp-3 w30 vClientHighligtBorderthickness -Wrap", This.ClientHighligtBorderthickness)
This.S_Gui["ClientHighligtBorderthickness"].OnEvent("Change", (obj, *) => ThumbnailSettings_EventHandler(obj))
@@ -581,6 +585,16 @@
ThumbnailSettings.Push This.S_Gui.Add("CheckBox", "xs y+12 vShowThumbnailsAlwaysOnTop Checked" This.ShowThumbnailsAlwaysOnTop, "On/Off")
This.S_Gui["ShowThumbnailsAlwaysOnTop"].OnEvent("Click", (obj, *) => ThumbnailSettings_EventHandler(obj))
ThumbnailSettings.Push This.S_Gui.Add("CheckBox", "xs y+15 vShowAllBorders Checked" This.ShowAllColoredBorders, "On/Off")
This.S_Gui["ShowAllBorders"].OnEvent("Click", (obj, *) => ThumbnailSettings_EventHandler(obj))
ThumbnailSettings.Push This.S_Gui.Add("Text", " xs y+12 ", "px:")
ThumbnailSettings.Push This.S_Gui.Add("Edit", "x+5 yp-3 w30 vInactiveClientBorderthickness -Wrap", This.InactiveClientBorderthickness)
This.S_Gui["InactiveClientBorderthickness"].OnEvent("Change", (obj, *) => ThumbnailSettings_EventHandler(obj))
ThumbnailSettings.Push This.S_Gui.Add("Edit", "xs y+5 w120 vInactiveClientBorderColor -Wrap", This.InactiveClientBorderColor)
ThumbnailSettings.Push This.S_Gui.Add("Text", " x+5 yp+3 ", "Hex or RGB")
This.S_Gui["InactiveClientBorderColor"].OnEvent("Change", (obj, *) => ThumbnailSettings_EventHandler(obj))
This.S_Gui.Controls.Profile_Settings.PsDDL["Thumbnail Settings"] := ThumbnailSettings
for k, v in This.S_Gui.Controls.Profile_Settings.PsDDL["Thumbnail Settings"] {
@@ -635,6 +649,20 @@
This.ShowThumbnailsAlwaysOnTop := obj.value
This.NeedRestart := 1
}
else if (obj.Name = "ShowAllBorders") {
This.ShowAllColoredBorders := obj.value
This.S_Gui["InactiveClientBorderthickness"].Enabled := This.ShowAllColoredBorders
This.S_Gui["InactiveClientBorderColor"].Enabled := This.ShowAllColoredBorders
This.NeedRestart := 1
}
else if (obj.Name = "InactiveClientBorderColor") {
This.InactiveClientBorderColor := obj.value
This.NeedRestart := 1
}
else if (obj.Name = "InactiveClientBorderthickness") {
This.InactiveClientBorderthickness := obj.value
This.NeedRestart := 1
}
SetTimer(This.Save_Settings_Delay_Timer, -200)
}
@@ -657,15 +685,12 @@
}
}
This.Tv_LV.ModifyCol(1, 150), This.Tv_LV.ModifyCol(2, 115)
This.Tv_LV.OnEvent("ItemCheck", ObjBindMethod(This, "_Tv_LVSelectedRow"))
This.S_Gui.Controls.Profile_Settings.PsDDL["Thumbnail Visibility"] := Thumbnail_visibility
for k, v in This.S_Gui.Controls.Profile_Settings.PsDDL["Thumbnail Visibility"]
v.Visible := 0
}
On_WM_MOUSEMOVE(wParam, lParam, msg, Hwnd) {
@@ -742,7 +767,7 @@
This.S_Gui["Cchars"].value := This.CustomColors_AllCharNames
This.S_Gui["CBorderColor"].value := This.CustomColors_AllBColors
This.S_Gui["CTextColor"].value := This.CustomColors_AllTColors
This.S_Gui["IABorderColor"].value := This.CustomColors_IABorder_Colors
;Hotkey Groups
This.S_Gui["HotkeyGroupDDL"].Delete()
@@ -775,6 +800,9 @@
This.S_Gui["HideThumbnailsOnLostFocus"].value := This.HideThumbnailsOnLostFocus
This.S_Gui["ThumbnailOpacity"].value := IntegerToPercentage(This.ThumbnailOpacity)
This.S_Gui["ShowThumbnailsAlwaysOnTop"].value := This.ShowThumbnailsAlwaysOnTop
This.S_Gui["ShowAllBorders"].value := This.ShowAllColoredBorders
This.S_Gui["InactiveClientBorderthickness"].value := This.InactiveClientBorderthickness
This.S_Gui["InactiveClientBorderColor"].value := This.InactiveClientBorderColor
;Thumbnail Visibility
This.S_Gui["Visibility_List"].Delete()
@@ -795,6 +823,8 @@
This.S_Gui["ForwardsKey"].Enabled := 0
This.S_Gui["BackwardsdKey"].Enabled := 0
}
This.S_Gui["InactiveClientBorderthickness"].Enabled := This.ShowAllColoredBorders
This.S_Gui["InactiveClientBorderColor"].Enabled := This.ShowAllColoredBorders
}
@@ -823,8 +853,6 @@
else
return []
}
}
;Class End

View File

@@ -4,9 +4,8 @@
Class ThumbWindow extends Propertys {
Create_Thumbnail(Win_Hwnd, Win_Title) {
ThumbObj := Map()
; Remove the "EVE -" part from the Titel to show only the Name and if no Name is present yet show nothing
ThumbObj["Window"] := Gui("+Owner +LastFound AlwaysOnTop -Caption +ToolWindow -DPIScale +E0x08000000", Win_Title) ;WS_EX_NOACTIVATE -> +E0x08000000
ThumbObj["Window"] := Gui("+Owner +LastFound -Caption +ToolWindow -DPIScale +E0x08000000 " (This.ShowThumbnailsAlwaysOnTop ? "AlwaysOnTop" : "-AlwaysOnTop") , Win_Title) ;WS_EX_NOACTIVATE -> +E0x08000000
ThumbObj["Window"].OnEvent("Close", GUI_Close_Button)
; The Backcolor which is visible when no thumbnail is displayed
@@ -54,7 +53,7 @@ Class ThumbWindow extends Propertys {
;#### Create the Thumbnail TextOverlay
;####
ThumbObj["TextOverlay"] := Gui("AlwaysOnTop +LastFound -Caption +E0x20 +Owner" ThumbObj["Window"].Hwnd, Win_Title) ; WS_EX_CLICKTHROUGH -> +E0x20
ThumbObj["TextOverlay"] := Gui("+LastFound -Caption +E0x20 +Owner" ThumbObj["Window"].Hwnd " " (This.ShowThumbnailsAlwaysOnTop ? "AlwaysOnTop" : "-AlwaysOnTop"), Win_Title) ; WS_EX_CLICKTHROUGH -> +E0x20
ThumbObj["TextOverlay"].MarginX := This.ThumbnailTextMargins["x"]
ThumbObj["TextOverlay"].MarginY := This.ThumbnailTextMargins["y"]
@@ -98,7 +97,6 @@ Class ThumbWindow extends Propertys {
This.ThumbnailStartLocation["height"]
)
;#### Create Borders
;####
border_thickness := This.ClientHighligtBorderthickness
@@ -107,7 +105,7 @@ Class ThumbWindow extends Propertys {
ThumbObj["Border"] := Gui("-Caption +E0x20 +Owner" ThumbObj["Window"].Hwnd)
CheckError := 0
if (This.CustomColorsActive) {
if (This.CustomColorsActive && !This.ShowAllColoredBorders) {
if (This.CustomColorsGet[Win_Title]["Char"] != "" && This.CustomColorsGet[Win_Title]["Border"] != "") {
try {
ThumbObj["Border"].BackColor := This.CustomColorsGet[Win_Title]["Border"]
@@ -120,9 +118,28 @@ Class ThumbWindow extends Propertys {
else
CheckError := 1
}
else if (This.ShowAllColoredBorders) {
if (This.CustomColorsActive && This.CustomColorsGet[Win_Title]["Char"] != "" && This.CustomColorsGet[Win_Title]["IABorder"] != "") {
try {
ThumbObj["Border"].BackColor := This.CustomColorsGet[Win_Title]["IABorder"]
}
catch as e {
CheckError := 1
MsgBox("Error: Client Highligt Color are wrong´nin: Profile Settings - " This.LastUsedProfile " - Custom Colors - " Win_Title "`nUse the following syntax:`n HEX =>: #FFFFFF or 0xFFFFFF or FFFFFF`nRGB =>: 255, 255, 255 or rgb(255, 255, 255)")
}
}
else {
try {
ThumbObj["Border"].BackColor := This.InactiveClientBorderColor
}
catch as e {
CheckError := 1
MsgBox("Error: Client Highligt Color are wrong´nin: Profile Settings - " This.LastUsedProfile " Thumbnail Settings - Inactive Border Color `nUse the following syntax:`n HEX =>: #FFFFFF or 0xFFFFFF or FFFFFF`nRGB =>: 255, 255, 255 or rgb(255, 255, 255)")
}
}
}
if (CheckError || !This.CustomColorsActive) {
if ((CheckError) || (!This.CustomColorsActive && !This.ShowAllColoredBorders)) {
try {
ThumbObj["Border"].BackColor := border_color
}
@@ -144,8 +161,13 @@ Class ThumbWindow extends Propertys {
}
}
BorderSize(DesinationHwnd, BorderHwnd) {
border_thickness := This.ClientHighligtBorderthickness
BorderSize(DesinationHwnd, BorderHwnd, thickness?) {
if (IsSet(thickness))
border_thickness := thickness
else if (This.ShowAllColoredBorders)
border_thickness := This.InactiveClientBorderthickness
else
border_thickness := This.ClientHighligtBorderthickness
WinGetPos(&dx, &dy, &dw, &dh, DesinationHwnd)
@@ -168,7 +190,6 @@ Class ThumbWindow extends Propertys {
WinSetRegion(outerX "-" outerY " " outerX2 "-" outerY " " outerX2 "-" outerY2 " " outerX "-" outerY2 " " outerX "-" outerY " " innerX "-" innerY " " innerX2 "-" innerY " " innerX2 "-" innerY2 " " innerX "-" innerY2 " " innerX "-" innerY, BorderHwnd)
return { x: newX, y: newY, w: newW, h: newH }
}
;## Moves the Window by holding down the Right Mousebutton
@@ -270,15 +291,12 @@ Class ThumbWindow extends Propertys {
;WinMove(,,Wn,Wh, v.Hwnd )
continue
}
}
This.BorderSize(window, border)
}
This.Update_Thumb()
}
}
}
; Snaps the window to the nearest corner of another window if it is within SnapRange in pixels
@@ -388,24 +406,58 @@ Class ThumbWindow extends Propertys {
ThumbObj["Thumbnail"].Update()
}
}
}
ShowActiveBorder(EVEHwnd?, ThumbHwnd?) {
if (IsSet(EVEHwnd) && This.ShowClientHighlightBorder) {
if (This.ThumbWindows.HasProp(EVEHwnd) && !This.ShowAllColoredBorders) {
for EW_Hwnd, Objs in This.ThumbWindows.OwnProps() {
for names, GuiObj in Objs {
if (names = "Border") {
If (IsSet(EVEHwnd) && This.ThumbWindows.HasProp(EVEHwnd)) {
Win_Title := This.CleanTitle(WinGetTitle("Ahk_Id " EVEHwnd))
for EW_Hwnd, Objs in This.ThumbWindows.OwnProps() {
for names, GuiObj in Objs {
if (names = "Border") {
if ((!This.ShowAllColoredBorders && !This.ShowClientHighlightBorder) || (!This.ShowAllColoredBorders && This.ShowClientHighlightBorder)) {
GuiObj.Show("Hide")
}
else {
if (This.ThumbWindows.%EW_Hwnd%["Window"].Name = Win_Title)
continue
else if (!This.CustomColorsActive && This.ShowAllColoredBorders) {
try
This.ThumbWindows.%EW_Hwnd%["Border"].BackColor := This.InactiveClientBorderColor
catch
This.ThumbWindows.%EW_Hwnd%["Border"].BackColor := "8A8A8A"
This.BorderSize(This.ThumbWindows.%EW_Hwnd%["Window"].Hwnd, This.ThumbWindows.%EW_Hwnd%["Border"].Hwnd, This.InactiveClientBorderthickness)
}
else if (This.CustomColorsActive && This.ShowAllColoredBorders) {
title := This.CleanTitle(WinGetTitle("Ahk_Id " EW_Hwnd))
if (This.CustomColorsGet[title]["Char"] != "" && This.CustomColorsGet[title]["IABorder"] != "") {
try
This.ThumbWindows.%EW_Hwnd%["Border"].BackColor := This.CustomColorsGet[title]["IABorder"]
catch
This.ThumbWindows.%EW_Hwnd%["Border"].BackColor := "8A8A8A"
}
else {
try
This.ThumbWindows.%EW_Hwnd%["Border"].BackColor := This.InactiveClientBorderColor
catch
This.ThumbWindows.%EW_Hwnd%["Border"].BackColor := "8A8A8A"
}
This.BorderSize(This.ThumbWindows.%EW_Hwnd%["Window"].Hwnd, This.ThumbWindows.%EW_Hwnd%["Border"].Hwnd, This.InactiveClientBorderthickness)
}
}
}
}
}
if !(This.Thumbnail_visibility.Has(This.CleanTitle(WinGetTitle("Ahk_Id " EVEHwnd)))) {
Show_Border := This.ThumbWindows.%EVEHwnd%["Border"]
Show_Border.Show("NoActivate")
if (!This.Thumbnail_visibility.Has(Win_Title) && This.ShowClientHighlightBorder) {
if (This.CustomColorsActive && This.CustomColorsGet[Win_Title]["Char"] != "" && This.CustomColorsGet[Win_Title]["Border"] != "") {
This.ThumbWindows.%EVEHwnd%["Border"].BackColor := This.CustomColorsGet[Win_Title]["Border"]
This.BorderSize(This.ThumbWindows.%EVEHwnd%["Window"].Hwnd, This.ThumbWindows.%EVEHwnd%["Border"].Hwnd, This.ClientHighligtBorderthickness)
}
else {
This.ThumbWindows.%EVEHwnd%["Border"].BackColor := This.ClientHighligtColor
This.BorderSize(This.ThumbWindows.%EVEHwnd%["Window"].Hwnd, This.ThumbWindows.%EVEHwnd%["Border"].Hwnd, This.ClientHighligtBorderthickness)
}
This.ThumbWindows.%EVEHwnd%["Border"].Show("NoActivate")
}
}
}