53a2db124c
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@52834 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
157 lines
5.8 KiB
C++
157 lines
5.8 KiB
C++
/////////////////////////////////////////////////////////////////////////////
|
|
// Name: slider.h
|
|
// Purpose: wxSlider class
|
|
// Author: David Webster
|
|
// Modified by:
|
|
// Created: 10/15/99
|
|
// RCS-ID: $Id$
|
|
// Copyright: (c) David Webster
|
|
// Licence: wxWindows licence
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
|
|
#ifndef _WX_SLIDER_H_
|
|
#define _WX_SLIDER_H_
|
|
|
|
#include "wx/control.h"
|
|
|
|
// Slider
|
|
class WXDLLIMPEXP_CORE wxSlider: public wxSliderBase
|
|
{
|
|
public:
|
|
wxSlider();
|
|
inline wxSlider( wxWindow* pParent
|
|
,wxWindowID vId
|
|
,int nValue
|
|
,int nMinValue
|
|
,int nMaxValue
|
|
,const wxPoint& rPos = wxDefaultPosition
|
|
,const wxSize& rSize = wxDefaultSize
|
|
,long lStyle = wxSL_HORIZONTAL
|
|
,const wxValidator& rValidator = wxDefaultValidator
|
|
,const wxString& rsName = wxSliderNameStr
|
|
)
|
|
{
|
|
Create( pParent
|
|
,vId
|
|
,nValue
|
|
,nMinValue
|
|
,nMaxValue
|
|
,rPos
|
|
,rSize
|
|
,lStyle
|
|
,rValidator
|
|
,rsName
|
|
);
|
|
}
|
|
virtual ~wxSlider();
|
|
|
|
bool Create( wxWindow* pParent
|
|
,wxWindowID vId
|
|
,int nValue
|
|
,int nMinValue
|
|
,int nMaxValue
|
|
,const wxPoint& rPos = wxDefaultPosition
|
|
,const wxSize& rSize = wxDefaultSize
|
|
,long lStyle = wxSL_HORIZONTAL
|
|
,const wxValidator& rValidator = wxDefaultValidator
|
|
,const wxString& rsName = wxSliderNameStr
|
|
);
|
|
|
|
virtual int GetValue(void) const ;
|
|
virtual void SetValue(int);
|
|
|
|
void GetSize( int* pnX
|
|
,int* pnY
|
|
) const;
|
|
void GetPosition( int* pnX
|
|
,int* pnY
|
|
) const ;
|
|
bool Show(bool bShow = TRUE);
|
|
void SetRange( int nMinValue
|
|
,int nMaxValue
|
|
);
|
|
|
|
inline int GetMin(void) const { return m_nRangeMin; }
|
|
inline int GetMax(void) const { return m_nRangeMax; }
|
|
|
|
//
|
|
// For trackbars only
|
|
//
|
|
void ClearSel(void);
|
|
void ClearTicks(void);
|
|
|
|
int GetLineSize(void) const;
|
|
int GetPageSize(void) const ;
|
|
int GetSelEnd(void) const;
|
|
int GetSelStart(void) const;
|
|
inline int GetTickFreq(void) const { return m_nTickFreq; }
|
|
int GetThumbLength(void) const ;
|
|
|
|
void SetLineSize(int nLineSize);
|
|
void SetPageSize(int nPageSize);
|
|
void SetSelection( int nMinPos
|
|
,int nMaxPos
|
|
);
|
|
void SetThumbLength(int nLen) ;
|
|
void SetTick(int ntickPos) ;
|
|
void SetTickFreq( int n
|
|
,int nPos
|
|
);
|
|
|
|
//
|
|
// IMPLEMENTATION
|
|
//
|
|
inline WXHWND GetStaticMin(void) const { return m_hStaticMin; }
|
|
inline WXHWND GetStaticMax(void) const { return m_hStaticMax; }
|
|
inline WXHWND GetEditValue(void) const { return m_hStaticValue; }
|
|
virtual bool ContainsHWND(WXHWND hWnd) const;
|
|
void AdjustSubControls( int nX
|
|
,int nY
|
|
,int nWidth
|
|
,int nHeight
|
|
,int nSizeFlags
|
|
);
|
|
inline int GetSizeFlags(void) { return m_nSizeFlags; }
|
|
void Command(wxCommandEvent& rEvent);
|
|
virtual WXHBRUSH OnCtlColor( WXHDC hDC
|
|
,WXHWND hWnd
|
|
,WXUINT uCtlColor
|
|
,WXUINT uMessage
|
|
,WXWPARAM wParam
|
|
,WXLPARAM lParam
|
|
);
|
|
virtual bool OS2OnScroll( int nOrientation
|
|
,WXWORD wParam
|
|
,WXWORD wPos
|
|
,WXHWND hControl
|
|
);
|
|
|
|
protected:
|
|
WXHWND m_hStaticMin;
|
|
WXHWND m_hStaticMax;
|
|
WXHWND m_hStaticValue;
|
|
int m_nRangeMin;
|
|
int m_nRangeMax;
|
|
int m_nPageSize;
|
|
int m_nLineSize;
|
|
int m_nTickFreq;
|
|
double m_dPixelToRange;
|
|
int m_nThumbLength;
|
|
int m_nSizeFlags;
|
|
|
|
virtual void DoGetSize( int* pnWidth
|
|
,int* pnHeight
|
|
) const;
|
|
virtual void DoSetSize( int nX
|
|
,int nY
|
|
,int nWidth
|
|
,int nHeight
|
|
,int nSizeFlags = wxSIZE_AUTO
|
|
);
|
|
private:
|
|
DECLARE_DYNAMIC_CLASS(wxSlider)
|
|
}; // end of CLASS wxSlider
|
|
|
|
#endif
|
|
// _WX_SLIDER_H_
|