/////////////////////////////////////////////////////////////////////////////
// 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
#ifndef _WX_SLIDER95_H_
#define _WX_SLIDER95_H_
-#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
-#pragma interface "slider95.h"
-#endif
-
-class WXDLLEXPORT wxSubwindows;
+class WXDLLIMPEXP_FWD_CORE 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();
const wxValidator& validator = wxDefaultValidator,
const wxString& name = wxSliderNameStr);
- virtual ~wxSlider95();
+ virtual ~wxSlider();
// slider methods
virtual int GetValue() const;
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);
virtual bool Enable(bool show = true);
virtual bool SetFont(const wxFont& font);
+ virtual WXDWORD MSWGetStyle(long flags, WXDWORD *exstyle = NULL) const;
+
protected:
// common part of all ctors
void Init();
virtual wxBorder GetDefaultBorder() const { return wxBORDER_NONE; }
- virtual WXDWORD MSWGetStyle(long flags, WXDWORD *exstyle = NULL) const;
-
// the labels windows, if any
wxSubwindows *m_labels;
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_