Man Linux: Main Page and Category List

NAME

       SoKeyboardEvent -

       The SoKeyboardEvent class contains information about keyboard
       interaction.

       When the user presses any keys on the keyboard, these will be
       translated from a system specific event into a Coin event and sent to
       the scenegraph by using instances of this class.

SYNOPSIS

       #include <Inventor/events/SoKeyboardEvent.h>

       Inherits SoButtonEvent.

   Public Types
       enum Key { ANY =  0, UNDEFINED =  1, LEFT_SHIFT =  0xffe1, RIGHT_SHIFT,
           LEFT_CONTROL, RIGHT_CONTROL, LEFT_ALT =  0xffe9, RIGHT_ALT,
           NUMBER_0 =  0x0030, NUMBER_1, NUMBER_2, NUMBER_3, NUMBER_4,
           NUMBER_5, NUMBER_6, NUMBER_7, NUMBER_8, NUMBER_9, A =  0x0061, B,
           C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X,
           Y, Z, HOME =  0xff50, LEFT_ARROW, UP_ARROW, RIGHT_ARROW,
           DOWN_ARROW, PAGE_UP, PAGE_DOWN, END, PRIOR =  0xff55, NEXT,
           PAD_ENTER =  0xff8d, PAD_F1 =  0xff91, PAD_F2, PAD_F3, PAD_F4,
           PAD_0 =  0xff9e, PAD_1 =  0xff9c, PAD_2 =  0xff99, PAD_3 =  0xff9b,
           PAD_4 =  0xff96, PAD_5 =  0xff9d, PAD_6 =  0xff98, PAD_7 =  0xff95,
           PAD_8 =  0xff97, PAD_9 =  0xff9a, PAD_ADD =  0xffab, PAD_SUBTRACT =
           0xffad, PAD_MULTIPLY =  0xffaa, PAD_DIVIDE =  0xffaf, PAD_SPACE =
           0xff8d, PAD_TAB =  0xff89, PAD_INSERT =  0xff9e, PAD_DELETE =
           0xff9f, PAD_PERIOD =  0xff9f, F1 =  0xffbe, F2, F3, F4, F5, F6, F7,
           F8, F9, F10, F11, F12, BACKSPACE =  0xff08, TAB =  0xff09, RETURN =
           0xff0d, ENTER =  0xff0d, PAUSE =  0xff13, SCROLL_LOCK =  0xff14,
           ESCAPE =  0xff1b, DELETE =  0xffff, KEY_DELETE =  DELETE, PRINT =
           0xff61, INSERT =  0xff63, NUM_LOCK =  0xff7f, CAPS_LOCK =  0xffe5,
           SHIFT_LOCK =  0xffe6, SPACE =  0x0020, APOSTROPHE =  0x0027, COMMA
           =  0x002c, MINUS =  0x002d, PERIOD =  0x002e, SLASH =  0x002f,
           SEMICOLON =  0x003b, EQUAL =  0x003d, BRACKETLEFT =  0x005b,
           BACKSLASH =  0x005c, BRACKETRIGHT =  0x005d, GRAVE =  0x0060 }

   Public Member Functions
       SoKeyboardEvent (void)
       virtual ~SoKeyboardEvent ()
       void setKey (Key key)
       Key getKey (void) const
       void setPrintableCharacter (const char c)
       char getPrintableCharacter (void) const

   Static Public Member Functions
       static void initClass (void)
       static SbBool isKeyPressEvent (const SoEvent *e, Key whichKey)
       static SbBool isKeyReleaseEvent (const SoEvent *e, Key whichKey)
       static SbBool enumToString (Key enumval, SbString &stringrep)

Detailed Description

       The SoKeyboardEvent class contains information about keyboard
       interaction.

       When the user presses any keys on the keyboard, these will be
       translated from a system specific event into a Coin event and sent to
       the scenegraph by using instances of this class.

       See also:
           SoEvent, SoButtonEvent, SoMouseButtonEvent, SoSpaceballButtonEvent

           SoEventCallback, SoHandleEventAction

Member Enumeration Documentation

   enum SoKeyboardEvent::Key This enum contains all keys detected by Coin.

Constructor & Destructor Documentation

   SoKeyboardEvent::SoKeyboardEvent (void) Constructor.
   SoKeyboardEvent::~SoKeyboardEvent () [virtual] Destructor.

Member Function Documentation

   void SoKeyboardEvent::initClass (void) [static] Initialize the type
       information data.
       Reimplemented from SoButtonEvent.

   void SoKeyboardEvent::setKey (SoKeyboardEvent::Key keyarg) Set the value of
       the key which the user interacted with.
       This method is used from the window specific device classes when
       translating events to the generic Coin library.

       See also:
           getKey()

   SoKeyboardEvent::Key SoKeyboardEvent::getKey (void) const Returns the value
       of the key which was pressed or released.
       Coin adds a new key value called UNDEFINED. This is needed to support
       GUI toolkits where it’s not possible to find exactly which key is
       pressed, and/or to support non-US keyboards. The Open Inventor design
       for this class is flawed, since it assumes everybody uses a US
       keyboard. We recommend using getPrintableCharacter() to find which key
       is pressed/released, at least for printable non-alphanumerical
       characters.

       See also:
           getPrintableCharacter(), getState()

           wasShiftDown(), wasCtrlDown(), wasAltDown(), getPosition(),
           getTime()

   void SoKeyboardEvent::setPrintableCharacter (const char c) Sets the
       printable character for this keyboard event. If this method is not
       called when creating an event, getPrintableCharacter() will convert the
       SoKeyboardEvent::Key value into a printable character. This conversion
       does not work on non-US keyboards, so we recommend that you set the
       printable character using this method instead.
       This printable character is cleared each time setKey() is called.

       This method is an extension versus the Open Inventor API.

       See also:
           getPrintableCharacter()

   char SoKeyboardEvent::getPrintableCharacter (void) const Return ASCII value
       which would be generated by the key and modifier combination.
       NB! If setPrintableCharacter() hasn’t been called, this function does
       not always work as expected, particularly not on non-US keyboards. The
       Coin GUI toolkits (SoGtk/SoQt/SoWin/SoXt/Sc21) will set the printable
       character correctly.

       See also:
           getKey(), wasShiftDown(), wasCtrlDown(), wasAltDown(),
           setPrintableCharacter()

   SbBool SoKeyboardEvent::isKeyPressEvent (const SoEvent * e,
       SoKeyboardEvent::Key whichKey) [static] Convenience method for quickly
       checking if the given event is a keypress on the given key, whichKey.
       See also:
           isKeyReleaseEvent(), isOfType(), getKey(), getState()

   SbBool SoKeyboardEvent::isKeyReleaseEvent (const SoEvent * e,
       SoKeyboardEvent::Key whichKey) [static] Convenience method for quickly
       checking if the given event is a key release of the given key,
       whichKey.
       See also:
           isKeyPressEvent(), isOfType(), getKey(), getState()

   SbBool SoKeyboardEvent::enumToString (Key enumval, SbString & stringrep)
       [static] Converts from an enum value of type SoKeyboardEvent::State to
       a string containing the enum symbol.
       This function is an extension for Coin, and it is not available in the
       original SGI Open Inventor v2.1 API.

       Since:
           Coin 3.0

Author

       Generated automatically by Doxygen for Coin from the source code.