Libraries.Interface.Events.KeyboardListener Documentation

The KeyboardListener class is used to listen for and react to KeyboardEvents. Programs that want to react to KeyboardEvents should make a class that inherits from this class and overrides the PressedKey and/or ReleasedKey actions.

Inherits from: Libraries.Language.Object

Summary

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.
PressedKey(Libraries.Interface.Events.KeyboardEvent event)This action responds to a KeyboardEvent where the user pressed a key.
ReleasedKey(Libraries.Interface.Events.KeyboardEvent event)This action responds to a KeyboardEvent where the user released a 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.

PressedKey(Libraries.Interface.Events.KeyboardEvent event)

This action responds to a KeyboardEvent where the user pressed a key. This action does nothing on its own, and should be overriden in an inheriting class for user programs.

Example Code

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

    class Main is Game, KeyboardListener

        integer counter = 0

        action Main
            StartGame()
        end

        action CreateGame
            AddKeyboardListener(me)
        end

        action PressedKey(KeyboardEvent event)
            if event:keyCode = event:SPACE
                counter = counter + 1
                output "The space bar has been pressed " + counter + " times."
            end
        end
    end

Parameters

ReleasedKey(Libraries.Interface.Events.KeyboardEvent event)

This action responds to a KeyboardEvent where the user released a key. This action does nothing on its own, and should be overriden in an inheriting class for user programs.

Example Code

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

    class Main is Game, KeyboardListener

        integer counter = 0

        action Main
            StartGame()
        end

        action CreateGame
            AddKeyboardListener(me)
        end

        action ReleasedKey(KeyboardEvent event)
            if event:keyCode = event:SPACE
                counter = counter + 1
                output "The space bar has been released " + counter + " times."
            end
        end
    end

Parameters