]> git.saurik.com Git - wxWidgets.git/blame - include/wx/gtk/slider.h
Add basic history api and implement it under gtk.
[wxWidgets.git] / include / wx / gtk / slider.h
CommitLineData
c801d85f 1/////////////////////////////////////////////////////////////////////////////
1e6feb95 2// Name: wx/gtk/slider.h
c801d85f
KB
3// Purpose:
4// Author: Robert Roebling
58614078 5// Id: $Id$
371a5b4e 6// Copyright: (c) 1998 Robert Roebling
65571936 7// Licence: wxWindows licence
c801d85f
KB
8/////////////////////////////////////////////////////////////////////////////
9
1d591651
PC
10#ifndef _WX_GTK_SLIDER_H_
11#define _WX_GTK_SLIDER_H_
c801d85f 12
1e6feb95 13// ----------------------------------------------------------------------------
c801d85f 14// wxSlider
1e6feb95 15// ----------------------------------------------------------------------------
c801d85f 16
20123d49 17class WXDLLIMPEXP_CORE wxSlider : public wxSliderBase
c801d85f 18{
a075e27b 19public:
12a480c1 20 wxSlider();
1e6feb95
VZ
21 wxSlider(wxWindow *parent,
22 wxWindowID id,
23 int value, int minValue, int maxValue,
24 const wxPoint& pos = wxDefaultPosition,
25 const wxSize& size = wxDefaultSize,
26 long style = wxSL_HORIZONTAL,
27 const wxValidator& validator = wxDefaultValidator,
28 const wxString& name = wxSliderNameStr)
6de97a3b 29 {
1e6feb95
VZ
30 Create( parent, id, value, minValue, maxValue,
31 pos, size, style, validator, name );
6de97a3b 32 }
1e6feb95
VZ
33
34 bool Create(wxWindow *parent,
35 wxWindowID id,
36 int value, int minValue, int maxValue,
37 const wxPoint& pos = wxDefaultPosition,
38 const wxSize& size = wxDefaultSize,
39 long style = wxSL_HORIZONTAL,
40 const wxValidator& validator = wxDefaultValidator,
41 const wxString& name = wxSliderNameStr);
42
43 // implement the base class pure virtuals
a075e27b 44 virtual int GetValue() const;
1e6feb95
VZ
45 virtual void SetValue(int value);
46
47 virtual void SetRange(int minValue, int maxValue);
48 virtual int GetMin() const;
49 virtual int GetMax() const;
50
51 virtual void SetLineSize(int lineSize);
52 virtual void SetPageSize(int pageSize);
53 virtual int GetLineSize() const;
54 virtual int GetPageSize() const;
55
56 virtual void SetThumbLength(int lenPixels);
57 virtual int GetThumbLength() const;
c801d85f 58
9d522606
RD
59 static wxVisualAttributes
60 GetClassDefaultAttributes(wxWindowVariant variant = wxWINDOW_VARIANT_NORMAL);
3824e0db 61
aa9a4ae1 62 // implementation
c092ed38
RR
63 void GTKDisableEvents();
64 void GTKEnableEvents();
65 bool GTKEventsDisabled() const;
ce00f59b 66
12a480c1
PC
67 double m_pos;
68 int m_scrollEventType;
69 bool m_needThumbRelease;
c092ed38 70 GtkWidget *m_scale;
aa9a4ae1 71
ef5c70f9 72protected:
c092ed38
RR
73 GtkWidget *m_minLabel,*m_maxLabel;
74 bool m_blockScrollEvent;
75
ef5c70f9
VZ
76 virtual GdkWindow *GTKGetWindow(wxArrayGdkWindows& windows) const;
77
3824e0db
VZ
78 // set the slider value unconditionally
79 void GTKSetValue(int value);
80
a075e27b 81 DECLARE_DYNAMIC_CLASS(wxSlider)
c801d85f
KB
82};
83
1d591651 84#endif // _WX_GTK_SLIDER_H_