From cbf8aca6d4972b7a92e483e52245485c14e700f6 Mon Sep 17 00:00:00 2001 From: Stefan Csomor Date: Tue, 28 Jan 2003 07:01:23 +0000 Subject: [PATCH] Carbon Events git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18971 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- include/wx/mac/app.h | 34 ++++++++++++++++++++++++---------- include/wx/mac/toplevel.h | 16 ++++++++++++---- 2 files changed, 36 insertions(+), 14 deletions(-) diff --git a/include/wx/mac/app.h b/include/wx/mac/app.h index 0241b2e649..498fe3e71c 100644 --- a/include/wx/mac/app.h +++ b/include/wx/mac/app.h @@ -58,6 +58,10 @@ class WXDLLEXPORT wxApp: public wxAppBase virtual void SetPrintMode(int mode) { m_printMode = mode; } virtual int GetPrintMode() const { return m_printMode; } +#if wxUSE_GUI + // setting up all MacOS Specific Event-Handlers etc + virtual bool OnInitGui(); +#endif // wxUSE_GUI // implementation only void OnIdle(wxIdleEvent& event); void OnEndSession(wxCloseEvent& event); @@ -86,10 +90,12 @@ public: static bool Initialize(); static void CleanUp(); - virtual bool OnInit(); void DeletePendingObjects(); bool IsExiting() { return !m_keepGoing ; } - +#if TARGET_CARBON + WXEVENTHANDLERREF MacGetEventHandler() { return m_macEventHandler ; } +#endif + public: static long sm_lastMessageTime; static wxWindow* s_captureWindow ; @@ -106,6 +112,11 @@ protected: // mac specifics public: +#if TARGET_CARBON + // public to avoid change in initialization order of handlers + // could be moved into a override of OnInitGui eventually + WXEVENTHANDLERREF m_macEventHandler ; +#endif static bool s_macDefaultEncodingIsPC ; static bool s_macSupportPCMenuShortcuts ; static long s_macAboutMenuItemId ; @@ -130,10 +141,20 @@ public: virtual void MacSuspend( bool convertClipboard ) ; virtual void MacResume( bool convertClipboard ) ; - virtual void MacConvertPrivateToPublicScrap() ; virtual void MacConvertPublicToPrivateScrap() ; + +#if !TARGET_CARBON + virtual void MacHandleMenuSelect( int menuid , int menuitem ) ; + virtual void MacHandleMouseUpEvent( WXEVENTREF ev ) ; + virtual void MacHandleOSEvent( WXEVENTREF ev ) ; + virtual void MacHandleDiskEvent( WXEVENTREF ev ) ; + virtual void MacHandleActivateEvent( WXEVENTREF ev ) ; + virtual void MacHandleUpdateEvent( WXEVENTREF ev ) ; +#endif + virtual void MacHandleMouseDownEvent( WXEVENTREF ev ) ; + void MacHandleMenuCommand( wxUint32 command ) ; // event main methods void MacDoOneEvent() ; @@ -143,16 +164,9 @@ public: // primary events - virtual void MacHandleMouseDownEvent( WXEVENTREF ev ) ; - virtual void MacHandleMouseUpEvent( WXEVENTREF ev ) ; - virtual void MacHandleActivateEvent( WXEVENTREF ev ) ; - virtual void MacHandleUpdateEvent( WXEVENTREF ev ) ; virtual void MacHandleKeyDownEvent( WXEVENTREF ev ) ; virtual void MacHandleKeyUpEvent( WXEVENTREF ev ) ; - virtual void MacHandleDiskEvent( WXEVENTREF ev ) ; - virtual void MacHandleOSEvent( WXEVENTREF ev ) ; virtual void MacHandleHighLevelEvent( WXEVENTREF ev ) ; - virtual void MacHandleMenuSelect( int menuid , int menuitem ) ; virtual bool MacSendKeyDownEvent( wxWindow* focus , long keyval , long modifiers , long when , short wherex , short wherey ) ; virtual bool MacSendKeyUpEvent( wxWindow* focus , long keyval , long modifiers , long when , short wherex , short wherey ) ; diff --git a/include/wx/mac/toplevel.h b/include/wx/mac/toplevel.h index f5da13f870..f101e5626d 100644 --- a/include/wx/mac/toplevel.h +++ b/include/wx/mac/toplevel.h @@ -75,13 +75,15 @@ public: virtual void Clear() ; virtual WXWidget MacGetContainerForEmbedding() ; WXWindow MacGetWindowRef() { return m_macWindow ; } - virtual void MacActivate( WXEVENTREF ev , bool inIsActivating ) ; + virtual void MacActivate( long timestamp , bool inIsActivating ) ; virtual void MacUpdate( long timestamp ) ; +#if !TARGET_CARBON virtual void MacMouseDown( WXEVENTREF ev , short windowPart ) ; virtual void MacMouseUp( WXEVENTREF ev , short windowPart ) ; virtual void MacMouseMoved( WXEVENTREF ev , short windowPart ) ; virtual void MacKeyDown( WXEVENTREF ev ) ; - virtual void MacFireMouseEvent( WXEVENTREF ev ) ; +#endif + virtual void MacFireMouseEvent( wxUint16 kind , wxInt32 x , wxInt32 y ,wxUint32 modifiers , long timestamp ) ; virtual void Raise(); virtual void Lower(); virtual void SetTitle( const wxString& title); @@ -89,7 +91,10 @@ public: virtual void DoMoveWindow(int x, int y, int width, int height); void MacInvalidate( const WXRECTPTR rect, bool eraseBackground ) ; short MacGetWindowBackgroundTheme() const { return m_macWindowBackgroundTheme ; } - virtual void MacInstallEventHandler() ; + +#if TARGET_CARBON + WXEVENTHANDLERREF MacGetEventHandler() { return m_macEventHandler ; } +#endif protected: // common part of all ctors void Init(); @@ -107,9 +112,12 @@ protected: wxWindowMac* m_macFocus ; WXHRGN m_macNoEraseUpdateRgn ; bool m_macNeedsErasing ; - void* m_macEventHandler ; static WXWindow s_macWindowInUpdate ; +private : +#if TARGET_CARBON + WXEVENTHANDLERREF m_macEventHandler ; +#endif }; // list of all frames and modeless dialogs -- 2.47.2