diff --git a/EVE-X-Preview.json b/EVE-X-Preview.json index 5032029..727326e 100644 --- a/EVE-X-Preview.json +++ b/EVE-X-Preview.json @@ -269,10 +269,15 @@ }, "global_Settings":{ "CharScreenHotkey":"", + "CharacterNameOverlayHotkeyColor":"AAAAAA", + "CharacterNameOverlayHotkeySize":14, "CharacterNameOverlayPosition":{ - "x":1075, - "y":7 + "x":1207, + "y":27 }, + "CharacterNameOverlayTextBold":1, + "CharacterNameOverlayTextColor":"FFFFFF", + "CharacterNameOverlayTextSize":24, "DisableLiveThumbnail":1, "Exclude_Character_Hotkey":"", "Global_Hotkeys":1, diff --git a/Lib/DefaultJSON.ahk b/Lib/DefaultJSON.ahk index 59abe69..e5d80b8 100644 --- a/Lib/DefaultJSON.ahk +++ b/Lib/DefaultJSON.ahk @@ -25,7 +25,12 @@ "CharacterNameOverlayPosition": { "x": 0, "y": 20 - } + }, + "CharacterNameOverlayTextSize": 24, + "CharacterNameOverlayTextColor": "FFFFFF", + "CharacterNameOverlayTextBold": true, + "CharacterNameOverlayHotkeySize": 14, + "CharacterNameOverlayHotkeyColor": "AAAAAA" }, "_Profiles": { "Default": { diff --git a/src/Main_Class.ahk b/src/Main_Class.ahk index d9ba5c1..1a13961 100644 --- a/src/Main_Class.ahk +++ b/src/Main_Class.ahk @@ -108,7 +108,7 @@ ;The Main Timer who checks for new EVE Windows or closes Windows SetTimer(ObjBindMethod(This, "HandleMainTimer"), 50) - SetTimer(ObjBindMethod(This, "UpdateCharacterNameOverlay"), 500) + SetTimer(ObjBindMethod(This, "UpdateCharacterNameOverlay"), 100) This.Save_Settings_Delay_Timer := ObjBindMethod(This, "SaveJsonToFile") ;Timer property to remove Thumbnails for closed EVE windows This.DestroyThumbnails := ObjBindMethod(This, "EvEWindowDestroy") @@ -130,14 +130,23 @@ This.CharacterNameOverlay.BackColor := "040101" This.CharacterNameOverlay.MarginX := 20 This.CharacterNameOverlay.MarginY := 10 - This.CharacterNameOverlay.SetFont("s24 w700 cFFFFFF", "Arial") - nameCtrl := This.CharacterNameOverlay.Add("Text", "vCharacterNameText w300 Center", "") + + textWeight := This.CharacterNameOverlayTextBold ? "w700" : "w400" + This.CharacterNameOverlay.SetFont("s" This.CharacterNameOverlayTextSize " " textWeight " c" This.CharacterNameOverlayTextColor, "Arial") + nameCtrl := This.CharacterNameOverlay.Add("Text", "vCharacterNameText", "") nameCtrl.Opt("+Background040101") nameCtrl.OnEvent("Click", ObjBindMethod(This, "CharacterNameOverlay_Drag")) - This.CharacterNameOverlay.SetFont("s14 w400 cAAAAAA", "Arial") - hotkeyCtrl := This.CharacterNameOverlay.Add("Text", "vCharacterHotkeyText w300 Center", "") + + This.CharacterNameOverlay.SetFont("s" This.CharacterNameOverlayHotkeySize " w400 c" This.CharacterNameOverlayHotkeyColor, "Arial") + hotkeyCtrl := This.CharacterNameOverlay.Add("Text", "vCharacterHotkeyText x+0 w100", "") hotkeyCtrl.Opt("+Background040101") hotkeyCtrl.OnEvent("Click", ObjBindMethod(This, "CharacterNameOverlay_Drag")) + + This.CharacterNameOverlay.SetFont("s14 w400 c" This.CharacterNameOverlayTextColor, "Arial") + autoCycleCtrl := This.CharacterNameOverlay.Add("Text", "vAutoCycleIndicator w30", "") + autoCycleCtrl.Opt("+Background040101") + autoCycleCtrl.OnEvent("Click", ObjBindMethod(This, "CharacterNameOverlay_Drag")) + WinSetTransColor("040101", This.CharacterNameOverlay.Hwnd) This.CharacterNameOverlayX := This.CharacterNameOverlayPosition["x"] ? This.CharacterNameOverlayPosition["x"] : A_ScreenWidth - 340 This.CharacterNameOverlayY := This.CharacterNameOverlayPosition["y"] ? This.CharacterNameOverlayPosition["y"] : 20 @@ -154,22 +163,40 @@ if (activeTitle != "" && activeTitle != This.CharacterNameOverlayLastText) { This.CharacterNameOverlayLastText := activeTitle This.CharacterNameOverlay["CharacterNameText"].Text := activeTitle - - hotkeyText := "" - hotkeyValue := This._Hotkeys[activeTitle] - if (hotkeyValue && hotkeyValue != "" && hotkeyValue != 0) { - hotkeyText := hotkeyValue - } - This.CharacterNameOverlay["CharacterHotkeyText"].Text := hotkeyText - - This.CharacterNameOverlay.Show("w340 NoActivate") - if (This.CharacterNameOverlayX = 0) - This.CharacterNameOverlayX := A_ScreenWidth - 340 - WinMove(This.CharacterNameOverlayX, This.CharacterNameOverlayY, , , This.CharacterNameOverlay.Hwnd) - if (!GetKeyState("LButton", "P")) - WinSetExStyle("+0x20", This.CharacterNameOverlay.Hwnd) - return } + + hotkeyText := "" + hotkeyValue := This._Hotkeys[activeTitle] + if (hotkeyValue && hotkeyValue != "" && hotkeyValue != 0) { + hotkeyText := hotkeyValue + } + This.CharacterNameOverlay["CharacterHotkeyText"].Text := hotkeyText + + autoCycleActive := false + for groupIdx, Arr in This.AutoForwardGroups { + if (This.AutoForwardEnabled[groupIdx]) { + autoCycleActive := true + break + } + } + This.CharacterNameOverlay["AutoCycleIndicator"].Text := autoCycleActive ? "♲" : "" + + nameWidth := 20 + (StrLen(activeTitle) * (This.CharacterNameOverlayTextSize * 0.6)) + if (nameWidth < 100) + nameWidth := 100 + This.CharacterNameOverlay["CharacterNameText"].Move(, , nameWidth) + ControlGetPos(&nameX, , &nameW, , This.CharacterNameOverlay["CharacterNameText"]) + This.CharacterNameOverlay["CharacterHotkeyText"].Move(nameX + nameW, , , ) + ControlGetPos(&hotkeyX, &hotkeyY, &hotkeyW, &hotkeyH, This.CharacterNameOverlay["CharacterHotkeyText"]) + ControlGetPos(, , , &nameH, This.CharacterNameOverlay["CharacterNameText"]) + This.CharacterNameOverlay["AutoCycleIndicator"].Move(hotkeyX, hotkeyY + hotkeyH, , ) + + This.CharacterNameOverlay.Show("AutoSize NoActivate") + if (This.CharacterNameOverlayX = 0) + This.CharacterNameOverlayX := A_ScreenWidth - 340 + WinMove(This.CharacterNameOverlayX, This.CharacterNameOverlayY, , , This.CharacterNameOverlay.Hwnd) + if (!GetKeyState("LButton", "P")) + WinSetExStyle("+0x20", This.CharacterNameOverlay.Hwnd) } else if (This.CharacterNameOverlayLastText != "") { This.CharacterNameOverlayLastText := "" This.CharacterNameOverlay.Show("Hide") @@ -189,7 +216,7 @@ WinGetPos(&wx, &wy, &ww, &wh, This.CharacterNameOverlay.Hwnd) if (mx >= wx && mx <= wx + ww && my >= wy && my <= wy + wh) { - if (GetKeyState("LButton", "P")) { + if (GetKeyState("RButton", "P")) { WinSetExStyle("-0x20", This.CharacterNameOverlay.Hwnd) if (!This.CharacterNameOverlayDragging) { This.CharacterNameOverlayDragging := true diff --git a/src/Propertys.ahk b/src/Propertys.ahk index ba50b04..39195ca 100644 --- a/src/Propertys.ahk +++ b/src/Propertys.ahk @@ -94,6 +94,31 @@ class Propertys extends TrayMenu { set => This._JSON["global_Settings"]["CharacterNameOverlayPosition"][key] := value } + CharacterNameOverlayTextSize { + get => This._JSON["global_Settings"]["CharacterNameOverlayTextSize"] + set => This._JSON["global_Settings"]["CharacterNameOverlayTextSize"] := value + } + + CharacterNameOverlayTextColor { + get => This._JSON["global_Settings"]["CharacterNameOverlayTextColor"] + set => This._JSON["global_Settings"]["CharacterNameOverlayTextColor"] := value + } + + CharacterNameOverlayTextBold { + get => This._JSON["global_Settings"]["CharacterNameOverlayTextBold"] + set => This._JSON["global_Settings"]["CharacterNameOverlayTextBold"] := value + } + + CharacterNameOverlayHotkeySize { + get => This._JSON["global_Settings"]["CharacterNameOverlayHotkeySize"] + set => This._JSON["global_Settings"]["CharacterNameOverlayHotkeySize"] := value + } + + CharacterNameOverlayHotkeyColor { + get => This._JSON["global_Settings"]["CharacterNameOverlayHotkeyColor"] + set => This._JSON["global_Settings"]["CharacterNameOverlayHotkeyColor"] := value + } + ;######################## ;## Profile ThumbnailSettings