diff --git a/ClassicalSharp/2D/Screens/Menu/EnvSettingsScreen.cs b/ClassicalSharp/2D/Screens/Menu/EnvSettingsScreen.cs index 25b217266..3682684d7 100644 --- a/ClassicalSharp/2D/Screens/Menu/EnvSettingsScreen.cs +++ b/ClassicalSharp/2D/Screens/Menu/EnvSettingsScreen.cs @@ -119,7 +119,7 @@ namespace ClassicalSharp.Gui.Screens { void DefaultButtonClick(Game game, Widget widget, MouseButton btn, int x, int y) { if (btn != MouseButton.Left) return; - int index = IndexOfWidget(targetWidget); + int index = IndexOfWidget(activeButton); string defValue = defaultValues[index]; input.Clear(); diff --git a/ClassicalSharp/2D/Screens/Menu/GuiOptionsScreen.cs b/ClassicalSharp/2D/Screens/Menu/GuiOptionsScreen.cs index 21ab7332a..40b80d4eb 100644 --- a/ClassicalSharp/2D/Screens/Menu/GuiOptionsScreen.cs +++ b/ClassicalSharp/2D/Screens/Menu/GuiOptionsScreen.cs @@ -85,7 +85,7 @@ namespace ClassicalSharp.Gui.Screens { } void HandleFontChange() { - int selIndex = IndexOfWidget(selectedWidget); + int selIndex = IndexOfWidget(selectedButton); game.Events.RaiseChatFontChanged(); base.Dispose(); base.Init(); @@ -102,7 +102,7 @@ namespace ClassicalSharp.Gui.Screens { } if (selIndex >= 0) - selectedWidget = (ButtonWidget)widgets[selIndex]; + selectedButton = (ButtonWidget)widgets[selIndex]; } void MakeValidators() { diff --git a/ClassicalSharp/2D/Screens/Menu/HacksSettingsScreen.cs b/ClassicalSharp/2D/Screens/Menu/HacksSettingsScreen.cs index 2e146c033..9337c2e3e 100644 --- a/ClassicalSharp/2D/Screens/Menu/HacksSettingsScreen.cs +++ b/ClassicalSharp/2D/Screens/Menu/HacksSettingsScreen.cs @@ -185,7 +185,7 @@ namespace ClassicalSharp.Gui.Screens { void DefaultButtonClick(Game game, Widget widget, MouseButton btn, int x, int y) { if (btn != MouseButton.Left) return; - int index = IndexOfWidget(targetWidget); + int index = IndexOfWidget(activeButton); string defValue = defaultValues[index]; input.Clear(); diff --git a/ClassicalSharp/2D/Screens/Menu/MenuOptionsScreen.cs b/ClassicalSharp/2D/Screens/Menu/MenuOptionsScreen.cs index dbfe70ce7..7cefce43b 100644 --- a/ClassicalSharp/2D/Screens/Menu/MenuOptionsScreen.cs +++ b/ClassicalSharp/2D/Screens/Menu/MenuOptionsScreen.cs @@ -86,15 +86,15 @@ namespace ClassicalSharp.Gui.Screens { base.Dispose(); } - protected ButtonWidget selectedWidget, targetWidget; + protected ButtonWidget selectedButton, activeButton; protected override void WidgetSelected(Widget widget) { ButtonWidget button = widget as ButtonWidget; - if (selectedWidget == button || button == null || + if (selectedButton == button || button == null || button == widgets[widgets.Length - 2]) return; - selectedWidget = button; - if (targetWidget != null) return; - UpdateDescription(selectedWidget); + selectedButton = button; + if (activeButton != null) return; + UpdateDescription(selectedButton); } protected void UpdateDescription(ButtonWidget widget) { @@ -133,10 +133,10 @@ namespace ClassicalSharp.Gui.Screens { } void ShowExtendedHelp() { - bool canShow = input == null && selectedWidget != null && descriptions != null; + bool canShow = input == null && selectedButton != null && descriptions != null; if (!canShow) return; - int index = IndexOfWidget(selectedWidget); + int index = IndexOfWidget(selectedButton); if (index < 0 || index >= descriptions.Length) return; string[] desc = descriptions[index]; if (desc == null) return; @@ -186,7 +186,7 @@ namespace ClassicalSharp.Gui.Screens { return; } - targetWidget = selectedWidget; + activeButton = button; InputClosed(); input = MenuInputWidget.Create(game, 400, 30, @@ -200,7 +200,7 @@ namespace ClassicalSharp.Gui.Screens { .SetLocation(Anchor.Centre, Anchor.Centre, 240, 110); InputOpened(); - UpdateDescription(targetWidget); + UpdateDescription(activeButton); } void InputClick(Game game, Widget widget, MouseButton btn, int x, int y) { @@ -222,11 +222,11 @@ namespace ClassicalSharp.Gui.Screens { void ChangeSetting() { string text = input.Text.ToString(); if (((MenuInputWidget)input).Validator.IsValidValue(text)) { - SetButtonValue(targetWidget, text); + SetButtonValue(activeButton, text); } - UpdateDescription(targetWidget); - targetWidget = null; + UpdateDescription(activeButton); + activeButton = null; InputClosed(); } diff --git a/src/Client/Hotkeys.h b/src/Client/Hotkeys.h index 31de583d1..e5031c084 100644 --- a/src/Client/Hotkeys.h +++ b/src/Client/Hotkeys.h @@ -19,6 +19,9 @@ typedef struct HotkeyData_ { #define HOTKEYS_MAX_COUNT 256 HotkeyData HotkeysList[HOTKEYS_MAX_COUNT]; StringsBuffer HotkeysText; +#define HOTKEYS_FLAG_CTRL 1 +#define HOTKEYS_FLAG_SHIFT 2 +#define HOTKEYS_FLAT_ALT 4 void Hotkeys_Add(Key baseKey, UInt8 flags, STRING_PURE String* text, bool more); bool Hotkeys_Remove(Key baseKey, UInt8 flags);