X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/77ffb5937e89927b621128789401db8921fe580f..51fe4b60ab4fec78eb1a67473d08b1c4740d03f5:/src/common/nbkbase.cpp diff --git a/src/common/nbkbase.cpp b/src/common/nbkbase.cpp index 2a8177e50a..1671877483 100644 --- a/src/common/nbkbase.cpp +++ b/src/common/nbkbase.cpp @@ -6,7 +6,7 @@ // Created: 02.07.01 // RCS-ID: $Id$ // Copyright: (c) 2001 Vadim Zeitlin -// Licence: wxWidgets licence +// Licence: wxWindows licence /////////////////////////////////////////////////////////////////////////////// // ============================================================================ @@ -17,10 +17,6 @@ // headers // ---------------------------------------------------------------------------- -#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) - #pragma implementation "notebookbase.h" -#endif - // For compilers that support precompilation, includes "wx.h". #include "wx/wxprec.h" @@ -39,6 +35,9 @@ // implementation // ============================================================================ +DEFINE_EVENT_TYPE(wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGED) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGING) + // ---------------------------------------------------------------------------- // geometry // ---------------------------------------------------------------------------- @@ -49,7 +48,7 @@ wxSize wxNotebookBase::CalcSizeFromPage(const wxSize& sizePage) const // default because not all ports implement this wxSize sizeTotal = sizePage; - if ( HasFlag(wxNB_LEFT) || HasFlag(wxNB_RIGHT) ) + if ( HasFlag(wxBK_LEFT) || HasFlag(wxBK_RIGHT) ) { sizeTotal.x += 90; sizeTotal.y += 10; @@ -63,5 +62,26 @@ wxSize wxNotebookBase::CalcSizeFromPage(const wxSize& sizePage) const return sizeTotal; } -#endif // wxUSE_NOTEBOOK +// ---------------------------------------------------------------------------- +// events +// ---------------------------------------------------------------------------- +bool wxNotebookBase::SendPageChangingEvent(int nPage) +{ + wxBookCtrlEvent event(wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGING, GetId()); + event.SetSelection(nPage); + event.SetOldSelection(GetSelection()); + event.SetEventObject(this); + return !GetEventHandler()->ProcessEvent(event) || event.IsAllowed(); +} + +void wxNotebookBase::SendPageChangedEvent(int nPageOld, int nPageNew) +{ + wxBookCtrlEvent event(wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGED, GetId()); + event.SetSelection(nPageNew == -1 ? GetSelection() : nPageNew); + event.SetOldSelection(nPageOld); + event.SetEventObject(this); + GetEventHandler()->ProcessEvent(event); +} + +#endif // wxUSE_NOTEBOOK