A slider is a control with a handle which can be pulled
back and forth to change the value.
-In Windows versions below Windows 95, a scrollbar is used to simulate the slider. In Windows 95,
-the track bar control is used.
+On Windows, the track bar control is used.
Slider events are handled in the same way as a scrollbar.
\helpref{wxEvtHandler}{wxevthandler}\\
\helpref{wxObject}{wxobject}
+\wxheading{Include files}
+
+<wx/slider.h>
+
\wxheading{Window styles}
\twocolwidtha{5cm}
\begin{twocollist}\itemsep=0pt
-\twocolitem{\windowstyle{wxSL\_HORIZONTAL}}{Displays the slider horizontally.}
+\twocolitem{\windowstyle{wxSL\_HORIZONTAL}}{Displays the slider horizontally (this is the default).}
\twocolitem{\windowstyle{wxSL\_VERTICAL}}{Displays the slider vertically.}
\twocolitem{\windowstyle{wxSL\_AUTOTICKS}}{Displays tick marks.}
\twocolitem{\windowstyle{wxSL\_LABELS}}{Displays minimum, maximum and value labels.}
-\twocolitem{\windowstyle{wxSL\_LEFT}}{Displays ticks on the left, if a vertical slider.}
-\twocolitem{\windowstyle{wxSL\_RIGHT}}{Displays ticks on the right, if a vertical slider.}
-\twocolitem{\windowstyle{wxSL\_TOP}}{Displays ticks on the top, if a horizontal slider.}
-\twocolitem{\windowstyle{wxSL\_SELRANGE}}{Allows the user to select a range on the slider. Windows 95 only.}
+\twocolitem{\windowstyle{wxSL\_LEFT}}{Displays ticks on the left and forces the slider to be vertical.}
+\twocolitem{\windowstyle{wxSL\_RIGHT}}{Displays ticks on the right and forces the slider to be vertical.}
+\twocolitem{\windowstyle{wxSL\_TOP}}{Displays ticks on the top.}
+\twocolitem{\windowstyle{wxSL\_BOTTOM}}{Displays ticks on the bottom (this is the default).}
+\twocolitem{\windowstyle{wxSL\_SELRANGE}}{Allows the user to select a range on the slider. Windows only.}
+\twocolitem{\windowstyle{wxSL\_INVERSE}}{Inverses the mininum and maximum endpoints on the slider. Not compatible with wxSL\_SELRANGE.}
\end{twocollist}
See also \helpref{window styles overview}{windowstyles}.
-\wxheading{Event handling}
-
-To process input from a slider, use one of these event handler macros to direct input to member
-functions that take a \helpref{wxScrollEvent}{wxscrollevent} argument:
-
-\twocolwidtha{7cm}
-\begin{twocollist}
-\twocolitem{{\bf EVT\_COMMAND\_SCROLL(id, func)}}{Catch all scroll commands.}
-\twocolitem{{\bf EVT\_COMMAND\_TOP(id, func)}}{Catch a command to put the scroll thumb at the maximum position.}
-\twocolitem{{\bf EVT\_COMMAND\_BOTTOM(id, func)}}{Catch a command to put the scroll thumb at the maximum position.}
-\twocolitem{{\bf EVT\_COMMAND\_LINEUP(id, func)}}{Catch a line up command.}
-\twocolitem{{\bf EVT\_COMMAND\_LINEDOWN(id, func)}}{Catch a line down command.}
-\twocolitem{{\bf EVT\_COMMAND\_PAGEUP(id, func)}}{Catch a page up command.}
-\twocolitem{{\bf EVT\_COMMAND\_PAGEDOWN(id, func)}}{Catch a page down command.}
-\twocolitem{{\bf EVT\_COMMAND\_THUMBTRACK(id, func)}}{Catch a thumbtrack command (continuous movement of the scroll thumb).}
-\twocolitem{{\bf EVT\_SLIDER(id, func)}}{Process a wxEVT\_COMMAND\_SLIDER\_UPDATED event,
-when the slider is moved. Though provided for backward compatibility, this is obsolete.}
-\end{twocollist}%
+\input scrolevt.inc
\wxheading{See also}
\latexignore{\rtfignore{\wxheading{Members}}}
-\membersection{wxSlider::wxSlider}\label{wxsliderconstr}
+\membersection{wxSlider::wxSlider}\label{wxsliderctor}
\func{}{wxSlider}{\void}
\helpref{wxSlider::Create}{wxslidercreate}, \helpref{wxValidator}{wxvalidator}
-\membersection{wxSlider::\destruct{wxSlider}}
+\membersection{wxSlider::\destruct{wxSlider}}\label{wxsliderdtor}
\func{void}{\destruct{wxSlider}}{\void}
\param{const wxValidator\& }{validator = wxDefaultValidator},\rtfsp
\param{const wxString\& }{name = ``slider"}}
-Used for two-step slider construction. See \helpref{wxSlider::wxSlider}{wxsliderconstr}\rtfsp
+Used for two-step slider construction. See \helpref{wxSlider::wxSlider}{wxsliderctor}\rtfsp
for further details.
\membersection{wxSlider::GetLineSize}\label{wxslidergetlinesize}
\helpref{wxSlider::GetMin}{wxslidergetmin}, \helpref{wxSlider::GetMax}{wxslidergetmax},\rtfsp
\helpref{wxSlider::SetValue}{wxslidersetvalue}
-\membersection{wxSlider::SetRange}\label{wxslidersetrange}
-
-\func{void}{SetRange}{\param{int}{ minValue}, \param{int}{ maxValue}}
-
-Sets the minimum and maximum slider values.
-
-\wxheading{See also}
-
-\helpref{wxSlider::GetMin}{wxslidergetmin}, \helpref{wxSlider::GetMax}{wxslidergetmax}
-
-\membersection{wxSlider::SetTickFreq}\label{wxslidersettickfreq}
-
-\func{void}{SetTickFreq}{\param{int }{n}, \param{int }{pos}}
-
-Sets the tick mark frequency and position.
-
-\wxheading{Parameters}
-
-\docparam{n}{Frequency. For example, if the frequency is set to two, a tick mark is displayed for
-every other increment in the slider's range.}
-
-\docparam{pos}{Position. Must be greater than zero. TODO: what is this for?}
-
-\wxheading{Remarks}
-
-Windows 95 only.
-
-\wxheading{See also}
-
-\helpref{wxSlider::GetTickFreq}{wxslidergettickfreq}
-
\membersection{wxSlider::SetLineSize}\label{wxslidersetlinesize}
\func{void}{SetLineSize}{\param{int }{lineSize}}
\helpref{wxSlider::GetPageSize}{wxslidergetpagesize}
+\membersection{wxSlider::SetRange}\label{wxslidersetrange}
+
+\func{void}{SetRange}{\param{int}{ minValue}, \param{int}{ maxValue}}
+
+Sets the minimum and maximum slider values.
+
+\wxheading{See also}
+
+\helpref{wxSlider::GetMin}{wxslidergetmin}, \helpref{wxSlider::GetMax}{wxslidergetmax}
+
\membersection{wxSlider::SetSelection}\label{wxslidersetselection}
\func{void}{SetSelection}{\param{int }{startPos}, \param{int }{endPos}}
\helpref{wxSlider::SetTickFreq}{wxslidersettickfreq}
+\membersection{wxSlider::SetTickFreq}\label{wxslidersettickfreq}
+
+\func{void}{SetTickFreq}{\param{int }{n}, \param{int }{pos}}
+
+Sets the tick mark frequency and position.
+
+\wxheading{Parameters}
+
+\docparam{n}{Frequency. For example, if the frequency is set to two, a tick mark is displayed for
+every other increment in the slider's range.}
+
+\docparam{pos}{Position. Must be greater than zero. TODO: what is this for?}
+
+\wxheading{Remarks}
+
+Windows 95 only.
+
+\wxheading{See also}
+
+\helpref{wxSlider::GetTickFreq}{wxslidergettickfreq}
+
\membersection{wxSlider::SetValue}\label{wxslidersetvalue}
\func{void}{SetValue}{\param{int}{ value}}