summaryrefslogtreecommitdiffstats
path: root/CONTEXT.md
diff options
context:
space:
mode:
authorsalmonik <salmonik@tuta.io>2026-10-27 18:31:27 +0100
committersalmonik <salmonik@tuta.io>2026-10-27 18:31:27 +0100
commitf1794edcc60f6a27e622884c82397bb77e2aa280 (patch)
treeca1bf9aa40a612e8e7b1d1a76ff65bdddabd1add /CONTEXT.md
parentGUI: Insert-only close, freeze mouse look at the source (diff)
downloadhl2h-f1794edcc60f6a27e622884c82397bb77e2aa280.tar.gz
hl2h-f1794edcc60f6a27e622884c82397bb77e2aa280.zip
GUI: wire real feature state and config
Replace the dummy preview controls with the actual settings: - cards bind directly to the feature state and the existing option variables; Active/Bind now drive the same gates as the text menu; - every feature persists active+bind, including movement, melee and spread; - config path and build info are real; Reload config re-reads the INI; - Reset defaults is two-click, restores feature settings/binds and keeps the GUI layout; - window position, category and expanded cards persist under [gui] in the same config file; layout saves on drag/category/expand/close; - mouse bind capture handles all five buttons and consumes the click so it cannot re-arm immediately; - Active/Bind tooltips and full scancode names. The old text tree stays on F1 for one verification pass.
Diffstat (limited to '')
-rw-r--r--CONTEXT.md26
1 files changed, 17 insertions, 9 deletions
diff --git a/CONTEXT.md b/CONTEXT.md
index 6f6e59e..0cb05c5 100644
--- a/CONTEXT.md
+++ b/CONTEXT.md
@@ -100,8 +100,9 @@ Bind rows enter bind-select mode: press a key/button to assign, `Escape` sets
100None (always-on), `Enter` cancels. 100None (always-on), `Enter` cancels.
101 101
102> The text menu below is being replaced by the GUI described in the next 102> The text menu below is being replaced by the GUI described in the next
103> section. The old tree is kept only until the GUI reaches parity. During the 103> section. The GUI now drives the same feature state/config. The old tree is
104> preview, **Insert** toggles the GUI and the old text tree is on **F1**. 104> kept only for a verification pass; **Insert** toggles the GUI and the old
105> text tree is on **F1**.
105 106
106``` 107```
107HL2hake 108HL2hake
@@ -156,17 +157,24 @@ Binds use SDL scancodes; mouse buttons are pseudo-scancodes 600..604.
156 and ESP/FOV circle/speed graph keep drawing. No invulnerability. 157 and ESP/FOV circle/speed graph keep drawing. No invulnerability.
157- **Native cursor**: on open, leave SDL relative-mouse mode and show the OS 158- **Native cursor**: on open, leave SDL relative-mouse mode and show the OS
158 cursor; restore on close. Absolute mouse coordinates are used. 159 cursor; restore on close. Absolute mouse coordinates are used.
159- **Bind capture**: click Bind, press a key/button; Esc cancels capture but 160- **Bind capture**: click Bind, press a key or any mouse button; Esc cancels
160 does not close the GUI; clicking elsewhere cancels; Clear sets None; Insert 161 capture but does not close the GUI; the small x clears the bind (None =
161 is reserved for the GUI. 162 always-on). Insert is reserved for the GUI.
162- **UI scale**: `clamp(min(screen_w/1920, screen_h/1080), 0.75, 1.5)`; base 163- **UI scale**: `clamp(min(screen_w/1920, screen_h/1080), 0.75, 1.5)`; base
163 window 960x620, body/title fonts 15/20 px at scale 1. 164 window 960x620, body/title fonts 15/20 px at scale 1.
164- Every feature gets Active + Bind; bind None means always-on. 165- Every feature gets Active + Bind; bind None means always-on.
165- System page: config path/build info, Reload config, and a two-click Reset 166- System page: real config path/build info, Reload config (re-reads the INI),
166 that restores feature settings/binds but keeps GUI layout. 167 and a two-click Reset that restores feature settings/binds but keeps GUI
168 layout.
167- Window: fixed-size, draggable by title bar, clamped to screen, position, 169- Window: fixed-size, draggable by title bar, clamped to screen, position,
168 category and expanded cards persisted under `[gui]`. Esc does not close the 170 category and expanded cards persisted under `[gui]` in the same INI. Esc
169 GUI; the toggle key (Insert) is the only close path. There is no title-bar X. 171 does not close the GUI; the toggle key (Insert) is the only close path.
172 There is no title-bar X.
173- GUI controls write the same state the text tree used; sliders persist when
174 the drag ends, toggles/binds/layout persist immediately. `[gui]` stores
175 `x`, `y`, `category` and an `expanded` bitmask (card index order). Every
176 feature now persists an `active` and `bind` pair, including movement, melee
177 and spread.
170 178
171 179
172## Bones / ESP 180## Bones / ESP