From 3cb7fdea950dd2d0377f0d9ad8a88fcb7c48b842 Mon Sep 17 00:00:00 2001 From: Jedidiah Barber Date: Wed, 14 Jul 2021 11:27:03 +1200 Subject: Initial mirror commit --- Main/Hotkey.h | 63 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 63 insertions(+) create mode 100644 Main/Hotkey.h (limited to 'Main/Hotkey.h') diff --git a/Main/Hotkey.h b/Main/Hotkey.h new file mode 100644 index 0000000..be8603a --- /dev/null +++ b/Main/Hotkey.h @@ -0,0 +1,63 @@ +/* + Copyright (c) 2008-2009 TrueCrypt Developers Association. All rights reserved. + + Governed by the TrueCrypt License 3.0 the full text of which is contained in + the file License.txt included in TrueCrypt binary and source code distribution + packages. +*/ + +#ifndef TC_HEADER_Main_Hotkey +#define TC_HEADER_Main_Hotkey + +#include "System.h" +#include "Main.h" + +namespace TrueCrypt +{ + struct Hotkey; + typedef list < shared_ptr > HotkeyList; + + struct Hotkey + { + public: + struct Id + { + enum + { + CloseAllSecurityTokenSessions = 0, + DismountAll, + DismountAllWipeCache, + ForceDismountAllWipeCache, + ForceDismountAllWipeCacheExit, + MountAllDevices, + MountAllFavorites, + ShowHideApplication, + WipeCache + }; + }; + + Hotkey (int id, const wstring &name, const wxString &description, int virtualKeyCode = 0, int virtualKeyModifiers = 0) + : Description (description), Id (id), Name (name), VirtualKeyCode (virtualKeyCode), VirtualKeyModifiers (virtualKeyModifiers) { } + + virtual ~Hotkey () { } + + static HotkeyList GetAvailableHotkeys (); + wxString GetShortcutString () const; + static wxString GetVirtualKeyCodeString (int virtualKeyCode); + static HotkeyList LoadList (); + static void RegisterList (wxWindow *handler, const HotkeyList &hotkeys); + static void SaveList (const HotkeyList &hotkeys); + static void UnregisterList (wxWindow *handler, const HotkeyList &hotkeys); + + wxString Description; + int Id; + wstring Name; + int VirtualKeyCode; + int VirtualKeyModifiers; + + protected: + static wxString GetFileName () { return L"Hotkeys.xml"; } + }; +} + +#endif // TC_HEADER_Main_Hotkey -- cgit