X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/dd5e86874e7796e4a7ccfc65d973f309cdc9a087..3201a1046ba71ba8e5ef2ed694fde34d12f743f3:/src/generic/notebook.cpp diff --git a/src/generic/notebook.cpp b/src/generic/notebook.cpp index f5f40f5015..3b0b6d2382 100644 --- a/src/generic/notebook.cpp +++ b/src/generic/notebook.cpp @@ -35,7 +35,7 @@ #include "wx/settings.h" #endif -#include "wx/generic/imaglist.h" +#include "wx/imaglist.h" #include "wx/generic/tabg.h" // ---------------------------------------------------------------------------- @@ -52,7 +52,7 @@ DEFINE_EVENT_TYPE(wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGED) DEFINE_EVENT_TYPE(wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGING) -BEGIN_EVENT_TABLE(wxNotebook, wxControl) +BEGIN_EVENT_TABLE(wxNotebook, wxBookCtrlBase) EVT_NOTEBOOK_PAGE_CHANGED(wxID_ANY, wxNotebook::OnSelChange) EVT_SIZE(wxNotebook::OnSize) EVT_PAINT(wxNotebook::OnPaint) @@ -61,7 +61,7 @@ BEGIN_EVENT_TABLE(wxNotebook, wxControl) EVT_NAVIGATION_KEY(wxNotebook::OnNavigationKey) END_EVENT_TABLE() -IMPLEMENT_DYNAMIC_CLASS(wxNotebook, wxControl) +IMPLEMENT_DYNAMIC_CLASS(wxNotebook, wxBookCtrlBase) IMPLEMENT_DYNAMIC_CLASS(wxNotebookEvent, wxCommandEvent) // ============================================================================ @@ -84,7 +84,7 @@ class WXDLLEXPORT wxNotebookTabView: public wxTabView DECLARE_DYNAMIC_CLASS(wxNotebookTabView) public: wxNotebookTabView(wxNotebook* notebook, long style = wxTAB_STYLE_DRAW_BOX | wxTAB_STYLE_COLOUR_INTERIOR); - ~wxNotebookTabView(void); + virtual ~wxNotebookTabView(void); // Called when a tab is activated virtual void OnTabActivate(int activateId, int deactivateId); @@ -106,7 +106,7 @@ private: static int GetPageId(wxTabView *tabview, wxNotebookPage *page) { - return static_cast(tabview)->GetId(page); + return wx_static_cast(wxNotebookTabView*, tabview)->GetId(page); } // ---------------------------------------------------------------------------- @@ -150,13 +150,14 @@ bool wxNotebook::Create(wxWindow *parent, // base init SetName(name); + if ( (style & wxBK_ALIGN_MASK) == wxBK_DEFAULT ) + style |= wxBK_TOP; + m_windowId = id == wxID_ANY ? NewControlId() : id; if (!wxControl::Create(parent, id, pos, size, style|wxNO_BORDER, wxDefaultValidator, name)) return false; - SetBackgroundColour(wxSystemSettings::GetColour(wxSYS_COLOUR_3DFACE)); - SetTabView(new wxNotebookTabView(this)); return true; @@ -189,6 +190,12 @@ int wxNotebook::SetSelection(size_t nPage) return 0; } +int wxNotebook::ChangeSelection(size_t nPage) +{ + // FIXME: currently it does generate events too + return SetSelection(nPage); +} + #if 0 void wxNotebook::AdvanceSelection(bool bForward) {