diff options
author | Stephen Kennedy | 2008-08-13 11:46:08 +0000 |
---|---|---|
committer | Stephen Kennedy | 2008-08-13 11:46:08 +0000 |
commit | 532faef82b20802502d54fabb7364c25eb7ac875 (patch) | |
tree | 57b65a7a975a926adc9e0a2c2981948fe86d797c /backends/keymapper/remap-dialog.h | |
parent | 300a1df2b0b801a002d369b5459112c43593e96a (diff) | |
download | scummvm-rg350-532faef82b20802502d54fabb7364c25eb7ac875.tar.gz scummvm-rg350-532faef82b20802502d54fabb7364c25eb7ac875.tar.bz2 scummvm-rg350-532faef82b20802502d54fabb7364c25eb7ac875.zip |
Keymapper WIP:
* Improved automatic mapping algorithm
* Remap dialog overhaul - now displays active keymap(s)
svn-id: r33821
Diffstat (limited to 'backends/keymapper/remap-dialog.h')
-rw-r--r-- | backends/keymapper/remap-dialog.h | 32 |
1 files changed, 15 insertions, 17 deletions
diff --git a/backends/keymapper/remap-dialog.h b/backends/keymapper/remap-dialog.h index e1ca809e97..839455e74e 100644 --- a/backends/keymapper/remap-dialog.h +++ b/backends/keymapper/remap-dialog.h @@ -41,44 +41,42 @@ public: virtual ~RemapDialog(); virtual void open(); virtual void handleCommand(GUI::CommandSender *sender, uint32 cmd, uint32 data); - virtual void handleKeyDown(Common::KeyState state); + virtual void handleKeyUp(Common::KeyState state); protected: - struct Mapping { - Action *action; + struct ActionWidgets { GUI::StaticTextWidget *actionText; GUI::ButtonWidget *keyButton; }; + struct ActionInfo { + Action *action; + bool inherited; + String description; + }; void loadKeymap(); void refreshKeymap(); - void setupWidgets(uint num); - void startRemapping(Mapping *remap); + void setupWidgets(); + void startRemapping(uint i); void stopRemapping(); Keymapper *_keymapper; Stack<Keymapper::MapRecord> *_activeKeymaps; - KeymapManager::Domain *_globalKeymaps; - KeymapManager::Domain *_gameKeymaps; + Keymap** _keymapTable; - List<Action*> *_currentActions; - List<Action*>::iterator _topAction; - uint _topRow; + Array<ActionInfo> _currentActions; + int _topAction; Rect _keymapArea; GUI::PopUpWidget *_kmPopUp; - Keymap** _keymapTable; - + //GUI::ContainerWidget *_container; GUI::ScrollBarWidget *_scrollBar; - uint _colWidth; uint _colCount, _rowCount; - uint _spacing; - uint _buttonHeight; - Mapping *_activeRemap; - Array<Mapping> _keymapMappings; + Array<ActionWidgets> _keymapWidgets; + Action *_activeRemapAction; }; |