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.
65 lines
1.8 KiB
65 lines
1.8 KiB
5 years ago
|
//========= Copyright Valve Corporation, All rights reserved. ============//
|
||
|
//
|
||
|
//=======================================================================================//
|
||
|
|
||
|
#ifndef LOADOUT_PRESET_PANEL_H
|
||
|
#define LOADOUT_PRESET_PANEL_H
|
||
|
#ifdef _WIN32
|
||
|
#pragma once
|
||
|
#endif
|
||
|
|
||
|
#include "vgui_controls/EditablePanel.h"
|
||
|
#include "vgui_controls/PHandle.h"
|
||
|
#include "class_loadout_panel.h"
|
||
|
|
||
|
class CExButton;
|
||
|
class CSelectedItemPreset;
|
||
|
|
||
|
//-----------------------------------------------------------------------------
|
||
|
// A loadout preset panel, which allows combinations of items to be saved and
|
||
|
// restored via the GC.
|
||
|
//-----------------------------------------------------------------------------
|
||
|
class CLoadoutPresetPanel : public vgui::EditablePanel
|
||
|
{
|
||
|
DECLARE_CLASS_SIMPLE( CLoadoutPresetPanel, vgui::EditablePanel );
|
||
|
public:
|
||
|
CLoadoutPresetPanel( vgui::Panel *pParent, const char *pName ); // name is ignored but needed for DECLARE_BUILD_FACTORY()
|
||
|
|
||
|
void SetClass( int iClass );
|
||
|
void EnableVerticalDisplay( bool bVertical );
|
||
|
|
||
|
virtual void ApplySchemeSettings( vgui::IScheme *pScheme );
|
||
|
virtual void ApplySettings( KeyValues *pInResourceData );
|
||
|
virtual void PerformLayout();
|
||
|
virtual void OnCommand( const char *command );
|
||
|
virtual void OnTick() OVERRIDE;
|
||
|
|
||
|
bool HandlePresetKeyPressed( vgui::KeyCode code );
|
||
|
|
||
|
private:
|
||
|
equipped_preset_t GetSelectedPresetID() const;
|
||
|
void UpdatePresetButtonStates();
|
||
|
void LoadPreset( int iPresetIndex );
|
||
|
|
||
|
enum PresetsConsts_t
|
||
|
{
|
||
|
MAX_PRESETS = 4,
|
||
|
};
|
||
|
|
||
|
int m_iClass;
|
||
|
KeyValues *m_pPresetButtonKv;
|
||
|
CExButton *m_pPresetButtons[ MAX_PRESETS ];
|
||
|
bool m_bDisplayVertical;
|
||
|
|
||
|
enum PresetButtonColors_t
|
||
|
{
|
||
|
LOADED = 0, NOTLOADED,
|
||
|
FG = 0, BG,
|
||
|
DEFAULT = 0, ARMED, DEPRESSED
|
||
|
};
|
||
|
Color m_aDefaultColors[2][2][3]; // [LOADED|NOTLOADED][FG|BG][DEFAULT|ARMED|DEPRESSED]
|
||
|
};
|
||
|
|
||
|
|
||
|
#endif // LOADOUT_PRESET_PANEL_H
|