You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
63 lines
1.7 KiB
63 lines
1.7 KiB
//========= Copyright Valve Corporation, All rights reserved. ============// |
|
// |
|
// Purpose: |
|
// |
|
// $NoKeywords: $ |
|
//=============================================================================// |
|
|
|
#ifndef CVARSLIDER_H |
|
#define CVARSLIDER_H |
|
#ifdef _WIN32 |
|
#pragma once |
|
#endif |
|
|
|
#include <vgui_controls/Slider.h> |
|
|
|
class CCvarSlider : public vgui::Slider |
|
{ |
|
DECLARE_CLASS_SIMPLE( CCvarSlider, vgui::Slider ); |
|
|
|
public: |
|
|
|
CCvarSlider( vgui::Panel *parent, const char *panelName ); |
|
CCvarSlider( vgui::Panel *parent, const char *panelName, char const *caption, |
|
float minValue, float maxValue, char const *cvarname, bool bAllowOutOfRange=false ); |
|
~CCvarSlider(); |
|
|
|
void SetupSlider( float minValue, float maxValue, const char *cvarname, bool bAllowOutOfRange ); |
|
|
|
void SetCVarName( char const *cvarname ); |
|
void SetMinMaxValues( float minValue, float maxValue, bool bSetTickdisplay = true ); |
|
void SetTickColor( Color color ); |
|
|
|
virtual void Paint(); |
|
|
|
virtual void ApplySettings( KeyValues *inResourceData ); |
|
virtual void GetSettings( KeyValues *outResourceData ); |
|
|
|
void ApplyChanges(); |
|
float GetSliderValue(); |
|
void SetSliderValue(float fValue); |
|
void Reset(); |
|
bool HasBeenModified(); |
|
|
|
private: |
|
MESSAGE_FUNC( OnSliderMoved, "SliderMoved" ); |
|
MESSAGE_FUNC( OnSliderDragEnd, "SliderDragEnd" ); |
|
|
|
CPanelAnimationVar( bool, m_bUseConVarMinMax, "use_convar_minmax", "0" ); |
|
|
|
bool m_bAllowOutOfRange; |
|
bool m_bModifiedOnce; |
|
float m_fStartValue; |
|
int m_iStartValue; |
|
int m_iLastSliderValue; |
|
float m_fCurrentValue; |
|
char m_szCvarName[ 64 ]; |
|
|
|
bool m_bCreatedInCode; |
|
float m_flMinValue; |
|
float m_flMaxValue; |
|
}; |
|
|
|
#endif // CVARSLIDER_H
|
|
|