mirror of https://github.com/stella-emu/stella.git
fix default key mappings
This commit is contained in:
parent
54decb2cdf
commit
b45b192445
|
@ -70,6 +70,20 @@ Event::Type KeyMap::get(const int mode, const int key, const int mod) const
|
||||||
return get(Mapping(mode, key, mod));
|
return get(Mapping(mode, key, mod));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
bool KeyMap::check(const Mapping& mapping) const
|
||||||
|
{
|
||||||
|
auto find = myMap.find(convertMod(mapping));
|
||||||
|
|
||||||
|
return (find != myMap.end());
|
||||||
|
}
|
||||||
|
|
||||||
|
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
bool KeyMap::check(const int mode, const int key, const int mod) const
|
||||||
|
{
|
||||||
|
return check(Mapping(mode, key, mod));
|
||||||
|
}
|
||||||
|
|
||||||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
string KeyMap::getDesc(const Mapping& mapping) const
|
string KeyMap::getDesc(const Mapping& mapping) const
|
||||||
{
|
{
|
||||||
|
@ -137,6 +151,8 @@ std::vector<KeyMap::Mapping> KeyMap::getEventMapping(const Event::Type event, co
|
||||||
if (item.second == event && item.first.mode == mode)
|
if (item.second == event && item.first.mode == mode)
|
||||||
map.push_back(item.first);
|
map.push_back(item.first);
|
||||||
|
|
||||||
|
int i = 0;
|
||||||
|
|
||||||
return map;
|
return map;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -69,6 +69,10 @@ class KeyMap
|
||||||
Event::Type get(const Mapping& mapping) const;
|
Event::Type get(const Mapping& mapping) const;
|
||||||
Event::Type get(const int mode, const int key, const int mod) const;
|
Event::Type get(const int mode, const int key, const int mod) const;
|
||||||
|
|
||||||
|
/** Check if a mapping exists */
|
||||||
|
bool check(const Mapping& mapping) const;
|
||||||
|
bool check(const int mode, const int key, const int mod) const;
|
||||||
|
|
||||||
/** Get mapping description */
|
/** Get mapping description */
|
||||||
string getDesc(const Mapping& mapping) const;
|
string getDesc(const Mapping& mapping) const;
|
||||||
string getDesc(const int mode, const int key, const int mod) const;
|
string getDesc(const int mode, const int key, const int mod) const;
|
||||||
|
|
|
@ -67,10 +67,10 @@ void PhysicalKeyboardHandler::setDefaultMapping(Event::Type event, EventMode mod
|
||||||
{
|
{
|
||||||
if (updateDefaults)
|
if (updateDefaults)
|
||||||
{
|
{
|
||||||
// if there is no existing mapping for the event and
|
// if there is no existing mapping for the event or
|
||||||
// the default mapping for the event is unused, set default key for event
|
// the default mapping for the event is unused, set default key for event
|
||||||
if (myKeyMap.getEventMapping(k_event, mode).size() == 0 &&
|
if (myKeyMap.getEventMapping(k_event, mode).size() == 0 ||
|
||||||
myKeyMap.get(mode, key, mod) == Event::Type::NoType)
|
!myKeyMap.check(mode, key, mod))
|
||||||
{
|
{
|
||||||
myKeyMap.add(k_event, mode, key, mod);
|
myKeyMap.add(k_event, mode, key, mod);
|
||||||
}
|
}
|
||||||
|
@ -200,6 +200,7 @@ void PhysicalKeyboardHandler::setDefaultMapping(Event::Type event, EventMode mod
|
||||||
setDefaultKey(Event::UITabNext , KBDK_TAB, KBDM_CTRL);
|
setDefaultKey(Event::UITabNext , KBDK_TAB, KBDM_CTRL);
|
||||||
|
|
||||||
setDefaultKey(Event::UIPrevDir , KBDK_BACKSPACE);
|
setDefaultKey(Event::UIPrevDir , KBDK_BACKSPACE);
|
||||||
|
setDefaultKey(Event::ToggleFullScreen, KBDK_RETURN, KBDM_ALT);
|
||||||
|
|
||||||
// FIXME - use the R77 define in the final release
|
// FIXME - use the R77 define in the final release
|
||||||
// use the '1' define for testing
|
// use the '1' define for testing
|
||||||
|
|
Loading…
Reference in New Issue