[Scummvm-cvs-logs] scummvm master -> 6c4d65e53f2bd4d61043ed06fcdf61416405bf87
tsoliman
tarek at bashasoliman.com
Mon Feb 20 18:02:16 CET 2012
This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
6c4d65e53f KEYMAPPER: Change how keymaps are displayed in the remap dialog
Commit: 6c4d65e53f2bd4d61043ed06fcdf61416405bf87
https://github.com/scummvm/scummvm/commit/6c4d65e53f2bd4d61043ed06fcdf61416405bf87
Author: Tarek Soliman (tsoliman at scummvm.org)
Date: 2012-02-20T08:52:50-08:00
Commit Message:
KEYMAPPER: Change how keymaps are displayed in the remap dialog
This makes it so that there's 2 groups:
1 - The keymap stack
2 - The loaded keymaps
The first group displays which keymaps are active and which keymaps
are completely blocked due to an opaque keymap on top.
The second group displays which loaded keymaps store their mappings
globally and which ones store their mappings per-target.
Changed paths:
backends/keymapper/remap-dialog.cpp
diff --git a/backends/keymapper/remap-dialog.cpp b/backends/keymapper/remap-dialog.cpp
index eb2d4c5..4ef39a1 100644
--- a/backends/keymapper/remap-dialog.cpp
+++ b/backends/keymapper/remap-dialog.cpp
@@ -57,14 +57,12 @@ RemapDialog::~RemapDialog() {
}
void RemapDialog::open() {
- bool divider = false;
const Stack<Keymapper::MapRecord> &activeKeymaps = _keymapper->getActiveStack();
if (activeKeymaps.size() > 0) {
if (activeKeymaps.top().keymap->getName() == Common::kGuiKeymapName)
_topKeymapIsGui = true;
_kmPopUp->appendEntry(activeKeymaps.top().keymap->getName() + _(" (Effective)"));
- divider = true;
}
Keymapper::Domain *_globalKeymaps = &_keymapper->getGlobalDomain();
@@ -98,35 +96,30 @@ void RemapDialog::open() {
uint32 idx = 0;
if (activeKeymaps.size() > 1) {
- if (divider)
- _kmPopUp->appendEntry("");
int topIndex = activeKeymaps.size() - 1;
+ bool active = activeKeymaps[topIndex].transparent;
for (int i = topIndex - 1; i >= 0; --i) {
Keymapper::MapRecord mr = activeKeymaps[i];
- _kmPopUp->appendEntry(mr.keymap->getName() + _(" (Active)"), idx);
+ _kmPopUp->appendEntry(mr.keymap->getName() + (active ? _(" (Active)") : _(" (Blocked)")), idx);
_keymapTable[idx++] = mr.keymap;
+ active &= mr.transparent;
}
- divider = true;
}
+ _kmPopUp->appendEntry("");
+
if (_globalKeymaps) {
- if (divider)
- _kmPopUp->appendEntry("");
for (it = _globalKeymaps->begin(); it != _globalKeymaps->end(); ++it) {
_kmPopUp->appendEntry(it->_value->getName() + _(" (Global)"), idx);
_keymapTable[idx++] = it->_value;
}
- divider = true;
}
if (_gameKeymaps) {
- if (divider)
- _kmPopUp->appendEntry("");
for (it = _gameKeymaps->begin(); it != _gameKeymaps->end(); ++it) {
_kmPopUp->appendEntry(it->_value->getName() + _(" (Game)"), idx);
_keymapTable[idx++] = it->_value;
}
- divider = true;
}
_changes = false;
More information about the Scummvm-git-logs
mailing list