mirror of
https://github.com/FWGS/hlsdk-xash3d
synced 2024-11-25 11:19:39 +01:00
ba2cab60df
* Get VGUI back (optionally) * Add some missing VGUI invocations * Update CMakeLists.txt to build with vgui for Windows * Move windows.h inclusions only to those places where it's really needed * Try fix mingw build * Update hud_spectator * Merge nekonomicon's vgui branch * Don't include vgui panel and app in cdll_int.cpp if vgui is real * Deduplicate scoreboard global variables * Add options to prefer non-vgui motd and scoreboard when vgui is enabled * Add vgui-dev as a submodule. Add building vith vgui to CI * Fix artifact uploading * Don't use global variable when not necessary * char* to const char* in CMenuHandler_StringCommand constructor * Fix 'format string is not a literal string' warnings * Fix 'always evaluate to true' warnings * Team Fortress classes to const char* * CreateCommandMenu accepts const char* * Fix printf formats. Turn some unsigned longs into unsigned ints since they use only 32 bits anyway * Explicit assignment result as condition * Prevent memory leak on menu reading * Localize button text * Create FileInputStream on stack avoiding the leak * Remove Servers Browser code * Arrow file names to const char* * Fix assignment to the wrong variable
62 lines
1.8 KiB
C++
62 lines
1.8 KiB
C++
//========= 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
|