Libraries.Interface.Events.KeyboardEvent Documentation

The KeyboardEvent class represents an event on the keyboard, which is caused by the user pushing down or releasing a key. This class also contains constants for the possible keys that may have been pressed or released.

Inherits from: Libraries.Language.Object

Summary

Variable Summary Table

VariablesDescription
integer FORWARD_DELETE
integer NUM_7
integer pressCountHow many key presses have occurred in a short period of time, including this event (if it is a PRESSED_KEY event).
integer PERIOD
integer NUMPAD_3
integer SHIFT_LEFT
integer D
integer F8
integer RELEASED_KEYThe keyCode corresponds to one of the constant values in this class. The default value of 0 is equal to the "UNKNOWN" constant.
integer META_LEFT
integer F9
integer DOWN
integer ENTER
integer F11
integer Y
integer NUMPAD_6
integer APOSTROPHE
integer MINUS
integer NUM_4
integer F6
integer C
integer PRESSED_KEY
integer END
integer NUMPAD_1
integer COMMA
integer CONTROL_RIGHT
integer NUM_9
integer META_RIGHT
integer EQUALS
integer NUMPAD_2
integer S
integer LEFT
integer POWER
integer HOME
integer NUMPAD_7
integer W
integer NUMPAD_5
integer NUMPAD_8
integer RIGHT_BRACKET
integer eventTypeThis is either PRESSED_KEY or RELEASED_KEY.
integer G
integer ANY_KEYHow many key presses have occurred in a short period of time, including this event (if it is a PRESSED_KEY event).
integer NUMPAD_STAR
integer N
integer PRINT_SCREEN
integer NUMPAD_0
integer R
integer X
integer LEFT_BRACKET
integer TAB
integer SCROLL_LOCK
integer NUM_0This is either PRESSED_KEY or RELEASED_KEY.
integer B
integer NUM_6
integer SLASH
integer NUMPAD_EQUALS
integer M
integer F5
integer SPACE
integer J
integer COLON
integer NUMPAD_9
integer BACKSLASH
integer PAGE_UP
integer NUMPAD_ENTER
integer F
integer UP
integer NUM_3
integer GRAVE
integer ALT_LEFT
integer ESCAPE
integer BACKSPACE
integer SEMICOLON
integer O
integer CAPS_LOCK
integer F7
integer NUMPAD_MINUS
integer RIGHT
integer NUM_5
integer F1
integer A
integer ALT_RIGHT
integer NUM_1
integer NUMPAD_DECIMAL
integer V
integer I
integer UNKNOWN
integer PAGE_DOWN
integer T
integer Z
integer NUMPAD_4
integer H
integer NUMPAD_PLUS
integer Q
integer INSERT
integer NUM_LOCK
integer CONTROL_LEFT
integer P
integer PAUSE
integer CLEAR
integer NUMPAD_SLASH
integer F2
integer U
integer keyCodeThe keyCode corresponds to one of the constant values in this class. The default value of 0 is equal to the "UNKNOWN" constant.
integer NUM_8
integer F4
integer K
integer NUM_2
integer F3
integer L
integer E
integer SHIFT_RIGHT
integer F10
integer F12This action will return the text value represented by a particular key. The boolean represents whether the text should use the shift-keyed value, e.g., the "A" key on the keyboard can represent the text "a" if shiftPressed is false, or "A" if shiftPressed is true.

Actions Summary Table

ActionsDescription
Compare(Libraries.Language.Object object)This action compares two object hash codes and returns an integer.
Equals(Libraries.Language.Object object)This action determines if two objects are equal based on their hash code values.
GetHashCode()This action gets the hash code for an object.
GetPressCount()This action returns how many times the key described by this event has been recently pressed.
ToText(integer keycode, boolean shiftPressed)This action will return the text value represented by a particular key.
ToText(integer keycode)This action will return the text value represented by a particular key.
ToTextShift(integer keycode)This action will return the text value represented by a particular key.

Actions Documentation

Compare(Libraries.Language.Object object)

This action compares two object hash codes and returns an integer. The result is larger if this hash code is larger than the object passed as a parameter, smaller, or equal. In this case, -1 means smaller, 0 means equal, and 1 means larger. This action was changed in Quorum 7 to return an integer, instead of a CompareResult object, because the previous implementation was causing efficiency issues.

Example Code

Object o
        Object t
        integer result = o:Compare(t) //1 (larger), 0 (equal), or -1 (smaller)

Parameters

Return

integer: The Compare result, Smaller, Equal, or Larger.

Equals(Libraries.Language.Object object)

This action determines if two objects are equal based on their hash code values.

Example Code

use Libraries.Language.Object
        use Libraries.Language.Types.Text
        Object o
        Text t
        boolean result = o:Equals(t)

Parameters

Return

boolean: True if the hash codes are equal and false if they are not equal.

GetHashCode()

This action gets the hash code for an object.

Example Code

Object o
        integer hash = o:GetHashCode()

Return

integer: The integer hash code of the object.

GetPressCount()

This action returns how many times the key described by this event has been recently pressed. The time considered to be "recent" is defined by the ApplicationConfiguration (if keyboard input is relevant to the application type). The value returned includes the key being pressed as part of this event, if the event is a PRESSED_KEY event - e.g., if a key is pressed exactly once, the value returned is 1. If a key is pressed twice in rapid succession, the value returned will be 2.

Return

integer: How many times the key has been recently pressed.

ToText(integer keycode, boolean shiftPressed)

This action will return the text value represented by a particular key. The boolean represents whether the text should use the shift-keyed value, e.g., the "A" key on the keyboard can represent the text "a" if shiftPressed is false, or "A" if shiftPressed is true.

Example Code

use Libraries.Game.Game
    use Libraries.Interface.Events.KeyboardEvent
    use Libraries.Interface.Events.KeyboardListener
    use Libraries.Game.InputMonitor

    class Main is Game, KeyboardListener

        InputMonitor monitor

        action Main
            StartGame()
        end

        action CreateGame
            AddKeyboardListener(me)
        end

        action PressedKey(KeyboardEvent event)
            boolean shift = monitor:IsKeyPressed(event:SHIFT_LEFT) or monitor:IsKeyPressed(event:SHIFT_RIGHT)
            text key = event:ToText(event:keyCode, shift)
            output "The pressed key was " + key + "."
        end
    end

Parameters

Return

text:

ToText(integer keycode)

This action will return the text value represented by a particular key. The returned text value assumes that the shift key is not being held down.

Example Code

use Libraries.Game.Game
    use Libraries.Interface.Events.KeyboardEvent
    use Libraries.Interface.Events.KeyboardListener

    class Main is Game, KeyboardListener

        action Main
            StartGame()
        end

        action CreateGame
            AddKeyboardListener(me)
        end

        action PressedKey(KeyboardEvent event)
            text key = event:ToText(event:keyCode)
            output "The pressed key was " + key + "."
        end
    end

Parameters

Return

text:

ToTextShift(integer keycode)

This action will return the text value represented by a particular key. The returned text value assumes that the shift key is being held down.

Example Code

use Libraries.Game.Game
    use Libraries.Interface.Events.KeyboardEvent
    use Libraries.Interface.Events.KeyboardListener

    class Main is Game, KeyboardListener

        action Main
            StartGame()
        end

        action CreateGame
            AddKeyboardListener(me)
        end

        action PressedKey(KeyboardEvent event)
            text key = event:ToTextShift(event:keyCode)
            output "The pressed key was " + key + "."
        end
    end

Parameters

Return

text: