From 91e6cb934705ef2044adfb49e0b7258a77d64e76 Mon Sep 17 00:00:00 2001 From: Mark van Alphen Date: Sun, 7 Apr 2019 18:42:08 +0200 Subject: [PATCH] Fix hotkey mode button --- code/datums/helper_datums/hotkey_modes.dm | 9 +++++++++ code/modules/mob/living/silicon/robot/login.dm | 4 ++-- interface/interface.dm | 4 ++-- interface/skin.dmf | 4 +--- 4 files changed, 14 insertions(+), 7 deletions(-) diff --git a/code/datums/helper_datums/hotkey_modes.dm b/code/datums/helper_datums/hotkey_modes.dm index f8049ca52f2..65568ac9f6b 100644 --- a/code/datums/helper_datums/hotkey_modes.dm +++ b/code/datums/helper_datums/hotkey_modes.dm @@ -2,6 +2,15 @@ var/name var/macro_hotkeys_inactive var/macro_hotkeys_active + var/mob/my_mob + +/datum/hotkey_mode/New(mob) + my_mob = mob + +/datum/hotkey_mode/proc/set_winset_values() + winset(my_mob, null, "mainwindow.macro=[macro_hotkeys_inactive] hotkey_toggle.is-checked=false input.focus=true input.background-color=#d3b5b5") + message_admins("hotkey_toggle.command=\".winset \\\"mainwindow.macro != [macro_hotkeys_inactive] ? mainwindow.macro=[macro_hotkeys_inactive] hotkey_toggle.is-checked=false input.focus=true input.background-color=#d3b5b5 : mainwindow.macro=[macro_hotkeys_active] hotkey_toggle.is-checked=true mapwindow.map.focus=true input.background-color=#f0f0f0\\\"\"") + winset(my_mob, null, "hotkey_toggle.command=\".winset \\\"mainwindow.macro != [macro_hotkeys_inactive] ? mainwindow.macro=[macro_hotkeys_inactive] hotkey_toggle.is-checked=false input.focus=true input.background-color=#d3b5b5 : mainwindow.macro=[macro_hotkeys_active] hotkey_toggle.is-checked=true mapwindow.map.focus=true input.background-color=#f0f0f0\\\"\"") /datum/hotkey_mode/qwerty name = "QWERTY" diff --git a/code/modules/mob/living/silicon/robot/login.dm b/code/modules/mob/living/silicon/robot/login.dm index d08b1020477..d0262df743c 100644 --- a/code/modules/mob/living/silicon/robot/login.dm +++ b/code/modules/mob/living/silicon/robot/login.dm @@ -3,5 +3,5 @@ regenerate_icons() show_laws(0) - var/datum/hotkey_mode/cyborg/C = new() - winset(src, null, "mainwindow.macro_hotkey_mode_inactive=[C.macro_hotkeys_inactive] mainwindow.macro_hotkey_mode_active=[C.macro_hotkeys_active] mainwindow.macro=[C.macro_hotkeys_inactive] hotkey_toggle.is-checked=false input.focus=true input.background-color=#d3b5b5") + var/datum/hotkey_mode/cyborg/C = new(src) + C.set_winset_values() diff --git a/interface/interface.dm b/interface/interface.dm index 1e978f43386..0bec55ef51c 100644 --- a/interface/interface.dm +++ b/interface/interface.dm @@ -111,9 +111,9 @@ return var/datum/hotkey_mode/chosen_mode = hotkey_modes[chosen_mode_name] - var/datum/hotkey_mode/hotkey_mode = new chosen_mode() + var/datum/hotkey_mode/hotkey_mode = new chosen_mode(src) - winset(mob, null, "mainwindow.macro_hotkey_mode_inactive=[hotkey_mode.macro_hotkeys_inactive] mainwindow.macro_hotkey_mode_active=[hotkey_mode.macro_hotkeys_active] mainwindow.macro=[hotkey_mode.macro_hotkeys_inactive] hotkey_toggle.is-checked=false input.focus=true input.background-color=#d3b5b5") + hotkey_mode.set_winset_values() to_chat(usr, "Your hotkey mode has been changed to [hotkey_mode.name].") qdel(hotkey_mode) diff --git a/interface/skin.dmf b/interface/skin.dmf index 7e76a4f319f..19f5c219e3d 100644 --- a/interface/skin.dmf +++ b/interface/skin.dmf @@ -1526,8 +1526,6 @@ window "mainwindow" icon = 'icons\\paradise.png' menu = "menu" macro = "macro" - macro_hotkey_mode_inactive = "macro" - macro_hotkey_mode_active = "hotkeymode" saved-params = "pos;size;is-minimized;is-maximized" elem "asset_cache_browser" type = BROWSER @@ -1543,7 +1541,7 @@ window "mainwindow" saved-params = "" is-flat = false text = "Hotkey Toggle" - command = ".winset \"mainwindow.macro != mainwindow.macro_hotkey_mode_inactive ? mainwindow.macro=mainwindow.macro_hotkey_mode_inactive hotkey_toggle.is-checked=false input.focus=true input.background-color=#d3b5b5 : mainwindow.macro=mainwindow.macro_hotkey_mode_active hotkey_toggle.is-checked=true mapwindow.map.focus=true input.background-color=#f0f0f0\"" + command = ".winset \"mainwindow.macro != macro ? mainwindow.macro=macro hotkey_toggle.is-checked=false input.focus=true input.background-color=#d3b5b5 : mainwindow.macro=hotkeymode hotkey_toggle.is-checked=true mapwindow.map.focus=true input.background-color=#f0f0f0\"" elem "mainvsplit" type = CHILD pos = 3,0