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.
75 lines
2.0 KiB
75 lines
2.0 KiB
//========= Copyright Valve Corporation, All rights reserved. ============// |
|
// |
|
// Purpose: |
|
// |
|
// $NoKeywords: $ |
|
//=============================================================================// |
|
|
|
#ifndef BONUSMAPSDIALOG_H |
|
#define BONUSMAPSDIALOG_H |
|
#ifdef _WIN32 |
|
#pragma once |
|
#endif |
|
|
|
#include "vgui_controls/Frame.h" |
|
|
|
#include "BonusMapsDatabase.h" |
|
|
|
|
|
//----------------------------------------------------------------------------- |
|
// Purpose: Displays and loads available bonus maps |
|
//----------------------------------------------------------------------------- |
|
class CBonusMapsDialog : public vgui::Frame |
|
{ |
|
DECLARE_CLASS_SIMPLE( CBonusMapsDialog, vgui::Frame ); |
|
|
|
public: |
|
CBonusMapsDialog(vgui::Panel *parent); |
|
~CBonusMapsDialog(); |
|
|
|
void SetSelectedBooleanStatus( const char *pchName, bool bValue ); |
|
void RefreshData( void ); |
|
|
|
int GetSelectedChallenge( void ); |
|
|
|
virtual void ApplySchemeSettings( vgui::IScheme *pScheme ); |
|
virtual void OnCommand( const char *command ); |
|
|
|
void OnKeyCodeTyped( vgui::KeyCode code ); |
|
void OnKeyCodePressed( vgui::KeyCode code ); |
|
|
|
private: |
|
bool ImportZippedBonusMaps( const char *pchZippedFileName ); |
|
|
|
void BuildMapsList( void ); |
|
|
|
void CreateBonusMapsList(); |
|
int GetSelectedItemBonusMapIndex(); |
|
|
|
void RefreshDialog( BonusMapDescription_t *pMap ); |
|
void RefreshMedalDisplay( BonusMapDescription_t *pMap ); |
|
void RefreshCompletionPercentage( void ); |
|
|
|
MESSAGE_FUNC( OnPanelSelected, "PanelSelected" ); |
|
MESSAGE_FUNC( OnControlModified, "ControlModified" ); |
|
MESSAGE_FUNC( OnTextChanged, "TextChanged" ) |
|
{ |
|
OnControlModified(); |
|
} |
|
MESSAGE_FUNC_CHARPTR( OnFileSelected, "FileSelected", fullpath ); |
|
|
|
private: |
|
Color m_PercentageBarBackgroundColor, m_PercentageBarColor; |
|
|
|
vgui::FileOpenDialog *m_hImportBonusMapsDialog; |
|
vgui::PanelListPanel *m_pGameList; |
|
vgui::ComboBox *m_pChallengeSelection; |
|
vgui::ImagePanel *m_pPercentageBarBackground; |
|
vgui::ImagePanel *m_pPercentageBar; |
|
}; |
|
|
|
|
|
extern CBonusMapsDialog *g_pBonusMapsDialog; |
|
|
|
|
|
#endif // BONUSMAPSDIALOG_H
|
|
|