X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/7742ea6a6fce6fbb0142614ed02080e912c02016..e0dec8753abaf97e006ea1185bfb6775b28df0a8:/samples/widgets/widgets.h?ds=sidebyside diff --git a/samples/widgets/widgets.h b/samples/widgets/widgets.h index 11840de9f2..21baa5105b 100644 --- a/samples/widgets/widgets.h +++ b/samples/widgets/widgets.h @@ -27,7 +27,7 @@ #define WidgetsBookCtrlEvent wxBookCtrlEvent #define EVT_WIDGETS_PAGE_CHANGING(id,func) EVT_BOOKCTRL_PAGE_CHANGING(id,func) #define wxEVT_COMMAND_WIDGETS_PAGE_CHANGED wxEVT_COMMAND_BOOKCTRL_PAGE_CHANGED - #define wxWidgetsbookEventHandler(func) wxBookctrlEventHandler(func) + #define wxWidgetsbookEventHandler(func) wxBookCtrlEventHandler(func) #endif #if wxUSE_LOG && !defined(__WXHANDHELD__) @@ -52,12 +52,13 @@ class WXDLLIMPEXP_FWD_CORE WidgetsBookCtrl; class WidgetsPageInfo; #include "wx/panel.h" +#include "wx/vector.h" // INTRODUCING NEW PAGES DON'T FORGET TO ADD ENTRIES TO 'WidgetsCategories' enum { - // On wxUniversal-based build (wxX11, wxMGL, wxMSWUniv, wxGTKUniv, etc.) - // 'native' means 'made with wxUniv port renderer' + // In wxUniversal-based builds 'native' means 'made with wxUniv port + // renderer' NATIVE_PAGE = 0, UNIVERSAL_PAGE = NATIVE_PAGE, GENERIC_PAGE, @@ -83,6 +84,8 @@ enum ALL_CTRLS = 1 << ALL_PAGE }; +typedef wxVector Widgets; + // ---------------------------------------------------------------------------- // WidgetsPage: a book page demonstrating some widget // ---------------------------------------------------------------------------- @@ -92,16 +95,25 @@ class WidgetsPage : public wxPanel public: WidgetsPage(WidgetsBookCtrl *book, wxImageList *imaglist, - char* icon[]); + const char *const icon[]); // return the control shown by this page virtual wxControl *GetWidget() const = 0; + // return the control shown by this page, if it supports text entry interface + virtual wxTextEntryBase *GetTextEntry() const { return NULL; } + // lazy creation of the content virtual void CreateContent() = 0; - // some pages show 2 controls, in this case override this one as well - virtual wxControl *GetWidget2() const { return NULL; } + // some pages show additional controls, in this case override this one to + // return all of them (including the one returned by GetWidget()) + virtual Widgets GetWidgets() const + { + Widgets widgets; + widgets.push_back(GetWidget()); + return widgets; + } // recreate the control shown by this page //