\section{\class{wxContextHelp}}\label{wxcontexthelp}

This class changes the cursor to a query and puts the application into a 'context-sensitive help mode'.
When the user left-clicks on a window within the specified window, a wxEVT\_HELP event is
sent to that control, and the application may respond to it by popping up some help.

For example:

\begin{verbatim}
  wxContextHelp contextHelp(myWindow);
\end{verbatim}

There are a couple of ways to invoke this behaviour implicitly:

\begin{itemize}
\item Use the wxDIALOG\_EX\_CONTEXTHELP style for a dialog (Windows only). This will put a question mark
in the titlebar, and Windows will put the application into context-sensitive help mode automatically,
with further programming.
\item Create a \helpref{wxContextHelpButton}{wxcontexthelpbutton}, whose predefined behaviour is to create a context help object.
Normally you will write your application so that this button is only added to a dialog for non-Windows platforms
(use wxDIALOG\_EX\_CONTEXTHELP on Windows).
\end{itemize}

Note that on Mac OS X, the cursor does not change when in context-sensitive
help mode.

\wxheading{Derived from}

\helpref{wxObject}{wxobject}

\wxheading{Include files}

<wx/cshelp.h>

\wxheading{See also}

\helpref{wxHelpEvent}{wxhelpevent}, 
\helpref{wxHelpController}{wxhelpcontroller}, 
\helpref{wxContextHelpButton}{wxcontexthelpbutton}

\latexignore{\rtfignore{\wxheading{Members}}}

\membersection{wxContextHelp::wxContextHelp}\label{wxcontexthelpctor}

\func{}{wxContextHelp}{\param{wxWindow*}{ window = NULL}, \param{bool}{ doNow = true}}

Constructs a context help object, calling \helpref{BeginContextHelp}{wxcontexthelpbegincontexthelp} if\rtfsp
{\it doNow} is true (the default).

If {\it window} is NULL, the top window is used.

\membersection{wxContextHelp::\destruct{wxContextHelp}}\label{wxcontexthelpdtor}

\func{}{\destruct{wxContextHelp}}{\void}

Destroys the context help object.

\membersection{wxContextHelp::BeginContextHelp}\label{wxcontexthelpbegincontexthelp}

\func{bool}{BeginContextHelp}{\param{wxWindow*}{ window = NULL}}

Puts the application into context-sensitive help mode. {\it window} is the window
which will be used to catch events; if NULL, the top window will be used.

Returns true if the application was successfully put into context-sensitive help mode.
This function only returns when the event loop has finished.

\membersection{wxContextHelp::EndContextHelp}\label{wxcontexthelpendcontexthelp}

\func{bool}{EndContextHelp}{\void}

Ends context-sensitive help mode. Not normally called by the application.

\section{\class{wxContextHelpButton}}\label{wxcontexthelpbutton}

Instances of this class may be used to add a question mark button that when pressed, puts the
application into context-help mode. It does this by creating a \helpref{wxContextHelp}{wxcontexthelp} object which itself
generates a wxEVT\_HELP event when the user clicks on a window.

On Windows, you may add a question-mark icon to a dialog by use of the wxDIALOG\_EX\_CONTEXTHELP extra style, but
on other platforms you will have to add a button explicitly, usually next to OK, Cancel or similar buttons.

\wxheading{Derived from}

\helpref{wxBitmapButton}{wxbitmapbutton}\\
\helpref{wxButton}{wxbutton}\\
\helpref{wxControl}{wxcontrol}\\
\helpref{wxWindow}{wxwindow}\\
\helpref{wxEvtHandler}{wxevthandler}\\
\helpref{wxObject}{wxobject}

\wxheading{Include files}

<wx/cshelp.h>

\wxheading{See also}

\helpref{wxBitmapButton}{wxbitmapbutton}, \helpref{wxContextHelp}{wxcontexthelp}

\latexignore{\rtfignore{\wxheading{Members}}}

\membersection{wxContextHelpButton::wxContextHelpButton}\label{wxcontexthelpbuttonconstr}

\func{}{wxContextHelpButton}{\void}

Default constructor.

\func{}{wxContextHelpButton}{
\param{wxWindow* }{parent}, 
\param{wxWindowID }{id = wxID\_CONTEXT\_HELP}, 
\param{const wxPoint\& }{pos = wxDefaultPosition}, 
\param{const wxSize\& }{size = wxDefaultSize}, 
\param{long }{style = wxBU\_AUTODRAW}}

Constructor, creating and showing a context help button.

\wxheading{Parameters}

\docparam{parent}{Parent window. Must not be NULL.}

\docparam{id}{Button identifier. Defaults to wxID\_CONTEXT\_HELP.}

\docparam{pos}{Button position.}

\docparam{size}{Button size. If the default size (-1, -1) is specified then the button is sized
appropriately for the question mark bitmap.}

\docparam{style}{Window style.}

\wxheading{Remarks}

Normally you need pass only the parent window to the constructor, and use the defaults for the remaining parameters.

