\section{\class{wxGauge}}\label{wxgauge}
A gauge is a horizontal or vertical bar which shows a quantity (often time).
+
+wxGauge supports two working modes: determinate and indeterminate progress.
+
+The first is the usual working mode (see \helpref{SetValue}{wxgaugesetvalue}
+and \helpref{SetRange}{wxgaugesetrange}) while the second can be used when
+the program is doing some processing but you don't know how much progress is
+being done.
+In this case, you can periodically call the \helpref{Pulse}{wxgaugepulse}
+function to make the progress bar switch to indeterminate mode (graphically
+it's usually a set of blocks which move or bounce in the bar control).
+
+wxGauge supports dynamic switch between these two work modes.
+
There are no user commands for the gauge.
\wxheading{Derived from}
\latexignore{\rtfignore{\wxheading{Members}}}
-\membersection{wxGauge::wxGauge}\label{wxgaugeconstr}
+\membersection{wxGauge::wxGauge}\label{wxgaugector}
\func{}{wxGauge}{\void}
\docparam{id}{Window identifier.}
-\docparam{range}{Integer range (maximum value) of the gauge.}
+\docparam{range}{Integer range (maximum value) of the gauge. It is ignored when the gauge is used in indeterminate mode.}
\docparam{pos}{Window position.}
\helpref{wxGauge::Create}{wxgaugecreate}
-\membersection{wxGauge::\destruct{wxGauge}}
+\membersection{wxGauge::\destruct{wxGauge}}\label{wxgaugedtor}
\func{}{\destruct{wxGauge}}{\void}
\param{int}{ range}, \param{const wxPoint\& }{ pos = wxDefaultPosition}, \param{const wxSize\&}{ size = wxDefaultSize},\rtfsp
\param{long}{ style = wxGA\_HORIZONTAL}, \param{const wxValidator\& }{validator = wxDefaultValidator}, \param{const wxString\& }{name = ``gauge"}}
-Creates the gauge for two-step construction. See \helpref{wxGauge::wxGauge}{wxgaugeconstr}\rtfsp
+Creates the gauge for two-step construction. See \helpref{wxGauge::wxGauge}{wxgaugector}\rtfsp
for further details.
Returns the maximum position of the gauge.
-\wxheading{Remarks}
-
-This method is not implemented (doesn't do anything) for most platforms.
-
\wxheading{See also}
\helpref{wxGauge::SetRange}{wxgaugesetrange}
Returns the current position of the gauge.
-\wxheading{Remarks}
-
-This method is not implemented (doesn't do anything) for most platforms.
-
\wxheading{See also}
\helpref{wxGauge::SetValue}{wxgaugesetvalue}
\func{void}{SetRange}{\param{int }{range}}
Sets the range (maximum value) of the gauge.
+This function makes the gauge switch to determinate mode, if it's not already.
\wxheading{See also}
\func{void}{SetValue}{\param{int }{pos}}
Sets the position of the gauge.
+This function makes the gauge switch to determinate mode, if it's not already.
\wxheading{Parameters}
\helpref{wxGauge::GetValue}{wxgaugegetvalue}
+\membersection{wxGauge::Pulse}\label{wxgaugepulse}
+
+\func{void}{Pulse}{\void}
+
+Switch the gauge to indeterminate mode (if required) and makes the gauge move
+a bit to indicate the user that some progress has been made.
+
+Note that after calling this function the value returned by \helpref{GetValue}{wxgaugegetvalue}
+is undefined and thus you need to explicitely call \helpref{SetValue}{wxgaugesetvalue} if you
+want to restore the determinate mode.
+