]> git.saurik.com Git - wxWidgets.git/blame - interface/wx/toolbook.h
Make storing non-trivial data in wxThreadSpecificInfo possible.
[wxWidgets.git] / interface / wx / toolbook.h
CommitLineData
23324ae1
FM
1/////////////////////////////////////////////////////////////////////////////
2// Name: toolbook.h
e54c96f1 3// Purpose: interface of wxToolbook
23324ae1 4// Author: wxWidgets team
526954c5 5// Licence: wxWindows licence
23324ae1
FM
6/////////////////////////////////////////////////////////////////////////////
7
e1b7217e
RD
8#define wxTBK_BUTTONBAR 0x0100
9#define wxTBK_HORZ_LAYOUT 0x8000
10
ce7fe42e
VZ
11wxEventType wxEVT_TOOLBOOK_PAGE_CHANGED;
12wxEventType wxEVT_TOOLBOOK_PAGE_CHANGING;
e1b7217e
RD
13
14
23324ae1
FM
15/**
16 @class wxToolbook
7c913512 17
f992f2ae
BP
18 wxToolbook is a class similar to wxNotebook but which uses a wxToolBar to
19 show the labels instead of the tabs.
7c913512 20
f992f2ae
BP
21 There is no documentation for this class yet but its usage is identical to
22 wxNotebook (except for the features clearly related to tabs only), so please
23 refer to that class documentation for now. You can also use the
24 @ref page_samples_notebook to see wxToolbook in action.
7c913512 25
23324ae1 26 @beginStyleTable
8c6791e4 27 @style{wxTBK_BUTTONBAR}
f992f2ae
BP
28 Use wxButtonToolBar-based implementation under Mac OS (ignored under
29 other platforms).
8c6791e4 30 @style{wxTBK_HORZ_LAYOUT}
f992f2ae 31 Shows the text and the icons alongside, not vertically stacked (only
340e9651
FM
32 implement under Windows and GTK 2 platforms as it relies on
33 @c wxTB_HORZ_LAYOUT flag support).
23324ae1 34 @endStyleTable
7c913512 35
f992f2ae
BP
36 The common wxBookCtrl styles described in the @ref overview_bookctrl are
37 also supported.
38
3051a44a 39 @beginEventEmissionTable{wxBookCtrlEvent}
340e9651
FM
40 @event{EVT_TOOLBOOK_PAGE_CHANGED(id, func)}
41 The page selection was changed.
ce7fe42e 42 Processes a @c wxEVT_TOOLBOOK_PAGE_CHANGED event.
340e9651
FM
43 @event{EVT_TOOLBOOK_PAGE_CHANGING(id, func)}
44 The page selection is about to be changed.
ce7fe42e 45 Processes a @c wxEVT_TOOLBOOK_PAGE_CHANGING event.
340e9651
FM
46 This event can be vetoed (using wxNotifyEvent::Veto()).
47 @endEventTable
48
23324ae1 49 @library{wxcore}
3c99e2fd 50 @category{bookctrl}
7c913512 51
f992f2ae
BP
52 @see @ref overview_bookctrl, wxBookCtrlBase, wxNotebook,
53 @ref page_samples_notebook
23324ae1 54*/
f992f2ae 55class wxToolbook : public wxBookCtrlBase
23324ae1
FM
56{
57public:
340e9651
FM
58 //@{
59 /**
60 Constructs a choicebook control.
61 */
62 wxToolbook();
63 wxToolbook(wxWindow* parent, wxWindowID id,
64 const wxPoint& pos = wxDefaultPosition,
65 const wxSize& size = wxDefaultSize,
66 long style = 0,
6f65f436 67 const wxString& name = wxEmptyString);
340e9651 68 //@}
7c913512 69
e1b7217e
RD
70 /**
71 Create the tool book control that has already been constructed with
72 the default constructor.
73 */
74 bool Create(wxWindow *parent,
75 wxWindowID id,
76 const wxPoint& pos = wxDefaultPosition,
77 const wxSize& size = wxDefaultSize,
78 long style = 0,
79 const wxString& name = wxEmptyString);
80
340e9651
FM
81 /**
82 Returns the wxToolBarBase associated with the control.
83 */
84 wxToolBarBase* GetToolBar() const;
23324ae1 85};
e54c96f1 86