X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/954b8ae60391d18b87a604e7919c87c0c6ae208b..9ce43bfae9c8245d620c9bd7cca50b8fa9d88e38:/docs/latex/wx/event.tex diff --git a/docs/latex/wx/event.tex b/docs/latex/wx/event.tex index c7f58ab720..355c16de70 100644 --- a/docs/latex/wx/event.tex +++ b/docs/latex/wx/event.tex @@ -21,17 +21,10 @@ event object, and is an abstract base class for other event classes (see below). \membersection{wxEvent::wxEvent} -\func{}{wxEvent}{\param{int }{id = 0}} +\func{}{wxEvent}{\param{int }{id = 0}, \param{wxEventType }{eventType = {\tt wxEVT\_NULL}}} Constructor. Should not need to be used directly by an application. -\membersection{wxEvent::m\_eventHandle} - -\member{char*}{m\_eventHandle} - -Handle of an underlying windowing system event handle, such as -XEvent. Not guaranteed to be instantiated. - \membersection{wxEvent::m\_eventObject} \member{wxObject*}{m\_eventObject} @@ -51,11 +44,30 @@ The type of the event, such as wxEVENT\_TYPE\_BUTTON\_COMMAND. Identifier for the window. +\membersection{wxEvent::m\_propagationLevel} + +\member{int}{m\_propagationLevel} + +Indicates how many levels the event can propagate. This member is protected and +should typically only be set in the constructors of the derived classes. It +may be temporarily changed by \helpref{StopPropagation}{wxeventstoppropagation} +and \helpref{ResumePropagation}{wxeventresumepropagation} and tested with +\helpref{ShouldPropagate}{wxeventshouldpropagate}. + +The initial value is set to either {\tt wxEVENT\_PROPAGATION\_NONE} (by +default) meaning that the event shouldn't be propagated at all or to +{\tt wxEVENT\_PROPAGATION\_MAX} (for command events) meaning that it should be +propagated as much as necessary. + +Any positive number means that the event should be propagated but no more than +the given number of times. E.g. the propagation level may be set to $1$ to +propagate the event to its parent only, but not to its grandparent. + \membersection{wxEvent::m\_skipped} \member{bool}{m\_skipped} -Set to TRUE by {\bf Skip} if this event should be skipped. +Set to true by {\bf Skip} if this event should be skipped. \membersection{wxEvent::m\_timeStamp} @@ -63,12 +75,25 @@ Set to TRUE by {\bf Skip} if this event should be skipped. Timestamp for this event. -\membersection{wxEvent::GetEventClass} +\membersection{wxEvent::Clone}\label{wxeventclone} + +\constfunc{virtual wxEvent*}{Clone}{\void} -\func{WXTYPE}{GetEventClass}{\void} +Returns a copy of the event. -Returns the identifier of the given event class, -such as wxTYPE\_MOUSE\_EVENT. +Any event that is posted to the wxWindows event system for later action (via +\helpref{wxEvtHandler::AddPendingEvent}{wxevthandleraddpendingevent} or +\helpref{wxPostEvent}{wxpostevent}) must implement this method. All wxWindows +events fully implement this method, but any derived events implemented by the +user should also implement this method just in case they (or some event +derived from them) are ever posted. + +All wxWindows events implement a copy constructor, so the easiest way of +implementing the Clone function is to implement a copy constructor for +a new event (call it MyEvent) and then define the Clone function like this: +\begin{verbatim} + wxEvent *Clone(void) const { return new MyEvent(*this); } +\end{verbatim} \membersection{wxEvent::GetEventObject} @@ -86,22 +111,15 @@ such as wxEVENT\_TYPE\_BUTTON\_COMMAND. \membersection{wxEvent::GetId} -\func{int}{GetId}{\void} +\constfunc{int}{GetId}{\void} Returns the identifier associated with this event, such as a button command id. -\membersection{wxEvent::GetObjectType} - -\func{WXTYPE}{GetObjectType}{\void} - -Returns the type of the object associated with the -event, such as wxTYPE\_BUTTON. - \membersection{wxEvent::GetSkipped} -\func{bool}{GetSkipped}{\void} +\constfunc{bool}{GetSkipped}{\void} -Returns TRUE if the event handler should be skipped, FALSE otherwise. +Returns true if the event handler should be skipped, false otherwise. \membersection{wxEvent::GetTimestamp} @@ -109,6 +127,23 @@ Returns TRUE if the event handler should be skipped, FALSE otherwise. Gets the timestamp for the event. +\membersection{wxEvent::IsCommandEvent}\label{wxeventiscommandevent} + +\constfunc{bool}{IsCommandEvent}{\void} + +Returns true if the event is or is derived from +\helpref{wxCommandEvent}{wxcommandevent} else it returns false. +Note: Exists only for optimization purposes. + + +\membersection{wxEvent::ResumePropagation}\label{wxeventresumepropagation} + +\func{void}{ResumePropagation}{\param{int }{propagationLevel}} + +Sets the propagation level to the given value (for example returned from an +earlier call to \helpref{StopPropagation}{wxeventstoppropagation}). + + \membersection{wxEvent::SetEventObject} \func{void}{SetEventObject}{\param{wxObject* }{object}} @@ -135,11 +170,28 @@ Sets the timestamp for the event. Sets the originating object. +\membersection{wxEvent::ShouldPropagate}\label{wxeventshouldpropagate} + +\constfunc{bool}{ShouldPropagate}{\void} + +Test if this event should be propagated or not, i.e. if the propagation level +is currently greater than $0$. + \membersection{wxEvent::Skip}\label{wxeventskip} -\func{void}{Skip}{\param{bool}{ skip = TRUE}} +\func{void}{Skip}{\param{bool}{ skip = true}} Called by an event handler to tell the event system that the event handler should be skipped, and the next valid handler used instead. +\membersection{wxEvent::StopPropagation}\label{wxeventstoppropagation} + +\func{int}{StopPropagation}{\void} + +Stop the event from propagating to its parent window. + +Returns the old propagation level value which may be later passed to +\helpref{ResumePropagation}{wxeventresumepropagation} to allow propagating the +event again. +