lib/mnit_input: add `KeyEvent::name`
authorAlexis Laferrière <alexis.laf@xymus.net>
Thu, 18 Dec 2014 16:21:15 +0000 (11:21 -0500)
committerAlexis Laferrière <alexis.laf@xymus.net>
Tue, 27 Jan 2015 03:08:06 +0000 (22:08 -0500)
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>

lib/android/input_events.nit
lib/mnit_input.nit
lib/sdl.nit

index c766a16..55f21a5 100644 (file)
@@ -216,6 +216,8 @@ extern class AndroidKeyEvent `{AInputEvent *`}
                return 0;
        `}
 
+       redef fun name do return key_code.to_s
+
        # Was this event raised by the back key?
        fun is_back_key: Bool do return key_code == 4
 
index cd6c59d..58864e4 100644 (file)
@@ -85,6 +85,11 @@ interface KeyEvent
 
        # Get Char value of key, if any
        fun to_c: nullable Char is abstract
+
+       # Name of the key that raised `self`
+       #
+       # Use mainly for debug since it is implementation dependent.
+       fun name: String is abstract
 end
 
 # Mobile hardware (or pseudo hardware) event
index 41ddc5b..446e347 100644 (file)
@@ -369,27 +369,27 @@ class SDLKeyEvent
        super KeyEvent
        super SDLInputEvent
 
-       var key_name: String
+       redef var name
        var down: Bool
 
        init (key_name: String, down: Bool)
        do
-               self.key_name = key_name
+               self.name = key_name
                self.down = down
        end
 
        redef fun to_c: nullable Char
        do
-               if key_name.length == 1 then return key_name.chars.first
+               if name.length == 1 then return name.chars.first
                return null
        end
 
        redef fun to_s
        do
                if down then
-                       return "KeyboardEvent key {key_name} down"
+                       return "KeyboardEvent key {name} down"
                else
-                       return "KeyboardEvent key {key_name} up"
+                       return "KeyboardEvent key {name} up"
                end
        end
 
@@ -397,13 +397,13 @@ class SDLKeyEvent
        redef fun is_down do return down
 
        # Return true if the key is the up arrow
-       redef fun is_arrow_up do return key_name == "up"
+       redef fun is_arrow_up do return name == "up"
        # Return true if the key is the left arrow
-       redef fun is_arrow_left do return key_name == "left"
+       redef fun is_arrow_left do return name == "left"
        # Return true if the key is the down arrow
-       redef fun is_arrow_down do return key_name == "down"
+       redef fun is_arrow_down do return name == "down"
        # Return true if the key is the right arrow
-       redef fun is_arrow_right do return key_name == "right"
+       redef fun is_arrow_right do return name == "right"
 end
 
 class SDLQuitEvent