use a single wxBookCtrlEvent class for all wxBookCtrlBase-derived controls (#9667)

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@54895 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin
2008-08-01 13:46:46 +00:00
parent 10f41d50ff
commit 3e97a90518
37 changed files with 184 additions and 366 deletions

View File

@@ -1,88 +1,21 @@
/////////////////////////////////////////////////////////////////////////////
// Name: notebook.h
// Purpose: interface of wxNotebookEvent
// Purpose: interface of wxNotebook
// Author: wxWidgets team
// RCS-ID: $Id$
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/**
@class wxNotebookEvent
This class represents the events generated by a notebook control: currently,
there are two of them. The PAGE_CHANGING event is sent before the current
page is changed. It allows the program to examine the current page (which
can be retrieved with
wxNotebookEvent::GetOldSelection) and to veto the page
change by calling wxNotifyEvent::Veto if, for example, the
current values in the controls of the old page are invalid.
The second event - PAGE_CHANGED - is sent after the page has been changed and
the program cannot veto it any more, it just informs it about the page change.
To summarize, if the program is interested in validating the page values
before allowing the user to change it, it should process the PAGE_CHANGING
event, otherwise PAGE_CHANGED is probably enough. In any case, it is probably
unnecessary to process both events at once.
@library{wxcore}
@category{events}
@see wxNotebook
*/
class wxNotebookEvent : public wxNotifyEvent
{
public:
/**
Constructor (used internally by wxWidgets only).
*/
wxNotebookEvent(wxEventType eventType = wxEVT_NULL, int id = 0,
int sel = -1,
int oldSel = -1);
/**
Returns the page that was selected before the change, -1 if none was selected.
*/
int GetOldSelection() const;
/**
Returns the currently selected page, or -1 if none was selected.
@note under Windows, GetSelection() will return the same value as
GetOldSelection() when called from
@c EVT_NOTEBOOK_PAGE_CHANGING handler and not the page which is going to
be selected. Also note that the values of selection and old selection returned
for an event generated in response to a call to
wxNotebook::SetSelection shouldn't be trusted
as they are currently inconsistent under different platforms (but in this case
you presumably don't need them anyhow as you already have the corresponding
information).
*/
int GetSelection() const;
/**
Sets the id of the page selected before the change.
*/
void SetOldSelection(int page);
/**
Sets the selection member variable.
*/
void SetSelection(int page);
};
/**
@class wxNotebook
This class represents a notebook control, which manages multiple windows with
associated tabs.
To use the class, create a wxNotebook object and call wxNotebook::AddPage or
wxNotebook::InsertPage,
passing a window to be used as the page. Do not explicitly delete the window
for a page that is currently
managed by wxNotebook.
To use the class, create a wxNotebook object and call wxNotebook::AddPage
or wxNotebook::InsertPage, passing a window to be used as the page. Do not
explicitly delete the window for a page that is currently managed by
wxNotebook.
@b wxNotebookPage is a typedef for wxWindow.
@@ -109,8 +42,8 @@ public:
@library{wxcore}
@category{miscwnd}
@see wxBookCtrl(), wxNotebookEvent, wxImageList,
@ref page_samples_notebook "Notebook Sample"
@see wxBookCtrl, wxBookCtrlEvent, wxImageList,
@ref page_samples_notebook "Notebook Sample"
*/
class wxNotebook : public wxBookCtrl overview
{
@@ -190,7 +123,7 @@ public:
/**
Changes the selection for the given page, returning the previous selection.
The call to this function does not generate the page changing events.
This is the only difference with SetSelection(). See
This is the only difference with SetSelection(). See
@ref overview_eventhandling_prog "User Generated Events"
for more infomation.
*/
@@ -256,10 +189,9 @@ public:
/**
Returns the currently selected page, or -1 if none was selected.
Note that this method may return either the previously or newly selected page
when called from the @c EVT_NOTEBOOK_PAGE_CHANGED handler depending on
the platform and so
wxNotebookEvent::GetSelection should be
Note that this method may return either the previously or newly
selected page when called from the @c EVT_NOTEBOOK_PAGE_CHANGED handler
depending on the platform and so wxBookCtrlEvent::GetSelection should be
used instead in this case.
*/
virtual int GetSelection() const;
@@ -327,9 +259,9 @@ public:
/**
An event handler function, called when the page selection is changed.
@see wxNotebookEvent
@see wxBookCtrlEvent
*/
void OnSelChange(wxNotebookEvent& event);
void OnSelChange(wxBookCtrlEvent& event);
/**
Deletes the specified page, without deleting the associated window.