X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/8cf73271dd6f442a98e86b559d4a55c37e25b99f..09b895cb4a954494063eb17d3dc302a654fd99e5:/include/wx/mac/carbon/toplevel.h diff --git a/include/wx/mac/carbon/toplevel.h b/include/wx/mac/carbon/toplevel.h index ffb0bcd288..d5e11e79ce 100644 --- a/include/wx/mac/carbon/toplevel.h +++ b/include/wx/mac/carbon/toplevel.h @@ -1,5 +1,5 @@ /////////////////////////////////////////////////////////////////////////////// -// Name: wx/mac/toplevel.h +// Name: wx/mac/carbon/toplevel.h // Purpose: wxTopLevelWindowMac is the Mac implementation of wxTLW // Author: Stefan Csomor // Modified by: @@ -12,19 +12,11 @@ #ifndef _WX_MSW_TOPLEVEL_H_ #define _WX_MSW_TOPLEVEL_H_ -#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) - #pragma interface "toplevel.h" -#endif - -#if wxUSE_SYSTEM_OPTIONS - #define wxMAC_WINDOW_PLAIN_TRANSITION _T("mac.window-plain-transition") -#endif - // ---------------------------------------------------------------------------- // wxTopLevelWindowMac // ---------------------------------------------------------------------------- -class WXDLLEXPORT wxTopLevelWindowMac : public wxTopLevelWindowBase +class WXDLLIMPEXP_CORE wxTopLevelWindowMac : public wxTopLevelWindowBase { public: // constructors and such @@ -53,57 +45,28 @@ public: virtual ~wxTopLevelWindowMac(); + virtual wxPoint GetClientAreaOrigin() const; + + // Attracts the users attention to this window if the application is + // inactive (should be called when a background event occurs) + virtual void RequestUserAttention(int flags = wxUSER_ATTENTION_INFO); + // implement base class pure virtuals - virtual void Maximize(bool maximize = TRUE); + virtual void Maximize(bool maximize = true); virtual bool IsMaximized() const; - virtual void Iconize(bool iconize = TRUE); + virtual void Iconize(bool iconize = true); virtual bool IsIconized() const; - virtual void SetIcon(const wxIcon& icon); - virtual void SetIcons(const wxIconBundle& icons) { SetIcon( icons.GetIcon( -1 ) ); } virtual void Restore(); - virtual bool SetShape(const wxRegion& region); - - virtual bool ShowFullScreen(bool WXUNUSED(show), long WXUNUSED(style) = wxFULLSCREEN_ALL) - { return FALSE; } - virtual bool IsFullScreen() const { return FALSE; } + virtual bool ShowFullScreen(bool show, long style = wxFULLSCREEN_ALL) ; + virtual bool IsFullScreen() const ; // implementation from now on // -------------------------- - static void MacDelayedDeactivation(long timestamp); - virtual void MacCreateRealWindow( const wxString& title, - const wxPoint& pos, - const wxSize& size, - long style, - const wxString& name ) ; - static WXWindow MacGetWindowInUpdate() { return s_macWindowInUpdate ; } - virtual void MacGetPortParams(WXPOINTPTR localOrigin, WXRECTPTR clipRect, WXWindow *window , wxWindowMac** rootwin ) ; - virtual void ClearBackground() ; - virtual WXWidget MacGetContainerForEmbedding() ; - WXWindow MacGetWindowRef() { return m_macWindow ; } - 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 ) ; -#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); - virtual bool Show( bool show = TRUE ); - virtual void DoMoveWindow(int x, int y, int width, int height); - void MacInvalidate( const WXRECTPTR rect, bool eraseBackground ) ; - short MacGetWindowBackgroundTheme() const { return m_macWindowBackgroundTheme ; } - static bool MacEnableCompositing( bool useCompositing ); - bool MacUsesCompositing() { return m_macUsesCompositing; } - -#if TARGET_CARBON - WXEVENTHANDLERREF MacGetEventHandler() { return m_macEventHandler ; } -#endif + virtual wxString GetTitle() const; + protected: // common part of all ctors void Init(); @@ -114,33 +77,10 @@ protected: // should the frame be maximized when it will be shown? set by Maximize() // when it is called while the frame is hidden bool m_maximizeOnShow; - bool m_macUsesCompositing ; - - short m_macWindowBackgroundTheme ; - WXWindow m_macWindow ; - WXWidget m_macRootControl ; - wxWindowMac* m_macFocus ; - WXHRGN m_macNoEraseUpdateRgn ; - bool m_macNeedsErasing ; - - static WXWindow s_macWindowInUpdate ; - static wxTopLevelWindowMac *s_macDeactivateWindow; - static bool s_macWindowCompositing ; + + void *m_macFullScreenData ; private : -#if TARGET_CARBON - WXEVENTHANDLERREF m_macEventHandler ; -#endif + DECLARE_EVENT_TABLE() }; -// list of all frames and modeless dialogs -extern WXDLLEXPORT_DATA(wxWindowList) wxModelessWindows; - -// associate mac windows with wx counterparts - -wxTopLevelWindowMac* wxFindWinFromMacWindow( WXWindow inWindow ) ; -void wxAssociateWinWithMacWindow(WXWindow inWindow, wxTopLevelWindowMac *win) ; -void wxRemoveMacWindowAssociation(wxTopLevelWindowMac *win) ; - - #endif // _WX_MSW_TOPLEVEL_H_ -