Show
Ignore:
Timestamp:
01/27/11 17:23:48 (3 years ago)
Author:
robert
Message:

From Alexander Sinditskiy, "reason of this changes described in http://forum.openscenegraph.org/viewtopic.php?t=7596

and another problem is:
example osgkeyboard is not work (keys not highlight) if user have 2 keyboard layout native and english and current user layout is native

I try to explain my changes

we need something that is identify key without modifier keys and layout -> this is UnmodifedKey?

I think osg must have its own UnmodifiedKeys? table. Code must be run same on different platforms. This can de guaranteed by UnmodifiedKeys? table.

Mikhail Izmestev helped me. He implemented VirtualKey? changes in GraphicsWindowX11"

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • OpenSceneGraph/trunk/include/osgGA/GUIEventAdapter

    r11938 r12125  
    5959        { 
    6060            KEY_Space           = 0x20, 
    61              
     61 
     62            KEY_0               = '0', 
     63            KEY_1               = '1', 
     64            KEY_2               = '2', 
     65            KEY_3               = '3', 
     66            KEY_4               = '4', 
     67            KEY_5               = '5', 
     68            KEY_6               = '6', 
     69            KEY_7               = '7', 
     70            KEY_8               = '8', 
     71            KEY_9               = '9', 
     72            KEY_A               = 'a', 
     73            KEY_B               = 'b', 
     74            KEY_C               = 'c', 
     75            KEY_D               = 'd', 
     76            KEY_E               = 'e', 
     77            KEY_F               = 'f', 
     78            KEY_G               = 'g', 
     79            KEY_H               = 'h', 
     80            KEY_I               = 'i', 
     81            KEY_J               = 'j', 
     82            KEY_K               = 'k', 
     83            KEY_L               = 'l', 
     84            KEY_M               = 'm', 
     85            KEY_N               = 'n', 
     86            KEY_O               = 'o', 
     87            KEY_P               = 'p', 
     88            KEY_Q               = 'q', 
     89            KEY_R               = 'r', 
     90            KEY_S               = 's', 
     91            KEY_T               = 't', 
     92            KEY_U               = 'u', 
     93            KEY_V               = 'v', 
     94            KEY_W               = 'w', 
     95            KEY_X               = 'x', 
     96            KEY_Y               = 'y', 
     97            KEY_Z               = 'z', 
     98 
     99            KEY_Exclaim         = 0x21, 
     100            KEY_Quotedbl        = 0x22, 
     101            KEY_Hash            = 0x23, 
     102            KEY_Dollar          = 0x24, 
     103            KEY_Ampersand       = 0x26, 
     104            KEY_Quote           = 0x27, 
     105            KEY_Leftparen       = 0x28, 
     106            KEY_Rightparen      = 0x29, 
     107            KEY_Asterisk        = 0x2A, 
     108            KEY_Plus            = 0x2B, 
     109            KEY_Comma           = 0x2C, 
     110            KEY_Minus           = 0x2D, 
     111            KEY_Period          = 0x2E, 
     112            KEY_Slash           = 0x2F, 
     113            KEY_Colon           = 0x3A, 
     114            KEY_Semicolon       = 0x3B, 
     115            KEY_Less            = 0x3C, 
     116            KEY_Equals          = 0x3D, 
     117            KEY_Greater         = 0x3E, 
     118            KEY_Question        = 0x3F, 
     119            KEY_At              = 0x40, 
     120            KEY_Leftbracket     = 0x5B, 
     121            KEY_Backslash       = 0x5C, 
     122            KEY_Rightbracket    = 0x5D, 
     123            KEY_Caret           = 0x5E, 
     124            KEY_Underscore      = 0x5F, 
     125            KEY_Backquote       = 0x60, 
     126 
    62127            KEY_BackSpace       = 0xFF08,        /* back space, back char */ 
    63128            KEY_Tab             = 0xFF09, 
     
    375440        virtual int getKey() const { return _key; } 
    376441 
     442        /** set virtual key pressed. */ 
     443        void setUnmodifiedKey(int key) { _unmodifiedKey = key; } 
     444         
     445        /** get virtual key pressed. */ 
     446        int getUnmodifiedKey() const { return _unmodifiedKey; } 
     447         
    377448        /** set button pressed/released.*/ 
    378449        void setButton(int button) { _button = button; } 
     
    520591        int _windowHeight; 
    521592        int _key; 
     593        int _unmodifiedKey; 
    522594        int _button; 
    523595        float _Xmin,_Xmax;