]> git.saurik.com Git - wxWidgets.git/blame - interface/wx/gauge.h
automated ifacecheck fixes
[wxWidgets.git] / interface / wx / gauge.h
CommitLineData
23324ae1
FM
1/////////////////////////////////////////////////////////////////////////////
2// Name: gauge.h
e54c96f1 3// Purpose: interface of wxGauge
23324ae1
FM
4// Author: wxWidgets team
5// RCS-ID: $Id$
6// Licence: wxWindows license
7/////////////////////////////////////////////////////////////////////////////
8
9/**
10 @class wxGauge
7c913512 11
3d2cf884
BP
12 A gauge is a horizontal or vertical bar which shows a quantity (often
13 time).
7c913512 14
23324ae1 15 wxGauge supports two working modes: determinate and indeterminate progress.
7c913512 16
3d2cf884
BP
17 The first is the usual working mode (see SetValue() and SetRange()) while
18 the second can be used when the program is doing some processing but you
19 don't know how much progress is being done. In this case, you can
20 periodically call the Pulse() function to make the progress bar switch to
21 indeterminate mode (graphically it's usually a set of blocks which move or
22 bounce in the bar control).
7c913512 23
23324ae1 24 wxGauge supports dynamic switch between these two work modes.
7c913512 25
23324ae1 26 There are no user commands for the gauge.
7c913512 27
23324ae1 28 @beginStyleTable
8c6791e4 29 @style{wxGA_HORIZONTAL}
23324ae1 30 Creates a horizontal gauge.
8c6791e4 31 @style{wxGA_VERTICAL}
23324ae1 32 Creates a vertical gauge.
8c6791e4 33 @style{wxGA_SMOOTH}
23324ae1
FM
34 Creates smooth progress bar with one pixel wide update step (not
35 supported by all platforms).
36 @endStyleTable
7c913512 37
23324ae1
FM
38 @library{wxcore}
39 @category{ctrl}
7e59b885 40 @appearance{gauge.png}
7c913512 41
e54c96f1 42 @see wxSlider, wxScrollBar
23324ae1
FM
43*/
44class wxGauge : public wxControl
45{
46public:
3d2cf884
BP
47 /**
48 Default constructor.
49 */
50 wxGauge();
23324ae1
FM
51 /**
52 Constructor, creating and showing a gauge.
3c4f71cc 53
7c913512 54 @param parent
4cc4bfaf 55 Window parent.
7c913512 56 @param id
4cc4bfaf 57 Window identifier.
7c913512 58 @param range
3d2cf884
BP
59 Integer range (maximum value) of the gauge. It is ignored when the
60 gauge is used in indeterminate mode.
7c913512 61 @param pos
4cc4bfaf 62 Window position.
7c913512 63 @param size
4cc4bfaf 64 Window size.
7c913512 65 @param style
3d2cf884 66 Gauge style.
7c913512 67 @param name
4cc4bfaf 68 Window name.
3c4f71cc 69
4cc4bfaf 70 @see Create()
23324ae1 71 */
7c913512
FM
72 wxGauge(wxWindow* parent, wxWindowID id, int range,
73 const wxPoint& pos = wxDefaultPosition,
74 const wxSize& size = wxDefaultSize,
75 long style = wxGA_HORIZONTAL,
76 const wxValidator& validator = wxDefaultValidator,
77 const wxString& name = "gauge");
23324ae1
FM
78
79 /**
80 Destructor, destroying the gauge.
81 */
adaaa686 82 virtual ~wxGauge();
23324ae1
FM
83
84 /**
3d2cf884
BP
85 Creates the gauge for two-step construction. See wxGauge() for further
86 details.
23324ae1
FM
87 */
88 bool Create(wxWindow* parent, wxWindowID id, int range,
89 const wxPoint& pos = wxDefaultPosition,
43c48e1e 90 const wxSize& size = wxDefaultSize, long style = wxGA_HORIZONTAL,
23324ae1 91 const wxValidator& validator = wxDefaultValidator,
43c48e1e 92 const wxString& name = wxGaugeNameStr);
23324ae1
FM
93
94 /**
95 Returns the width of the 3D bezel face.
3c4f71cc 96
23324ae1 97 @remarks This method is not implemented (returns 0) for most platforms.
3c4f71cc 98
4cc4bfaf 99 @see SetBezelFace()
23324ae1 100 */
328f5751 101 int GetBezelFace() const;
23324ae1
FM
102
103 /**
104 Returns the maximum position of the gauge.
3c4f71cc 105
4cc4bfaf 106 @see SetRange()
23324ae1 107 */
328f5751 108 int GetRange() const;
23324ae1
FM
109
110 /**
111 Returns the 3D shadow margin width.
3c4f71cc 112
23324ae1 113 @remarks This method is not implemented (returns 0) for most platforms.
3c4f71cc 114
4cc4bfaf 115 @see SetShadowWidth()
23324ae1 116 */
328f5751 117 int GetShadowWidth() const;
23324ae1
FM
118
119 /**
120 Returns the current position of the gauge.
3c4f71cc 121
4cc4bfaf 122 @see SetValue()
23324ae1 123 */
328f5751 124 int GetValue() const;
23324ae1
FM
125
126 /**
7c913512 127 Returns @true if the gauge is vertical (has @c wxGA_VERTICAL style) and
23324ae1
FM
128 @false otherwise.
129 */
328f5751 130 bool IsVertical() const;
23324ae1
FM
131
132 /**
3d2cf884
BP
133 Switch the gauge to indeterminate mode (if required) and makes the
134 gauge move a bit to indicate the user that some progress has been made.
135
136 @note After calling this function the value returned by GetValue() is
137 undefined and thus you need to explicitely call SetValue() if you
138 want to restore the determinate mode.
23324ae1 139 */
adaaa686 140 virtual void Pulse();
23324ae1
FM
141
142 /**
143 Sets the 3D bezel face width.
3c4f71cc 144
23324ae1 145 @remarks This method is not implemented (doesn't do anything) for most
4cc4bfaf 146 platforms.
3c4f71cc 147
4cc4bfaf 148 @see GetBezelFace()
23324ae1
FM
149 */
150 void SetBezelFace(int width);
151
152 /**
3d2cf884
BP
153 Sets the range (maximum value) of the gauge. This function makes the
154 gauge switch to determinate mode, if it's not already.
3c4f71cc 155
4cc4bfaf 156 @see GetRange()
23324ae1
FM
157 */
158 void SetRange(int range);
159
160 /**
161 Sets the 3D shadow width.
3c4f71cc 162
23324ae1 163 @remarks This method is not implemented (doesn't do anything) for most
4cc4bfaf 164 platforms.
23324ae1
FM
165 */
166 void SetShadowWidth(int width);
167
168 /**
3d2cf884
BP
169 Sets the position of the gauge. The @a pos must be between 0 and the
170 gauge range as returned by GetRange(), inclusive.
171
23324ae1
FM
172 This function makes the gauge switch to determinate mode, if it was in
173 indeterminate mode before.
3c4f71cc 174
7c913512 175 @param pos
4cc4bfaf 176 Position for the gauge level.
3c4f71cc 177
4cc4bfaf 178 @see GetValue()
23324ae1
FM
179 */
180 void SetValue(int pos);
181};
e54c96f1 182