]>
Commit | Line | Data |
---|---|---|
23324ae1 FM |
1 | ///////////////////////////////////////////////////////////////////////////// |
2 | // Name: choicebk.h | |
e54c96f1 | 3 | // Purpose: interface of wxChoicebook |
23324ae1 | 4 | // Author: wxWidgets team |
526954c5 | 5 | // Licence: wxWindows licence |
23324ae1 FM |
6 | ///////////////////////////////////////////////////////////////////////////// |
7 | ||
e1b7217e RD |
8 | |
9 | // wxChoicebook flags | |
10 | #define wxCHB_DEFAULT wxBK_DEFAULT | |
11 | #define wxCHB_TOP wxBK_TOP | |
12 | #define wxCHB_BOTTOM wxBK_BOTTOM | |
13 | #define wxCHB_LEFT wxBK_LEFT | |
14 | #define wxCHB_RIGHT wxBK_RIGHT | |
15 | #define wxCHB_ALIGN_MASK wxBK_ALIGN_MASK | |
16 | ||
ce7fe42e VZ |
17 | wxEventType wxEVT_CHOICEBOOK_PAGE_CHANGED; |
18 | wxEventType wxEVT_CHOICEBOOK_PAGE_CHANGING; | |
e1b7217e | 19 | |
23324ae1 FM |
20 | /** |
21 | @class wxChoicebook | |
7c913512 | 22 | |
bfac6166 BP |
23 | wxChoicebook is a class similar to wxNotebook, but uses a wxChoice control |
24 | to show the labels instead of the tabs. | |
7c913512 | 25 | |
340e9651 FM |
26 | For usage documentation of this class, please refer to the base abstract class |
27 | wxBookCtrl. You can also use the @ref page_samples_notebook to see wxChoicebook in | |
28 | action. | |
7c913512 | 29 | |
bfac6166 BP |
30 | wxChoicebook allows the use of wxBookCtrlBase::GetControlSizer(), allowing |
31 | a program to add other controls next to the choice control. This is | |
32 | particularly useful when screen space is restricted, as it often is when | |
33 | wxChoicebook is being employed. | |
7c913512 | 34 | |
23324ae1 | 35 | @beginStyleTable |
8c6791e4 | 36 | @style{wxCHB_DEFAULT} |
23324ae1 FM |
37 | Choose the default location for the labels depending on the current |
38 | platform (left everywhere except Mac where it is top). | |
8c6791e4 | 39 | @style{wxCHB_TOP} |
23324ae1 | 40 | Place labels above the page area. |
8c6791e4 | 41 | @style{wxCHB_LEFT} |
23324ae1 | 42 | Place labels on the left side. |
8c6791e4 | 43 | @style{wxCHB_RIGHT} |
23324ae1 | 44 | Place labels on the right side. |
8c6791e4 | 45 | @style{wxCHB_BOTTOM} |
23324ae1 FM |
46 | Place labels below the page area. |
47 | @endStyleTable | |
7c913512 | 48 | |
3051a44a | 49 | @beginEventEmissionTable{wxBookCtrlEvent} |
8c6791e4 | 50 | @event{EVT_CHOICEBOOK_PAGE_CHANGED(id, func)} |
340e9651 | 51 | The page selection was changed. |
ce7fe42e | 52 | Processes a @c wxEVT_CHOICEBOOK_PAGE_CHANGED event. |
8c6791e4 | 53 | @event{EVT_CHOICEBOOK_PAGE_CHANGING(id, func)} |
340e9651 | 54 | The page selection is about to be changed. |
ce7fe42e | 55 | Processes a @c wxEVT_CHOICEBOOK_PAGE_CHANGING event. |
340e9651 | 56 | This event can be vetoed (using wxNotifyEvent::Veto()). |
bfac6166 BP |
57 | @endEventTable |
58 | ||
23324ae1 | 59 | @library{wxcore} |
3c99e2fd | 60 | @category{bookctrl} |
ce154616 | 61 | @appearance{choicebook} |
7c913512 | 62 | |
bfac6166 | 63 | @see @ref overview_bookctrl, wxNotebook, @ref page_samples_notebook |
23324ae1 | 64 | */ |
bfac6166 | 65 | class wxChoicebook : public wxBookCtrlBase |
23324ae1 FM |
66 | { |
67 | public: | |
68 | //@{ | |
69 | /** | |
70 | Constructs a choicebook control. | |
71 | */ | |
72 | wxChoicebook(); | |
7c913512 FM |
73 | wxChoicebook(wxWindow* parent, wxWindowID id, |
74 | const wxPoint& pos = wxDefaultPosition, | |
75 | const wxSize& size = wxDefaultSize, | |
76 | long style = 0, | |
6f65f436 | 77 | const wxString& name = wxEmptyString); |
23324ae1 | 78 | //@} |
bfac6166 | 79 | |
e1b7217e RD |
80 | /** |
81 | Create the choicebook control that has already been constructed with | |
82 | the default constructor. | |
83 | */ | |
84 | bool Create(wxWindow *parent, | |
85 | wxWindowID id, | |
86 | const wxPoint& pos = wxDefaultPosition, | |
87 | const wxSize& size = wxDefaultSize, | |
88 | long style = 0, | |
89 | const wxString& name = wxEmptyString); | |
90 | ||
91 | ||
bfac6166 BP |
92 | /** |
93 | Returns the wxChoice associated with the control. | |
94 | */ | |
95 | wxChoice * GetChoiceCtrl() const; | |
23324ae1 | 96 | }; |
e54c96f1 | 97 |