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.
61 lines
1.8 KiB
61 lines
1.8 KiB
//========= Copyright © 1996-2002, Valve LLC, All rights reserved. ============ |
|
// |
|
// Purpose: |
|
// |
|
// $NoKeywords: $ |
|
//============================================================================= |
|
#pragma once |
|
#ifndef VGUI_SLIDER2_H |
|
#define VGUI_SLIDER2_H |
|
|
|
#include <VGUI.h> |
|
#include <VGUI_Panel.h> |
|
#include <VGUI_Dar.h> |
|
|
|
namespace vgui |
|
{ |
|
enum MouseCode; |
|
class IntChangeSignal; |
|
|
|
class VGUIAPI Slider2 : public Panel |
|
{ |
|
bool _vertical; |
|
bool _dragging; |
|
int _nobPos[2]; |
|
int _nobDragStartPos[2]; |
|
int _dragStartPos[2]; |
|
Dar<IntChangeSignal*> _intChangeSignalDar; |
|
int _range[2]; |
|
int _value; |
|
int _rangeWindow; |
|
bool _rangeWindowEnabled; |
|
int _buttonOffset; |
|
public: |
|
Slider2( int x, int y, int wide, int tall, bool vertical ); |
|
|
|
virtual void setValue( int value ); |
|
virtual int getValue(); |
|
virtual bool isVertical(); |
|
virtual void addIntChangeSignal( IntChangeSignal *s ); |
|
virtual void setRange( int min, int max ); |
|
virtual void getRange( int &min, int &max ); |
|
virtual void setRangeWindow( int rangeWindow ); |
|
virtual void setRangeWindowEnabled( bool state ); |
|
virtual void setSize( int wide, int tall ); |
|
virtual void getNobPos( int &min, int &max ); |
|
virtual bool hasFullRange(); |
|
virtual void setButtonOffset( int buttonOffset ); |
|
private: |
|
virtual void recomputeNobPosFromValue(); |
|
virtual void recomputeValueFromNobPos(); |
|
public: // bullshit public |
|
virtual void privateCursorMoved( int x, int y, Panel *panel ); |
|
virtual void privateMousePressed( MouseCode code, Panel *panel ); |
|
virtual void privateMouseReleased( MouseCode code, Panel *panel ); |
|
protected: |
|
virtual void fireIntChangeSignal(); |
|
virtual void paintBackground(); |
|
}; |
|
} |
|
|
|
#endif // VGUI_SLIDER2_H
|
|
|