X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/11d8dfd2fb6cf04c4695e0aed64288b931b86eb6..a7689c49fe02c0c065facf736ab28b19f5997b7c:/include/wx/gtk/toplevel.h diff --git a/include/wx/gtk/toplevel.h b/include/wx/gtk/toplevel.h index 1670cff486..768f2e14f5 100644 --- a/include/wx/gtk/toplevel.h +++ b/include/wx/gtk/toplevel.h @@ -16,6 +16,7 @@ class WXDLLIMPEXP_CORE wxTopLevelWindowGTK : public wxTopLevelWindowBase { + typedef wxTopLevelWindowBase base_type; public: // construction wxTopLevelWindowGTK() { Init(); } @@ -52,10 +53,9 @@ 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; }; - - virtual bool SetShape(const wxRegion& region); + virtual bool IsFullScreen() const { return m_fsIsShowing; } virtual void RequestUserAttention(int flags = wxUSER_ATTENTION_INFO); @@ -70,6 +70,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(); @@ -79,12 +83,18 @@ 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(); + virtual void GTKHandleRealized(); + // do *not* call this to iconize the frame, this is a private function! void SetIconizeState(bool iconic); @@ -101,12 +111,11 @@ 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; + // timer for detecting WM with broken _NET_REQUEST_FRAME_EXTENTS handling + unsigned m_netFrameExtentsTimerId; // return the size of the window without WM decorations void GTKDoGetSize(int *width, int *height) const; @@ -119,9 +128,6 @@ protected: virtual void DoSetSizeHints( int minW, int minH, int maxW, int maxH, int incW, int incH); - // common part of all ctors - void Init(); - // move the window to the specified location and resize it virtual void DoMoveWindow(int x, int y, int width, int height); @@ -139,8 +145,12 @@ protected: bool m_deferShow; private: + void Init(); wxSize& GetCachedDecorSize(); + // size hint increments + int m_incWidth, m_incHeight; + // is the frame currently iconized? bool m_isIconized; @@ -148,6 +158,7 @@ private: bool m_grabbed; bool m_updateDecorSize; + bool m_deferShowAllowed; }; #endif // _WX_GTK_TOPLEVEL_H_