2011-10-13 08:45:56 -04:00
|
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
|
|
// Name: wx/gtk/nonownedwnd.h
|
|
|
|
// Purpose: wxGTK-specific wxNonOwnedWindow declaration.
|
|
|
|
// Author: Vadim Zeitlin
|
|
|
|
// Created: 2011-10-12
|
|
|
|
// RCS-ID: $Id: wxhead.h,v 1.12 2010-04-22 12:44:51 zeitlin Exp $
|
|
|
|
// Copyright: (c) 2011 Vadim Zeitlin <vadim@wxwidgets.org>
|
|
|
|
// Licence: wxWindows licence
|
|
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
|
|
|
#ifndef _WX_GTK_NONOWNEDWND_H_
|
|
|
|
#define _WX_GTK_NONOWNEDWND_H_
|
|
|
|
|
2011-10-18 17:56:52 -04:00
|
|
|
class wxNonOwnedWindowShapeImpl;
|
|
|
|
|
2011-10-13 08:45:56 -04:00
|
|
|
// ----------------------------------------------------------------------------
|
|
|
|
// wxNonOwnedWindow contains code common to wx{Popup,TopLevel}Window in wxGTK.
|
|
|
|
// ----------------------------------------------------------------------------
|
|
|
|
|
|
|
|
class WXDLLIMPEXP_CORE wxNonOwnedWindow : public wxNonOwnedWindowBase
|
|
|
|
{
|
|
|
|
public:
|
2011-10-18 17:56:52 -04:00
|
|
|
wxNonOwnedWindow() { m_shapeImpl = NULL; }
|
|
|
|
virtual ~wxNonOwnedWindow();
|
2011-10-13 08:45:56 -04:00
|
|
|
|
|
|
|
// Overridden to actually set the shape when the window becomes realized.
|
|
|
|
virtual void GTKHandleRealized();
|
|
|
|
|
2011-10-18 17:56:52 -04:00
|
|
|
protected:
|
|
|
|
virtual bool DoClearShape();
|
|
|
|
virtual bool DoSetRegionShape(const wxRegion& region);
|
|
|
|
#if wxUSE_GRAPHICS_CONTEXT
|
|
|
|
virtual bool DoSetPathShape(const wxGraphicsPath& path);
|
|
|
|
#endif // wxUSE_GRAPHICS_CONTEXT
|
|
|
|
|
|
|
|
|
2011-10-13 08:45:56 -04:00
|
|
|
private:
|
2011-10-18 17:56:52 -04:00
|
|
|
// If non-NULL, contains information about custom window shape.
|
|
|
|
wxNonOwnedWindowShapeImpl* m_shapeImpl;
|
2011-10-13 08:45:56 -04:00
|
|
|
|
|
|
|
wxDECLARE_NO_COPY_CLASS(wxNonOwnedWindow);
|
|
|
|
};
|
|
|
|
|
|
|
|
#endif // _WX_GTK_NONOWNEDWND_H_
|