Show
Ignore:
Timestamp:
01/27/11 17:23:48 (4 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/osgViewer/api/Win32/GraphicsWindowWin32

    r11773 r12125  
    136136        bool setPixelFormat(); 
    137137         
    138         void adaptKey( WPARAM wParam, LPARAM lParam, int& keySymbol, unsigned int& modifierMask ); 
     138        void adaptKey( WPARAM wParam, LPARAM lParam, int& keySymbol, unsigned int& modifierMask, int& unmodifiedKeySymbol ); 
    139139                 
    140140        void transformMouseXY(float& x, float& y); 
     
    179179        std::map<MouseCursor,HCURSOR> _mouseCursorMap; 
    180180 
    181         std::map<int, bool> _keyMap; 
     181        std::map<std::pair<int, int>, bool> _keyMap; 
    182182 
    183183        bool   _applyWorkaroundForMultimonitorMultithreadNVidiaWin32Issues;