]> git.saurik.com Git - wxWidgets.git/blobdiff - docs/latex/wx/noteevt.tex
Some work on GTK focus handling and events.
[wxWidgets.git] / docs / latex / wx / noteevt.tex
index a8602c56886445a70a4fd5cd42d743874288349b..51bc22e9feb0a2707b1b24aaee88e52775a7f92a 100644 (file)
@@ -1,26 +1,33 @@
 \section{\class{wxNotebookEvent}}\label{wxnotebookevent}
 
-This class represents the events generated by a notebook control.
+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 to the program to examine the current page (which
+can be retrieved with 
+\helpref{GetOldSelection()}{wxnotebookeventgetoldselection}) and to veto the page
+change by calling \helpref{Veto()}{wxnotifyeventveto} 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.
 
 \wxheading{Derived from}
 
+\helpref{wxNotifyEvent}{wxnotifyevent}\\
 \helpref{wxCommandEvent}{wxcommandevent}\\
 \helpref{wxEvent}{wxevent}\\
-\helpref{wxEvtHandler}{wxevthandler}\\
 \helpref{wxObject}{wxobject}
 
-\wxheading{Event table macros}
+\wxheading{Include files}
 
-To process a notebook event, use these event handler macros to direct input to member
-functions that take a wxNotebookEvent argument.
+<wx/notebook.h>
 
-\twocolwidtha{7cm}
-\begin{twocollist}\itemsep=0pt
-\twocolitem{{\bf EVT\_NOTEBOOK_PAGE_CHANGED(id, func)}}{The page selection was changed. Processes a
-wxEVT\_COMMAND\_NOTEBOOK\_PAGE\_CHANGED event.}
-\twocolitem{{\bf EVT\_NOTEBOOK_PAGE_CHANGING(id, func)}}{The page selection is about to be changed.
-Processes a wxEVT\_COMMAND\_NOTEBOOK\_PAGE\_CHANGING event.}
-\end{twocollist}%
+\input noteevt.inc
 
 \wxheading{See also}
 
@@ -31,21 +38,26 @@ Processes a wxEVT\_COMMAND\_NOTEBOOK\_PAGE\_CHANGING event.}
 \membersection{wxNotebookEvent::wxNotebookEvent}\label{wxnotebookeventconstr}
 
 \func{}{wxNotebookEvent}{\param{wxEventType}{ eventType = wxEVT\_NULL},
- \param{int}{ id = 0}, \param{int}{ sel = -1}, \param{int}{ oldSel = -1}}
+ \param{int}{ id = 0}, \param{int}{ sel = $-1$}, \param{int}{ oldSel = $-1$}}
 
-Constructor.
+Constructor (used internally by wxWindows only).
 
 \membersection{wxNotebookEvent::GetOldSelection}\label{wxnotebookeventgetoldselection}
 
 \constfunc{int}{GetOldSelection}{\void}
 
-Returns the page that was selected before the change, -1 if none was selected.
+Returns the page that was selected before the change, $-1$ if none was selected.
 
 \membersection{wxNotebookEvent::GetSelection}\label{wxnotebookeventgetselection}
 
 \constfunc{int}{GetSelection}{\void}
 
-Returns the currently selected page, or -1 if none was selected.
+Returns the currently selected page, or $-1$ if none was selected.
+
+{\bf NB:} under Windows, GetSelection() will return the same value as\rtfsp
+\helpref{GetOldSelection()}{wxnotebookeventgetoldselection} when called from
+{\tt EVT\_NOTEBOOK\_PAGE\_CHANGING} handler and not the page which is going to
+be selected.
 
 \membersection{wxNotebookEvent::SetOldSelection}\label{wxnotebookeventsetoldselection}