X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/ff6893d2c2c05cf0c4e81f00cfdd6466b15b9c93..036718302c7d11d60216aca820dd6c08534e7804:/include/wx/osx/window.h diff --git a/include/wx/osx/window.h b/include/wx/osx/window.h index c7398555c9..184e135910 100644 --- a/include/wx/osx/window.h +++ b/include/wx/osx/window.h @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: include/wx/mac/carbon/window.h +// Name: wx/osx/window.h // Purpose: wxWindowMac class // Author: Stefan Csomor // Modified by: @@ -63,6 +63,16 @@ public: virtual void Lower(); virtual bool Show( bool show = true ); + virtual bool ShowWithEffect(wxShowEffect effect, + unsigned timeout = 0) + { + return OSXShowWithEffect(true, effect, timeout); + } + virtual bool HideWithEffect(wxShowEffect effect, + unsigned timeout = 0) + { + return OSXShowWithEffect(false, effect, timeout); + } virtual bool IsShownOnScreen() const; @@ -81,6 +91,8 @@ public: virtual bool SetBackgroundColour( const wxColour &colour ); virtual bool SetForegroundColour( const wxColour &colour ); + virtual bool SetBackgroundStyle(wxBackgroundStyle style); + virtual int GetCharHeight() const; virtual int GetCharWidth() const; @@ -144,8 +156,6 @@ public: static long MacRemoveBordersFromStyle( long style ) ; public: - void OnInternalIdle(); - // For implementation purposes: // sometimes decorations make the client area smaller virtual wxPoint GetClientAreaOrigin() const; @@ -170,6 +180,7 @@ public: WXWindow MacGetTopLevelWindowRef() const ; wxNonOwnedWindow* MacGetTopLevelWindow() const ; + virtual long MacGetWXBorderSize() const; virtual long MacGetLeftBorderSize() const ; virtual long MacGetRightBorderSize() const ; virtual long MacGetTopBorderSize() const ; @@ -218,7 +229,7 @@ public: { return ((wxWindow*)m_hScrollBar == sb || (wxWindow*)m_vScrollBar == sb) ; } virtual bool IsClientAreaChild(const wxWindow *child) const { - return !MacIsWindowScrollbar(child) && + return !MacIsWindowScrollbar(child) && !((wxWindow*)m_growBox==child) && wxWindowBase::IsClientAreaChild(child); } @@ -253,6 +264,11 @@ public: virtual bool OSXHandleClicked( double timestampsec ); virtual bool OSXHandleKeyEvent( wxKeyEvent& event ); + + bool IsNativeWindowWrapper() const { return m_isNativeWindowWrapper; } + + float GetContentScaleFactor() const ; + protected: // For controls like radio buttons which are genuinely composite wxList m_subControls; @@ -285,9 +301,11 @@ protected: wxScrollBar* m_vScrollBar ; bool m_hScrollBarAlwaysShown; bool m_vScrollBarAlwaysShown; - wxPanel* m_growBox ; + wxWindow* m_growBox ; wxString m_label ; + bool m_isNativeWindowWrapper; + // set to true if we do a sharp clip at the content area of this window // must be dynamic as eg a panel normally is not clipping precisely, but if // it becomes the target window of a scrolled window it has to... @@ -341,6 +359,11 @@ protected: virtual void DoSetToolTip( wxToolTip *tip ); #endif + // common part of Show/HideWithEffect() + virtual bool OSXShowWithEffect(bool show, + wxShowEffect effect, + unsigned timeout); + private: // common part of all ctors void Init(); @@ -349,7 +372,6 @@ private: // AlwaysShowScrollbars() void DoUpdateScrollbarVisibility(); - wxDECLARE_NO_COPY_CLASS(wxWindowMac); DECLARE_EVENT_TABLE() };