X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/77ffb5937e89927b621128789401db8921fe580f..d6d6a882d4d8ea0d7ef706a45fa92b96f34c94c7:/include/wx/mac/carbon/window.h diff --git a/include/wx/mac/carbon/window.h b/include/wx/mac/carbon/window.h index 3ada877748..01b5e495d4 100644 --- a/include/wx/mac/carbon/window.h +++ b/include/wx/mac/carbon/window.h @@ -6,7 +6,7 @@ // Created: 1998-01-01 // RCS-ID: $Id$ // Copyright: (c) Stefan Csomor -// Licence: wxWidgets licence +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// #ifndef _WX_WINDOW_H_ @@ -26,6 +26,10 @@ class WXDLLEXPORT wxButton; class WXDLLEXPORT wxScrollBar; class WXDLLEXPORT wxTopLevelWindowMac; +// internal implementation classes + +class wxMacControl ; + // --------------------------------------------------------------------------- // constants // --------------------------------------------------------------------------- @@ -39,19 +43,14 @@ class WXDLLEXPORT wxWindowMac: public wxWindowBase public: - wxWindowMac() - { Init(); } + wxWindowMac() ; wxWindowMac(wxWindowMac *parent, wxWindowID id, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = 0, - const wxString& name = wxPanelNameStr) - { - Init(); - Create(parent, id, pos, size, style, name); - } + const wxString& name = wxPanelNameStr) ; virtual ~wxWindowMac(); @@ -131,7 +130,7 @@ public: // simple accessors // ---------------- - virtual WXWidget GetHandle() const { return m_macControl ; } + virtual WXWidget GetHandle() const ; #if WXWIN_COMPATIBILITY_2_4 bool GetTransparentBackground() const { return m_backgroundTransparent; } @@ -196,7 +195,7 @@ public: virtual void Update() ; virtual bool MacSetupCursor( const wxPoint& pt ) ; - virtual void MacSetBackgroundBrush( const wxBrush &brush ) { m_macBackgroundBrush = brush ; } + virtual void MacSetBackgroundBrush( const wxBrush &brush ) ; const wxBrush& MacGetBackgroundBrush() const { return m_macBackgroundBrush ; } // returns the visible region of this control in window ie non-client coordinates @@ -206,7 +205,7 @@ public: { return (m_hScrollBar == sb || m_vScrollBar == sb) ; } wxList& GetSubcontrols() { return m_subControls; } - virtual void MacInstallEventHandler() ; + virtual void MacInstallEventHandler(WXWidget native) ; virtual void MacRedrawControl(); WXEVENTHANDLERREF MacGetControlEventHandler() { return m_macControlEventHandler ; } void MacPostControlCreate(const wxPoint& pos, const wxSize& size) ; @@ -234,13 +233,16 @@ public: // gets the inset from every part virtual void MacGetContentAreaInset( int &left , int &top , int &right , int &bottom ) ; + // flash the current invalid area, useful for debugging in OSX double buffered situation + void MacFlashInvalidAreas() ; + protected: // For controls like radiobuttons which are really composite wxList m_subControls; // number of calls to Freeze() minus number of calls to Thaw() unsigned int m_frozenness; - // the true native ControlRef / = HIViewRef on OSX - WXWidget m_macControl ; + // the peer object, allowing for cleaner API support + wxMacControl* m_peer ; // true if is is not a native control but a wxWindow control bool m_macIsUserPane ; wxBrush m_macBackgroundBrush ; @@ -261,7 +263,7 @@ protected: void MacPropagateEnabledStateChanged() ; void MacPropagateHiliteChanged() ; - + #if WXWIN_COMPATIBILITY_2_4 bool m_backgroundTransparent ; #endif