#ifndef _WX_SAMPLE_WIDGETS_H_
#define _WX_SAMPLE_WIDGETS_H_
-#if wxUSE_TREEBOOK
+#if wxUSE_TREEBOOK && !defined(__WXHANDHELD__)
#include "wx/treebook.h"
#define USE_TREEBOOK 1
#define WidgetsBookCtrl wxTreebook
#define WidgetsBookCtrlEvent wxTreebookEvent
- #define EVT_WIDGETS_PAGE_CHANGED(id,func) EVT_TREEBOOK_PAGE_CHANGED(id,func)
+ #define EVT_WIDGETS_PAGE_CHANGING(id,func) EVT_TREEBOOK_PAGE_CHANGING(id,func)
+ #define wxEVT_COMMAND_WIDGETS_PAGE_CHANGED wxEVT_COMMAND_TREEBOOK_PAGE_CHANGED
+ #define wxWidgetsbookEventHandler(func) wxTreebookEventHandler(func)
#else
#include "wx/bookctrl.h"
#define USE_TREEBOOK 0
#define WidgetsBookCtrl wxBookCtrl
#define WidgetsBookCtrlEvent wxBookCtrlEvent
- #define EVT_WIDGETS_PAGE_CHANGED(id,func) EVT_BOOKCTRL_PAGE_CHANGED(id,func)
+ #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)
#endif
-#if wxUSE_LOG && !defined(__SMARTPHONE__)
+#if wxUSE_LOG && !defined(__WXHANDHELD__)
#define USE_LOG 1
#else
#define USE_LOG 0
#endif
+#if defined(__WXHANDHELD__)
+ #define USE_ICONS_IN_BOOK 0
+#else
+ #define USE_ICONS_IN_BOOK 1
+ #define ICON_SIZE 16
+#endif
+
class WXDLLEXPORT wxCheckBox;
class WXDLLEXPORT wxSizer;
+class WXDLLEXPORT wxImageList;
class WXDLLEXPORT wxTextCtrl;
class WXDLLEXPORT WidgetsBookCtrl;
#include "wx/panel.h"
-// all source files use wxImageList
-#include "wx/imaglist.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'
NATIVE_PAGE = 0,
+ UNIVERSAL_PAGE = NATIVE_PAGE,
GENERIC_PAGE,
PICKER_PAGE,
COMBO_PAGE,
enum
{
NATIVE_CTRLS = 1 << NATIVE_PAGE,
+ UNIVERSAL_CTRLS = NATIVE_CTRLS,
GENERIC_CTRLS = 1 << GENERIC_PAGE,
PICKER_CTRLS = 1 << PICKER_PAGE,
COMBO_CTRLS = 1 << COMBO_PAGE,
class WidgetsPage : public wxPanel
{
public:
- WidgetsPage(WidgetsBookCtrl *book);
+ WidgetsPage(WidgetsBookCtrl *book,
+ wxImageList *imaglist,
+ char* icon[]);
// return the control shown by this page
virtual wxControl *GetWidget() const = 0;
+ // 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; }