]>
git.saurik.com Git - wxWidgets.git/blob - include/wx/gauge.h
   1 /////////////////////////////////////////////////////////////////////////////// 
   3 // Purpose:     wxGauge interface 
   4 // Author:      Vadim Zeitlin 
   8 // Copyright:   (c) 1996-2001 wxWidgets team 
   9 // Licence:     wxWindows licence 
  10 /////////////////////////////////////////////////////////////////////////////// 
  12 #ifndef _WX_GAUGE_H_BASE_ 
  13 #define _WX_GAUGE_H_BASE_ 
  19 #include "wx/control.h" 
  21 // ---------------------------------------------------------------------------- 
  22 // wxGauge style flags 
  23 // ---------------------------------------------------------------------------- 
  25 #define wxGA_HORIZONTAL      wxHORIZONTAL 
  26 #define wxGA_VERTICAL        wxVERTICAL 
  28 // Win32 only, is default (and only) on some other platforms 
  29 #define wxGA_SMOOTH          0x0020 
  31 #if WXWIN_COMPATIBILITY_2_6 
  33     #define wxGA_PROGRESSBAR     0 
  34 #endif // WXWIN_COMPATIBILITY_2_6 
  36 // GTK and Mac always have native implementation of the indeterminate mode 
  37 // wxMSW has native implementation only if comctl32.dll >= 6.00 
  38 #if !defined(__WXGTK20__) && !defined(__WXMAC__) && !defined(__WXCOCOA__) 
  39     #define wxGAUGE_EMULATE_INDETERMINATE_MODE 1 
  41     #define wxGAUGE_EMULATE_INDETERMINATE_MODE 0 
  44 extern WXDLLEXPORT_DATA(const wxChar
) wxGaugeNameStr
[]; 
  46 // ---------------------------------------------------------------------------- 
  47 // wxGauge: a progress bar 
  48 // ---------------------------------------------------------------------------- 
  50 class WXDLLEXPORT wxGaugeBase 
: public wxControl
 
  53     wxGaugeBase() { m_rangeMax 
= m_gaugePos 
= 0; } 
  54     virtual ~wxGaugeBase(); 
  56     bool Create(wxWindow 
*parent
, 
  59                 const wxPoint
& pos 
= wxDefaultPosition
, 
  60                 const wxSize
& size 
= wxDefaultSize
, 
  61                 long style 
= wxGA_HORIZONTAL
, 
  62                 const wxValidator
& validator 
= wxDefaultValidator
, 
  63                 const wxString
& name 
= wxGaugeNameStr
); 
  65     // determinate mode API 
  67     // set/get the control range 
  68     virtual void SetRange(int range
); 
  69     virtual int GetRange() const; 
  71     virtual void SetValue(int pos
); 
  72     virtual int GetValue() const; 
  74     // indeterminate mode API 
  78     bool IsVertical() const { return HasFlag(wxGA_VERTICAL
); } 
  80     // appearance params (not implemented for most ports) 
  81     virtual void SetShadowWidth(int w
); 
  82     virtual int GetShadowWidth() const; 
  84     virtual void SetBezelFace(int w
); 
  85     virtual int GetBezelFace() const; 
  87     // overriden base class virtuals 
  88     virtual bool AcceptsFocus() const { return false; } 
  94     // the current position 
  97 #if wxGAUGE_EMULATE_INDETERMINATE_MODE 
  98     int m_nDirection
;       // can be wxRIGHT or wxLEFT 
 101     DECLARE_NO_COPY_CLASS(wxGaugeBase
) 
 104 #if defined(__WXUNIVERSAL__) 
 105     #include "wx/univ/gauge.h" 
 106 #elif defined(__WXMSW__) 
 107     #include "wx/msw/gauge95.h" 
 108     #define wxGauge wxGauge95 
 109 #elif defined(__WXMOTIF__) 
 110     #include "wx/motif/gauge.h" 
 111 #elif defined(__WXGTK20__) 
 112     #include "wx/gtk/gauge.h" 
 113 #elif defined(__WXGTK__) 
 114     #include "wx/gtk1/gauge.h" 
 115 #elif defined(__WXMAC__) 
 116     #include "wx/mac/gauge.h" 
 117 #elif defined(__WXCOCOA__) 
 118     #include "wx/cocoa/gauge.h" 
 119 #elif defined(__WXPM__) 
 120     #include "wx/os2/gauge.h" 
 123 #endif // wxUSE_GAUGE