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.
105 lines
2.7 KiB
105 lines
2.7 KiB
//========= Copyright Valve Corporation, All rights reserved. ============// |
|
// |
|
// Purpose: |
|
// |
|
// $NoKeywords: $ |
|
//============================================================================= |
|
|
|
#ifndef GAMEPANELINFO_H |
|
#define GAMEPANELINFO_H |
|
#ifdef _WIN32 |
|
#pragma once |
|
#endif |
|
|
|
//#include <string.h> |
|
|
|
#include <KeyValues.h> |
|
|
|
#include <vgui_controls/Frame.h> |
|
#include <vgui_controls/PHandle.h> |
|
#include <vgui_controls/ListPanel.h> |
|
#include <vgui_controls/AnimatingImagePanel.h> |
|
#include <vgui_controls/Image.h> |
|
#include <vgui_controls/PropertyPage.h> |
|
|
|
#undef PropertySheet |
|
|
|
#include <vgui_controls/PropertySheet.h> |
|
|
|
#include "BanContextMenu.h" |
|
#include "chatpanel.h" |
|
#include "rawlogpanel.h" |
|
#include "serverconfigpanel.h" |
|
#include "playerpanel.h" |
|
#include "banpanel.h" |
|
#include "graphpanel.h" |
|
#include "serverinfopanel.h" |
|
|
|
#define PASSWORD_LEN 64 |
|
#define MOD_LEN 64 |
|
|
|
#include "imanageserver.h" // IManageServer interface |
|
|
|
|
|
class CBudgetPanelContainer; |
|
|
|
//----------------------------------------------------------------------------- |
|
// Purpose: Dialog for displaying information about a game server |
|
//----------------------------------------------------------------------------- |
|
class CGamePanelInfo : public vgui::Frame, public IManageServer |
|
{ |
|
DECLARE_CLASS_SIMPLE( CGamePanelInfo, vgui::Frame ); |
|
public: |
|
CGamePanelInfo(vgui::Panel *parent, const char *name, const char *mod); |
|
~CGamePanelInfo(); |
|
|
|
// IManageServer interface extras |
|
void ShowPage() { Activate(); } |
|
void AddToConsole(const char *msg); |
|
void SetAsRemoteServer(bool remote); |
|
|
|
protected: |
|
// message handlers |
|
void OnStop(); |
|
MESSAGE_FUNC( OnHelp, "Help" ); |
|
void OnMasterRequestRestart(); |
|
void OnMasterOutOfDate( const char *msg); |
|
MESSAGE_FUNC( OnRestartServer, "RestartServer" ); |
|
MESSAGE_FUNC( OnUpdateTitle, "UpdateTitle" ); |
|
void SetNewTitle(bool connectionFailed, const char *additional_text); // sets the windows title |
|
|
|
// vgui overrides |
|
virtual void OnTick(); |
|
virtual void OnClose(); |
|
virtual void PerformLayout(); |
|
virtual void ActivateBuildMode(); |
|
virtual void OnCommand(const char *command); |
|
|
|
private: |
|
// methods |
|
vgui::ComboBox *m_pViewCombo; |
|
vgui::AnimatingImagePanel *m_pAnimImagePanel; |
|
|
|
// GUI pabels |
|
// main property sheet |
|
vgui::PropertySheet *m_pDetailsSheet; |
|
|
|
// panels in the sheet |
|
CPlayerPanel *m_pPlayerListPanel; |
|
CBanPanel *m_pBanListPanel; |
|
CRawLogPanel *m_pServerLogPanel; |
|
CChatPanel *m_pServerChatPanel; |
|
CServerConfigPanel *m_pServerConfigPanel; |
|
CGraphPanel *m_pGraphsPanel; |
|
CServerInfoPanel *m_pServerInfoPanel; |
|
CBudgetPanelContainer *m_pBudgetPanel; |
|
|
|
// state |
|
bool m_bRemoteServer; |
|
bool m_bShuttingDown; |
|
|
|
vgui::DHANDLE<vgui::QueryBox> m_hRestartQueryBox; |
|
vgui::DHANDLE<vgui::QueryBox> m_hOutOfDateQueryBox; |
|
}; |
|
|
|
#endif // GAMEPANELINFO_H
|
|
|