typedef wxWindow wxNotebookPage; // so far, any window can be a page
-#define wxNOTEBOOK_NAME _T("notebook")
+extern WXDLLEXPORT_DATA(const wxChar*) wxNotebookNameStr;
+
+#if WXWIN_COMPATIBILITY_2_4
+ #define wxNOTEBOOK_NAME wxNotebookNameStr
+#endif
// ----------------------------------------------------------------------------
// wxNotebookBase: define wxNotebook interface
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize,
long style = 0,
- const wxString& name = wxNOTEBOOK_NAME) ;
+ const wxString& name = wxNotebookNameStr) ;
// wxNotebook-specific additions to wxBookCtrlBase interface
// ---------------------------------------------------------
// implement some base class functions
virtual wxSize CalcSizeFromPage(const wxSize& sizePage) const;
+ // On platforms that support it, get the theme page background colour, else invalid colour
+ virtual wxColour GetThemeBackgroundColour() const { return wxNullColour; }
+
protected:
DECLARE_NO_COPY_CLASS(wxNotebookBase)
};
typedef void (wxEvtHandler::*wxNotebookEventFunction)(wxNotebookEvent&);
-#define EVT_NOTEBOOK_PAGE_CHANGED(winid, fn) \
- DECLARE_EVENT_TABLE_ENTRY( \
- wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGED, \
- winid, \
- wxID_ANY, \
- (wxObjectEventFunction)(wxEventFunction) wxStaticCastEvent( wxNotebookEventFunction, &fn ), \
- NULL \
- ),
-
-#define EVT_NOTEBOOK_PAGE_CHANGING(winid, fn) \
- DECLARE_EVENT_TABLE_ENTRY( \
- wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGING, \
- winid, \
- wxID_ANY, \
- (wxObjectEventFunction)(wxEventFunction) wxStaticCastEvent( wxNotebookEventFunction, &fn ), \
- NULL \
- ),
+#define wxNotebookEventHandler(func) \
+ (wxObjectEventFunction)(wxEventFunction)wxStaticCastEvent(wxNotebookEventFunction, &func)
+
+#define EVT_NOTEBOOK_PAGE_CHANGED(winid, fn) \
+ wx__DECLARE_EVT1(wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGED, winid, wxNotebookEventHandler(fn))
+
+#define EVT_NOTEBOOK_PAGE_CHANGING(winid, fn) \
+ wx__DECLARE_EVT1(wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGING, winid, wxNotebookEventHandler(fn))
// ----------------------------------------------------------------------------
// wxNotebook class itself