X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/a82afab363d472b412823d645091ced8a60b6c14..8e77fd8bca165aab9709649d79a7cbc6a172d4e1:/include/wx/gtk/nonownedwnd.h diff --git a/include/wx/gtk/nonownedwnd.h b/include/wx/gtk/nonownedwnd.h index a722e27606..bad674cca2 100644 --- a/include/wx/gtk/nonownedwnd.h +++ b/include/wx/gtk/nonownedwnd.h @@ -11,6 +11,8 @@ #ifndef _WX_GTK_NONOWNEDWND_H_ #define _WX_GTK_NONOWNEDWND_H_ +class wxNonOwnedWindowShapeImpl; + // ---------------------------------------------------------------------------- // wxNonOwnedWindow contains code common to wx{Popup,TopLevel}Window in wxGTK. // ---------------------------------------------------------------------------- @@ -18,16 +20,23 @@ class WXDLLIMPEXP_CORE wxNonOwnedWindow : public wxNonOwnedWindowBase { public: - wxNonOwnedWindow() { } - - virtual bool SetShape(const wxRegion& region); + wxNonOwnedWindow() { m_shapeImpl = NULL; } + virtual ~wxNonOwnedWindow(); // Overridden to actually set the shape when the window becomes realized. virtual void GTKHandleRealized(); +protected: + virtual bool DoClearShape(); + virtual bool DoSetRegionShape(const wxRegion& region); +#if wxUSE_GRAPHICS_CONTEXT + virtual bool DoSetPathShape(const wxGraphicsPath& path); +#endif // wxUSE_GRAPHICS_CONTEXT + + private: - // If valid, defines the custom shape of the window. - wxRegion m_shape; + // If non-NULL, contains information about custom window shape. + wxNonOwnedWindowShapeImpl* m_shapeImpl; wxDECLARE_NO_COPY_CLASS(wxNonOwnedWindow); };