]> git.saurik.com Git - wxWidgets.git/blob - include/wx/panel.h
Make storing non-trivial data in wxThreadSpecificInfo possible.
[wxWidgets.git] / include / wx / panel.h
1 /////////////////////////////////////////////////////////////////////////////
2 // Name: wx/panel.h
3 // Purpose: Base header for wxPanel
4 // Author: Julian Smart
5 // Modified by:
6 // Created:
7 // Copyright: (c) Julian Smart
8 // (c) 2011 Vadim Zeitlin <vadim@wxwidgets.org>
9 // Licence: wxWindows Licence
10 /////////////////////////////////////////////////////////////////////////////
11
12 #ifndef _WX_PANEL_H_BASE_
13 #define _WX_PANEL_H_BASE_
14
15 // ----------------------------------------------------------------------------
16 // headers and forward declarations
17 // ----------------------------------------------------------------------------
18
19 #include "wx/window.h"
20 #include "wx/containr.h"
21
22 class WXDLLIMPEXP_FWD_CORE wxControlContainer;
23
24 extern WXDLLIMPEXP_DATA_CORE(const char) wxPanelNameStr[];
25
26 // ----------------------------------------------------------------------------
27 // wxPanel contains other controls and implements TAB traversal between them
28 // ----------------------------------------------------------------------------
29
30 class WXDLLIMPEXP_CORE wxPanelBase : public wxNavigationEnabled<wxWindow>
31 {
32 public:
33 wxPanelBase() { }
34
35 // Derived classes should also provide this constructor:
36 /*
37 wxPanelBase(wxWindow *parent,
38 wxWindowID winid = wxID_ANY,
39 const wxPoint& pos = wxDefaultPosition,
40 const wxSize& size = wxDefaultSize,
41 long style = wxTAB_TRAVERSAL | wxNO_BORDER,
42 const wxString& name = wxPanelNameStr);
43 */
44
45 // Pseudo ctor
46 bool Create(wxWindow *parent,
47 wxWindowID winid = wxID_ANY,
48 const wxPoint& pos = wxDefaultPosition,
49 const wxSize& size = wxDefaultSize,
50 long style = wxTAB_TRAVERSAL | wxNO_BORDER,
51 const wxString& name = wxPanelNameStr);
52
53
54 // implementation from now on
55 // --------------------------
56
57 virtual void InitDialog();
58
59 private:
60 wxDECLARE_NO_COPY_CLASS(wxPanelBase);
61 };
62
63 #if defined(__WXUNIVERSAL__)
64 #include "wx/univ/panel.h"
65 #elif defined(__WXMSW__)
66 #include "wx/msw/panel.h"
67 #else
68 #define wxHAS_GENERIC_PANEL
69 #include "wx/generic/panelg.h"
70 #endif
71
72 #endif // _WX_PANELH_BASE_