mirror of https://github.com/stella-emu/stella.git
Fixed problem with 'sticky' mappings of joysticks axes and analog events.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@914 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
This commit is contained in:
parent
37bf0dc029
commit
9888b78f19
|
@ -13,7 +13,7 @@
|
||||||
// See the file "license" for information on usage and redistribution of
|
// See the file "license" for information on usage and redistribution of
|
||||||
// this file, and for a DISCLAIMER OF ALL WARRANTIES.
|
// this file, and for a DISCLAIMER OF ALL WARRANTIES.
|
||||||
//
|
//
|
||||||
// $Id: EventHandler.cxx,v 1.129 2005-12-17 22:48:24 stephena Exp $
|
// $Id: EventHandler.cxx,v 1.130 2005-12-18 14:15:53 stephena Exp $
|
||||||
//============================================================================
|
//============================================================================
|
||||||
|
|
||||||
#include <algorithm>
|
#include <algorithm>
|
||||||
|
@ -1330,8 +1330,6 @@ void EventHandler::setActionMappings()
|
||||||
buf << "J" << stick << " axis " << axis;
|
buf << "J" << stick << " axis " << axis;
|
||||||
if(eventIsAnalog(event))
|
if(eventIsAnalog(event))
|
||||||
{
|
{
|
||||||
myJoyAxisTable[stick][axis][0] = event;
|
|
||||||
myJoyAxisTable[stick][axis][1] = event;
|
|
||||||
dir = 2; // Immediately exit the inner loop after this iteration
|
dir = 2; // Immediately exit the inner loop after this iteration
|
||||||
buf << " abs";
|
buf << " abs";
|
||||||
}
|
}
|
||||||
|
@ -1448,8 +1446,10 @@ void EventHandler::addJoyMapping(Event::Type event, int stick, int button)
|
||||||
void EventHandler::addJoyAxisMapping(Event::Type event, int stick, int axis,
|
void EventHandler::addJoyAxisMapping(Event::Type event, int stick, int axis,
|
||||||
int value)
|
int value)
|
||||||
{
|
{
|
||||||
int dir = value > 0;
|
if(eventIsAnalog(event))
|
||||||
myJoyAxisTable[stick][axis][dir] = event;
|
myJoyAxisTable[stick][axis][0] = myJoyAxisTable[stick][axis][1] = event;
|
||||||
|
else
|
||||||
|
myJoyAxisTable[stick][axis][(value > 0)] = event;
|
||||||
saveJoyAxisMapping();
|
saveJoyAxisMapping();
|
||||||
|
|
||||||
setActionMappings();
|
setActionMappings();
|
||||||
|
|
Loading…
Reference in New Issue