X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/cca410b336cd5628a944ede9e9944fdbb04552d4..51181d291194b7ae616cfb17c984fd8927e4a977:/include/wx/gtk/toplevel.h diff --git a/include/wx/gtk/toplevel.h b/include/wx/gtk/toplevel.h index f3d8c858fe..1670cff486 100644 --- a/include/wx/gtk/toplevel.h +++ b/include/wx/gtk/toplevel.h @@ -98,23 +98,27 @@ public: int m_gdkFunc, m_gdkDecor; + // size of WM decorations + wxSize m_decorSize; + + // shape of the frame + wxRegion m_shape; + // private gtk_timeout_add result for mimicing wxUSER_ATTENTION_INFO and // wxUSER_ATTENTION_ERROR difference, -2 for no hint, -1 for ERROR hint, rest for GtkTimeout handle. int m_urgency_hint; - // give hints to the Window Manager for how the size - // of the TLW can be changed by dragging - virtual void DoSetSizeHints( int minW, int minH, - int maxW = wxDefaultCoord, int maxH = wxDefaultCoord, - int incW = wxDefaultCoord, int incH = wxDefaultCoord ); - // return the size of the window without WM decorations void GTKDoGetSize(int *width, int *height) const; - // whether frame extents are accurate - virtual bool IsDecorCacheable() const; + void GTKUpdateDecorSize(const wxSize& decorSize); protected: + // give hints to the Window Manager for how the size + // of the TLW can be changed by dragging + virtual void DoSetSizeHints( int minW, int minH, + int maxW, int maxH, + int incW, int incH); // common part of all ctors void Init(); @@ -126,18 +130,24 @@ protected: int width, int height, int sizeFlags = wxSIZE_AUTO); - // override these methods to take into account tool/menu/statusbars + virtual void DoSetClientSize(int width, int height); virtual void DoGetClientSize(int *width, int *height) const; // string shown in the title bar wxString m_title; + bool m_deferShow; + private: + wxSize& GetCachedDecorSize(); + // is the frame currently iconized? bool m_isIconized; // is the frame currently grabbed explicitly by the application? bool m_grabbed; + + bool m_updateDecorSize; }; #endif // _WX_GTK_TOPLEVEL_H_