1
0
Fork 0

Return to predawn version of input.[ch]xx until after the 0.9.2 release.

This commit is contained in:
curt 2003-06-04 14:22:51 +00:00
parent f5e68169dc
commit fdbc4672a8
2 changed files with 31 additions and 50 deletions

View file

@ -194,9 +194,9 @@ FGInput::init ()
void void
FGInput::update (double dt) FGInput::update (double dt)
{ {
_update_keyboard(dt); _update_keyboard();
_update_joystick(dt); _update_joystick();
_update_mouse(dt); _update_mouse();
} }
void void
@ -683,28 +683,22 @@ FGInput::_init_button (const SGPropertyNode * node,
void void
FGInput::_update_keyboard (double dt) FGInput::_update_keyboard ()
{ {
// no-op // no-op
} }
void void
FGInput::_update_joystick (double dt) FGInput::_update_joystick ()
{ {
#ifdef REMOVE_ME_AFTER_FLIGHTGEAR_0_9_2_RELEASE
static double _last_dt = 0.0;
#else
static double _last_dt = 1.0;
#endif
int modifiers = FG_MOD_NONE; // FIXME: any way to get the real ones? int modifiers = FG_MOD_NONE; // FIXME: any way to get the real ones?
int i, j, buttons; int buttons;
// float js_val, diff; // float js_val, diff;
float axis_values[MAX_JOYSTICK_AXES]; float axis_values[MAX_JOYSTICK_AXES];
#ifdef REMOVE_ME_AFTER_FLIGHTGEAR_0_9_2_RELEASE int i;
_last_dt += dt; int j;
#endif
for ( i = 0; i < MAX_JOYSTICKS; i++) { for ( i = 0; i < MAX_JOYSTICKS; i++) {
@ -733,42 +727,31 @@ FGInput::_update_joystick (double dt)
} }
// do we have to emulate axis buttons? // do we have to emulate axis buttons?
if (_last_dt > 0.05) { if (a.low.bindings[modifiers].size())
if (a.low.bindings[modifiers].size()) _update_button(_joystick_bindings[i].axes[j].low,
_update_button(_joystick_bindings[i].axes[j].low, modifiers,
modifiers, axis_values[j] < a.low_threshold,
axis_values[j] < a.low_threshold, -1, -1);
-1, -1);
if (a.high.bindings[modifiers].size())
if (a.high.bindings[modifiers].size()) _update_button(_joystick_bindings[i].axes[j].high,
_update_button(_joystick_bindings[i].axes[j].high, modifiers,
modifiers, axis_values[j] > a.high_threshold,
axis_values[j] > a.high_threshold, -1, -1);
-1, -1);
}
} }
// Fire bindings for the buttons. // Fire bindings for the buttons.
if (_last_dt > 0.05) { for (j = 0; j < _joystick_bindings[i].nbuttons; j++) {
for (j = 0; j < _joystick_bindings[i].nbuttons; j++) { _update_button(_joystick_bindings[i].buttons[j],
_update_button(_joystick_bindings[i].buttons[j], modifiers,
modifiers, (buttons & (1 << j)) > 0,
(buttons & (1 << j)) > 0, -1, -1);
-1, -1);
}
} }
} }
#if REMOVE_ME_AFTER_FLIGHTGEAR_0_9_2_RELEASE
if (_last_dt > 0.05) {
while(_last_dt >= 0.05)
_last_dt -= 0.05;
}
#endif
} }
void void
FGInput::_update_mouse (double dt) FGInput::_update_mouse ()
{ {
mouse &m = _mouse_bindings[0]; mouse &m = _mouse_bindings[0];
int mode = m.mode_node->getIntValue(); int mode = m.mode_node->getIntValue();
@ -818,11 +801,9 @@ FGInput::_read_bindings (const SGPropertyNode * node,
SG_LOG(SG_INPUT, SG_DEBUG, "Reading all bindings"); SG_LOG(SG_INPUT, SG_DEBUG, "Reading all bindings");
vector<SGPropertyNode_ptr> bindings = node->getChildren("binding"); vector<SGPropertyNode_ptr> bindings = node->getChildren("binding");
for (unsigned int i = 0; i < bindings.size(); i++) { for (unsigned int i = 0; i < bindings.size(); i++) {
if (bindings[i]->nChildren() > 0) { SG_LOG(SG_INPUT, SG_DEBUG, "Reading binding "
SG_LOG(SG_INPUT, SG_DEBUG, "Reading binding " << bindings[i]->getStringValue("command"));
<< bindings[i]->getStringValue("command")); binding_list[modifiers].push_back(new FGBinding(bindings[i]));
binding_list[modifiers].push_back(new FGBinding(bindings[i]));
}
} }
// Read nested bindings for modifiers // Read nested bindings for modifiers

View file

@ -375,19 +375,19 @@ private:
/** /**
* Update the keyboard. * Update the keyboard.
*/ */
void _update_keyboard (double dt); void _update_keyboard ();
/** /**
* Update the joystick. * Update the joystick.
*/ */
void _update_joystick (double dt); void _update_joystick ();
/** /**
* Update the mouse. * Update the mouse.
*/ */
void _update_mouse (double dt); void _update_mouse ();
/** /**