X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/428f841bd05025c94626d3ddf357a02901e87bc4..14b44999eb335f3fc84b4362980b1730b8887588:/include/wx/gtk/toplevel.h diff --git a/include/wx/gtk/toplevel.h b/include/wx/gtk/toplevel.h index 62bbf36115..635475bf9a 100644 --- a/include/wx/gtk/toplevel.h +++ b/include/wx/gtk/toplevel.h @@ -16,7 +16,7 @@ class WXDLLIMPEXP_CORE wxTopLevelWindowGTK : public wxTopLevelWindowBase { - DECLARE_EVENT_TABLE() + typedef wxTopLevelWindowBase base_type; public: // construction wxTopLevelWindowGTK() { Init(); } @@ -53,6 +53,7 @@ public: virtual bool EnableCloseButton(bool enable = true); + virtual void ShowWithoutActivating(); virtual bool ShowFullScreen(bool show, long style = wxFULLSCREEN_ALL); virtual bool IsFullScreen() const { return m_fsIsShowing; }; @@ -71,6 +72,10 @@ public: virtual void SetTitle( const wxString &title ); virtual wxString GetTitle() const { return m_title; } + virtual void SetLabel(const wxString& label) { SetTitle( label ); } + virtual wxString GetLabel() const { return GetTitle(); } + + virtual bool SetTransparent(wxByte alpha); virtual bool CanSetTransparent(); @@ -80,22 +85,21 @@ public: virtual void RemoveGrab(); virtual bool IsGrabbed() const { return m_grabbed; } + + virtual void Refresh( bool eraseBackground = true, + const wxRect *rect = (const wxRect *) NULL ); + // implementation from now on // -------------------------- // 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; @@ -107,6 +111,9 @@ public: // 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; @@ -114,6 +121,8 @@ public: // return the size of the window without WM decorations void GTKDoGetSize(int *width, int *height) 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 @@ -137,12 +146,19 @@ protected: // 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; + bool m_deferShowAllowed; }; #endif // _WX_GTK_TOPLEVEL_H_