From 8dc8f3cd5733ff4a84981da59b48778fcc7c12d4 Mon Sep 17 00:00:00 2001 From: Ian Jackson Date: Sun, 13 Feb 2011 19:32:32 +0000 Subject: [PATCH] gui: gamepad: implement train selection --- hostside/gui | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/hostside/gui b/hostside/gui index 78297c6..4102e9e 100755 --- a/hostside/gui +++ b/hostside/gui @@ -937,6 +937,25 @@ proc ib-gamepad-main {devid xy value} { set in(main_active) $active } +proc ib-ev/gamepad/EV_KEY/BTN_1 {d v} { ib-gamepad-btn 1 $d $v } +proc ib-ev/gamepad/EV_KEY/BTN_2 {d v} { ib-gamepad-btn 2 $d $v } +proc ib-ev/gamepad/EV_KEY/BTN_3 {d v} { ib-gamepad-btn 3 $d $v } +proc ib-ev/gamepad/EV_KEY/BTN_4 {d v} { ib-gamepad-btn 4 $d $v } +proc ib-ev/gamepad/EV_KEY/BTN_5 {d v} { ib-gamepad-btn 5 $d $v } +proc ib-ev/gamepad/EV_KEY/BTN_6 {d v} { ib-gamepad-btn 6 $d $v } + +proc ib-gamepad-btn {num devid value} { + upvar #0 input/$devid in + if {!$value} return + if {[string length $in(main_active)]} return + upvar #0 trainnum2train($num) tr + if {![info exists tr]} { + speedw-train-noneselected $in(speedw) "no train $num" + } else { + speedw-train-selected $in(speedw) $tr + } +} + proc ib-ev/gamepad/EV_KEY/BTN_TOP2 {devid value} { upvar #0 input/$devid in if {!$value} return -- 2.30.2