update polled mousewheel code

This commit is contained in:
AJ Kelly
2011-05-15 00:09:44 -05:00
parent 2724e35e97
commit 84e93b0bbd
@@ -417,17 +417,24 @@ void InputHandler_DInput::UpdatePolled( DIDevice &device, const RageTimer &tm )
val = state.lZ;
//LOG->Trace("MouseWheel polled: %i",val);
INPUTFILTER->UpdateMouseWheel(val);
/*
if( (int)val != 0 )
if( val == 0 )
{
// release all
ButtonPressed( DeviceInput(dev, pos, 0, tm) );
ButtonPressed( DeviceInput(dev, neg, 0, tm) );
}
else if( int(val) > 0 )
{
// positive values: WheelUp
// negative values: WheelDown
float l = SCALE( int(val), -120.0f, 120.0f, -1.0f, 1.0f );
ButtonPressed( DeviceInput(dev, neg, max(-l,0), tm) );
ButtonPressed( DeviceInput(dev, pos, max(+l,0), tm) );
ButtonPressed( DeviceInput(dev, pos, 1, tm) );
ButtonPressed( DeviceInput(dev, neg, 0, tm) );
}
else if( int(val) < 0 )
{
// negative values: WheelDown
ButtonPressed( DeviceInput(dev, neg, 1, tm) );
ButtonPressed( DeviceInput(dev, pos, 0, tm) );
}
*/
}
break;
default: LOG->MapLog( "unknown input",
@@ -532,23 +539,23 @@ void InputHandler_DInput::UpdateBuffered( DIDevice &device, const RageTimer &tm
//l = SCALE( int(evtbuf[i].dwData), -WHEEL_DELTA, WHEEL_DELTA, 1.0f, -1.0f );
if( int(evtbuf[i].dwData) > 0 )
{
DeviceInput diUp = DeviceInput(dev, up, 1, tm);
DeviceInput diUp = DeviceInput(dev, up, 1.0f, tm);
ButtonPressed( diUp );
DeviceInput diDown = DeviceInput(dev, down, 0, tm);
DeviceInput diDown = DeviceInput(dev, down, 0.0f, tm);
ButtonPressed( diDown );
}
else if( int(evtbuf[i].dwData) < 0 )
{
DeviceInput diDown = DeviceInput(dev, down, 1, tm);
DeviceInput diDown = DeviceInput(dev, down, 1.0f, tm);
ButtonPressed( diDown );
DeviceInput diUp = DeviceInput(dev, up, 0, tm);
DeviceInput diUp = DeviceInput(dev, up, 0.0f, tm);
ButtonPressed( diUp );
}
else
{
DeviceInput diUp = DeviceInput(dev, up, 0, tm);
DeviceInput diUp = DeviceInput(dev, up, 0.0f, tm);
ButtonPressed( diUp );
DeviceInput diDown = DeviceInput(dev, down, 0, tm);
DeviceInput diDown = DeviceInput(dev, down, 0.0f, tm);
ButtonPressed( diDown );
}
}