#endif // wxUSE_THREADS
}
-long wxMacTranslateKey(unsigned char key, unsigned char code) ;
long wxMacTranslateKey(unsigned char key, unsigned char code)
{
long retval = key ;
ms.SetX(pt.x);
ms.SetY(pt.y);
+#if TARGET_API_MAC_OSX
UInt32 buttons = GetCurrentButtonState();
ms.SetLeftDown( (buttons & 0x01) != 0 );
ms.SetMiddleDown( (buttons & 0x04) != 0 );
ms.SetRightDown( (buttons & 0x02) != 0 );
-
+#else
+ ms.SetLeftDown( Button() );
+ ms.SetMiddleDown( 0 );
+ ms.SetRightDown( 0 );
+#endif
+
UInt32 modifiers = GetCurrentKeyModifiers();
ms.SetControlDown(modifiers & controlKey);
ms.SetShiftDown(modifiers & shiftKey);
wxKeyEvent event(wxEVT_CHAR) ;
MacCreateKeyEvent( event, focus , keymessage , modifiers , when , wherex , wherey , uniChar ) ;
long keyval = event.m_keyCode ;
- short realkeyval = short(keymessage & charCodeMask) ;
bool handled = false ;
if (tlw)
{
event.SetEventType( wxEVT_CHAR_HOOK );
- // send original character, not the uppercase version
- event.m_keyCode = realkeyval ;
-
handled = tlw->GetEventHandler()->ProcessEvent( event );
if ( handled && event.GetSkipped() )
handled = false ;