You've already forked godot
mirror of
https://github.com/godotengine/godot.git
synced 2025-11-04 12:00:25 +00:00
Refactored input, goes all via windows now.
Also renamed Input to InputFilter because all it does is filter events.
This commit is contained in:
committed by
Juan Linietsky
parent
9e08742de8
commit
8e6960a69e
@@ -71,7 +71,7 @@ void JoypadLinux::Joypad::reset() {
|
||||
dpad = 0;
|
||||
fd = -1;
|
||||
|
||||
Input::JoyAxis jx;
|
||||
InputFilter::JoyAxis jx;
|
||||
jx.min = -1;
|
||||
jx.value = 0.0f;
|
||||
for (int i = 0; i < MAX_ABS; i++) {
|
||||
@@ -80,7 +80,7 @@ void JoypadLinux::Joypad::reset() {
|
||||
}
|
||||
}
|
||||
|
||||
JoypadLinux::JoypadLinux(Input *in) {
|
||||
JoypadLinux::JoypadLinux(InputFilter *in) {
|
||||
exit_udev = false;
|
||||
input = in;
|
||||
joy_thread = Thread::create(joy_thread_func, this);
|
||||
@@ -436,11 +436,11 @@ void JoypadLinux::joypad_vibration_stop(int p_id, uint64_t p_timestamp) {
|
||||
joy.ff_effect_timestamp = p_timestamp;
|
||||
}
|
||||
|
||||
Input::JoyAxis JoypadLinux::axis_correct(const input_absinfo *p_abs, int p_value) const {
|
||||
InputFilter::JoyAxis JoypadLinux::axis_correct(const input_absinfo *p_abs, int p_value) const {
|
||||
|
||||
int min = p_abs->minimum;
|
||||
int max = p_abs->maximum;
|
||||
Input::JoyAxis jx;
|
||||
InputFilter::JoyAxis jx;
|
||||
|
||||
if (min < 0) {
|
||||
jx.min = -1;
|
||||
@@ -492,11 +492,11 @@ void JoypadLinux::process_joypads() {
|
||||
case ABS_HAT0X:
|
||||
if (ev.value != 0) {
|
||||
if (ev.value < 0)
|
||||
joy->dpad |= Input::HAT_MASK_LEFT;
|
||||
joy->dpad |= InputFilter::HAT_MASK_LEFT;
|
||||
else
|
||||
joy->dpad |= Input::HAT_MASK_RIGHT;
|
||||
joy->dpad |= InputFilter::HAT_MASK_RIGHT;
|
||||
} else
|
||||
joy->dpad &= ~(Input::HAT_MASK_LEFT | Input::HAT_MASK_RIGHT);
|
||||
joy->dpad &= ~(InputFilter::HAT_MASK_LEFT | InputFilter::HAT_MASK_RIGHT);
|
||||
|
||||
input->joy_hat(i, joy->dpad);
|
||||
break;
|
||||
@@ -504,11 +504,11 @@ void JoypadLinux::process_joypads() {
|
||||
case ABS_HAT0Y:
|
||||
if (ev.value != 0) {
|
||||
if (ev.value < 0)
|
||||
joy->dpad |= Input::HAT_MASK_UP;
|
||||
joy->dpad |= InputFilter::HAT_MASK_UP;
|
||||
else
|
||||
joy->dpad |= Input::HAT_MASK_DOWN;
|
||||
joy->dpad |= InputFilter::HAT_MASK_DOWN;
|
||||
} else
|
||||
joy->dpad &= ~(Input::HAT_MASK_UP | Input::HAT_MASK_DOWN);
|
||||
joy->dpad &= ~(InputFilter::HAT_MASK_UP | InputFilter::HAT_MASK_DOWN);
|
||||
|
||||
input->joy_hat(i, joy->dpad);
|
||||
break;
|
||||
@@ -517,7 +517,7 @@ void JoypadLinux::process_joypads() {
|
||||
if (ev.code >= MAX_ABS)
|
||||
return;
|
||||
if (joy->abs_map[ev.code] != -1 && joy->abs_info[ev.code]) {
|
||||
Input::JoyAxis value = axis_correct(joy->abs_info[ev.code], ev.value);
|
||||
InputFilter::JoyAxis value = axis_correct(joy->abs_info[ev.code], ev.value);
|
||||
joy->curr_axis[joy->abs_map[ev.code]] = value;
|
||||
}
|
||||
break;
|
||||
|
||||
Reference in New Issue
Block a user