__WIN95__ removed (used to differ win3.1 vs. 'modern' 95 look, nowadays always define...
[wxWidgets.git] / include / wx / gauge.h
1 ///////////////////////////////////////////////////////////////////////////////
2 // Name: wx/gauge.h
3 // Purpose: wxGauge interface
4 // Author: Vadim Zeitlin
5 // Modified by:
6 // Created: 20.02.01
7 // RCS-ID: $Id$
8 // Copyright: (c) 1996-2001 wxWidgets team
9 // Licence: wxWindows licence
10 ///////////////////////////////////////////////////////////////////////////////
11
12 #ifndef _WX_GAUGE_H_BASE_
13 #define _WX_GAUGE_H_BASE_
14
15 #include "wx/defs.h"
16
17 #if wxUSE_GAUGE
18
19 #include "wx/control.h"
20
21 // ----------------------------------------------------------------------------
22 // wxGauge style flags
23 // ----------------------------------------------------------------------------
24
25 #define wxGA_HORIZONTAL wxHORIZONTAL
26 #define wxGA_VERTICAL wxVERTICAL
27
28 // Win32 only, is default (and only) on some other platforms
29 #define wxGA_SMOOTH 0x0020
30
31 // obsolete style
32 #define wxGA_PROGRESSBAR 0
33
34
35 extern WXDLLEXPORT_DATA(const wxChar*) wxGaugeNameStr;
36
37 // ----------------------------------------------------------------------------
38 // wxGauge: a progress bar
39 // ----------------------------------------------------------------------------
40
41 class WXDLLEXPORT wxGaugeBase : public wxControl
42 {
43 public:
44 wxGaugeBase() { m_rangeMax = m_gaugePos = 0; }
45 virtual ~wxGaugeBase();
46
47 bool Create(wxWindow *parent,
48 wxWindowID id,
49 int range,
50 const wxPoint& pos = wxDefaultPosition,
51 const wxSize& size = wxDefaultSize,
52 long style = wxGA_HORIZONTAL,
53 const wxValidator& validator = wxDefaultValidator,
54 const wxString& name = wxGaugeNameStr);
55
56 // set/get the control range
57 virtual void SetRange(int range);
58 virtual int GetRange() const;
59
60 // position
61 virtual void SetValue(int pos);
62 virtual int GetValue() const;
63
64 // simple accessors
65 bool IsVertical() const { return HasFlag(wxGA_VERTICAL); }
66
67
68 // appearance params (not implemented for most ports)
69 virtual void SetShadowWidth(int w);
70 virtual int GetShadowWidth() const;
71
72 virtual void SetBezelFace(int w);
73 virtual int GetBezelFace() const;
74
75 // overriden base class virtuals
76 virtual bool AcceptsFocus() const { return false; }
77
78 protected:
79 // the max position
80 int m_rangeMax;
81
82 // the current position
83 int m_gaugePos;
84
85 DECLARE_NO_COPY_CLASS(wxGaugeBase)
86 };
87
88 #if defined(__WXUNIVERSAL__)
89 #include "wx/univ/gauge.h"
90 #elif defined(__WXMSW__)
91 #include "wx/msw/gauge95.h"
92 #define wxGauge wxGauge95
93 #elif defined(__WXMOTIF__)
94 #include "wx/motif/gauge.h"
95 #elif defined(__WXGTK__)
96 #include "wx/gtk/gauge.h"
97 #elif defined(__WXMAC__)
98 #include "wx/mac/gauge.h"
99 #elif defined(__WXCOCOA__)
100 #include "wx/cocoa/gauge.h"
101 #elif defined(__WXPM__)
102 #include "wx/os2/gauge.h"
103 #endif
104
105 #endif // wxUSE_GAUGE
106
107 #endif
108 // _WX_GAUGE_H_BASE_