1 /////////////////////////////////////////////////////////////////////////////
3 // Purpose: Base header for wxPanel
4 // Author: Julian Smart
8 // Copyright: (c) Julian Smart
9 // (c) 2011 Vadim Zeitlin <vadim@wxwidgets.org>
10 // Licence: wxWindows Licence
11 /////////////////////////////////////////////////////////////////////////////
13 #ifndef _WX_PANEL_H_BASE_
14 #define _WX_PANEL_H_BASE_
16 // ----------------------------------------------------------------------------
17 // headers and forward declarations
18 // ----------------------------------------------------------------------------
20 #include "wx/window.h"
21 #include "wx/containr.h"
23 class WXDLLIMPEXP_FWD_CORE wxControlContainer
;
25 extern WXDLLIMPEXP_DATA_CORE(const char) wxPanelNameStr
[];
27 // ----------------------------------------------------------------------------
28 // wxPanel contains other controls and implements TAB traversal between them
29 // ----------------------------------------------------------------------------
31 class WXDLLIMPEXP_CORE wxPanelBase
: public wxWindow
36 // Derived classes should also provide this constructor:
38 wxPanelBase(wxWindow *parent,
39 wxWindowID winid = wxID_ANY,
40 const wxPoint& pos = wxDefaultPosition,
41 const wxSize& size = wxDefaultSize,
42 long style = wxTAB_TRAVERSAL | wxNO_BORDER,
43 const wxString& name = wxPanelNameStr);
47 bool Create(wxWindow
*parent
,
48 wxWindowID winid
= wxID_ANY
,
49 const wxPoint
& pos
= wxDefaultPosition
,
50 const wxSize
& size
= wxDefaultSize
,
51 long style
= wxTAB_TRAVERSAL
| wxNO_BORDER
,
52 const wxString
& name
= wxPanelNameStr
);
55 // Use the given bitmap to tile the background of this panel. This bitmap
56 // will show through any transparent children.
58 // Notice that you must not prevent the base class EVT_ERASE_BACKGROUND
59 // handler from running (i.e. not to handle this event yourself) for this
61 void SetBackgroundBitmap(const wxBitmap
& bmp
)
63 DoSetBackgroundBitmap(bmp
);
67 // implementation from now on
68 // --------------------------
70 virtual void InitDialog();
72 WX_DECLARE_CONTROL_CONTAINER();
75 virtual void DoSetBackgroundBitmap(const wxBitmap
& bmp
) = 0;
78 wxDECLARE_EVENT_TABLE();
80 wxDECLARE_NO_COPY_CLASS(wxPanelBase
);
83 #if defined(__WXUNIVERSAL__)
84 #include "wx/univ/panel.h"
85 #elif defined(__WXMSW__)
86 #include "wx/msw/panel.h"
88 #define wxHAS_GENERIC_PANEL
89 #include "wx/generic/panelg.h"
92 #endif // _WX_PANELH_BASE_