X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/6181cef53222dc7f04e0e52fc4a2d399709a076e..3306aec1240b38347abda1ad776df32b6687ad01:/include/wx/msw/slider95.h diff --git a/include/wx/msw/slider95.h b/include/wx/msw/slider95.h index 1d34aba164..a1891f8d89 100644 --- a/include/wx/msw/slider95.h +++ b/include/wx/msw/slider95.h @@ -1,6 +1,6 @@ ///////////////////////////////////////////////////////////////////////////// // Name: wx/msw/slider95.h -// Purpose: wxSlider95 class +// Purpose: wxSlider class, using the Win95 (and later) trackbar control // Author: Julian Smart // Modified by: // Created: 01/02/97 @@ -12,28 +12,24 @@ #ifndef _WX_SLIDER95_H_ #define _WX_SLIDER95_H_ -#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) -#pragma interface "slider95.h" -#endif - class WXDLLEXPORT wxSubwindows; // Slider -class WXDLLEXPORT wxSlider95 : public wxSliderBase +class WXDLLEXPORT wxSlider : public wxSliderBase { public: - wxSlider95() { Init(); } - - wxSlider95(wxWindow *parent, - wxWindowID id, - int value, - int minValue, - int maxValue, - const wxPoint& pos = wxDefaultPosition, - const wxSize& size = wxDefaultSize, - long style = wxSL_HORIZONTAL, - const wxValidator& validator = wxDefaultValidator, - const wxString& name = wxSliderNameStr) + wxSlider() { Init(); } + + wxSlider(wxWindow *parent, + wxWindowID id, + int value, + int minValue, + int maxValue, + const wxPoint& pos = wxDefaultPosition, + const wxSize& size = wxDefaultSize, + long style = wxSL_HORIZONTAL, + const wxValidator& validator = wxDefaultValidator, + const wxString& name = wxSliderNameStr) { Init(); @@ -51,7 +47,7 @@ public: const wxValidator& validator = wxDefaultValidator, const wxString& name = wxSliderNameStr); - virtual ~wxSlider95(); + virtual ~wxSlider(); // slider methods virtual int GetValue() const; @@ -84,13 +80,19 @@ public: WXHWND GetEditValue() const; virtual bool ContainsHWND(WXHWND hWnd) const; + // we should let background show through the slider (and its labels) + virtual bool HasTransparentBackground() { return true; } + + void Command(wxCommandEvent& event); virtual bool MSWOnScroll(int orientation, WXWORD wParam, WXWORD pos, WXHWND control); - void DoGetPosition(int *x, int *y) const; + virtual bool Show(bool show = true); + virtual bool Enable(bool show = true); + virtual bool SetFont(const wxFont& font); - bool Show(bool show = true); + virtual WXDWORD MSWGetStyle(long flags, WXDWORD *exstyle = NULL) const; protected: // common part of all ctors @@ -107,15 +109,13 @@ protected: // overridden base class virtuals + virtual void DoGetPosition(int *x, int *y) const; virtual void DoGetSize(int *width, int *height) const; virtual void DoMoveWindow(int x, int y, int width, int height); virtual wxSize DoGetBestSize() const; virtual wxBorder GetDefaultBorder() const { return wxBORDER_NONE; } - virtual WXDWORD MSWGetStyle(long flags, WXDWORD *exstyle = NULL) const; - virtual bool MSWAlwaysDrawBg() const { return true; } - // the labels windows, if any wxSubwindows *m_labels; @@ -126,8 +126,11 @@ protected: int m_lineSize; int m_tickFreq; + // flag needed to detect whether we're getting THUMBRELEASE event because + // of dragging the thumb or scrolling the mouse wheel + bool m_isDragging; - DECLARE_DYNAMIC_CLASS_NO_COPY(wxSlider95) + DECLARE_DYNAMIC_CLASS_NO_COPY(wxSlider) }; #endif // _WX_SLIDER95_H_