X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/40ff126ac4ff57ab4aa22a5c7c7ce621479e8739..77c1fa98ce364fb1c2b31a82bdd04f3a0ab75424:/include/wx/gauge.h diff --git a/include/wx/gauge.h b/include/wx/gauge.h index cb1cffb25b..61dd3fa1f6 100644 --- a/include/wx/gauge.h +++ b/include/wx/gauge.h @@ -33,6 +33,13 @@ #define wxGA_PROGRESSBAR 0 #endif // WXWIN_COMPATIBILITY_2_6 +// GTK and Mac always have native implementation of the indeterminate mode +// wxMSW has native implementation only if comctl32.dll >= 6.00 +#if !defined(__WXGTK20__) && !defined(__WXMAC__) && !defined(__WXCOCOA__) + #define wxGAUGE_EMULATE_INDETERMINATE_MODE 1 +#else + #define wxGAUGE_EMULATE_INDETERMINATE_MODE 0 +#endif extern WXDLLEXPORT_DATA(const wxChar) wxGaugeNameStr[]; @@ -55,18 +62,21 @@ public: const wxValidator& validator = wxDefaultValidator, const wxString& name = wxGaugeNameStr); + // determinate mode API + // set/get the control range virtual void SetRange(int range); virtual int GetRange() const; - // position virtual void SetValue(int pos); virtual int GetValue() const; + // indeterminate mode API + virtual void Pulse(); + // simple accessors bool IsVertical() const { return HasFlag(wxGA_VERTICAL); } - // appearance params (not implemented for most ports) virtual void SetShadowWidth(int w); virtual int GetShadowWidth() const; @@ -84,6 +94,10 @@ protected: // the current position int m_gaugePos; +#if wxGAUGE_EMULATE_INDETERMINATE_MODE + int m_nDirection; // can be wxRIGHT or wxLEFT +#endif + DECLARE_NO_COPY_CLASS(wxGaugeBase) };