X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/b2e10daccc99be6d3ca7a206c69e94d3bfe6b03d..60913641356f364a5efee5966d3a3b0b48c01001:/include/wx/gtk/toplevel.h diff --git a/include/wx/gtk/toplevel.h b/include/wx/gtk/toplevel.h index 2224a9a2c5..e059880ab3 100644 --- a/include/wx/gtk/toplevel.h +++ b/include/wx/gtk/toplevel.h @@ -16,7 +16,6 @@ class WXDLLIMPEXP_CORE wxTopLevelWindowGTK : public wxTopLevelWindowBase { - DECLARE_EVENT_TABLE() public: // construction wxTopLevelWindowGTK() { Init(); } @@ -86,14 +85,13 @@ public: // GTK callbacks virtual void OnInternalIdle(); - // Respond to system colour change - void OnSysColourChanged(wxSysColourChangedEvent& event); - // do *not* call this to iconize the frame, this is a private function! void SetIconizeState(bool iconic); GtkWidget *m_mainWidget; + bool m_deferShow; + bool m_fsIsShowing; /* full screen */ int m_fsSaveGdkFunc, m_fsSaveGdkDecor; wxRect m_fsSaveFrame; @@ -102,6 +100,12 @@ 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; @@ -109,8 +113,7 @@ public: // 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 @@ -129,13 +132,15 @@ 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; private: + wxSize& GetCachedDecorSize(); + // is the frame currently iconized? bool m_isIconized;