mirror of
https://github.com/celisej567/source-engine.git
synced 2026-01-04 18:09:53 +03:00
1
This commit is contained in:
107
gameui/CommentaryExplanationDialog.cpp
Normal file
107
gameui/CommentaryExplanationDialog.cpp
Normal file
@@ -0,0 +1,107 @@
|
||||
//========= Copyright Valve Corporation, All rights reserved. ============//
|
||||
//
|
||||
// Purpose:
|
||||
//
|
||||
//=============================================================================
|
||||
|
||||
#include "CommentaryExplanationDialog.h"
|
||||
#include "BasePanel.h"
|
||||
#include "convar.h"
|
||||
#include "EngineInterface.h"
|
||||
#include "GameUI_Interface.h"
|
||||
#include "vgui/ISurface.h"
|
||||
#include "vgui/IInput.h"
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
using namespace vgui;
|
||||
|
||||
// memdbgon must be the last include file in a .cpp file!!!
|
||||
#include "tier0/memdbgon.h"
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// Purpose:
|
||||
//-----------------------------------------------------------------------------
|
||||
CCommentaryExplanationDialog::CCommentaryExplanationDialog(vgui::Panel *parent, char *pszFinishCommand) : BaseClass(parent, "CommentaryExplanationDialog")
|
||||
{
|
||||
SetDeleteSelfOnClose(true);
|
||||
SetSizeable( false );
|
||||
|
||||
input()->SetAppModalSurface(GetVPanel());
|
||||
|
||||
LoadControlSettings("Resource/CommentaryExplanationDialog.res");
|
||||
|
||||
MoveToCenterOfScreen();
|
||||
|
||||
GameUI().PreventEngineHideGameUI();
|
||||
|
||||
// Save off the finish command
|
||||
Q_snprintf( m_pszFinishCommand, sizeof( m_pszFinishCommand ), "%s", pszFinishCommand );
|
||||
}
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// Purpose:
|
||||
//-----------------------------------------------------------------------------
|
||||
CCommentaryExplanationDialog::~CCommentaryExplanationDialog()
|
||||
{
|
||||
}
|
||||
|
||||
void CCommentaryExplanationDialog::OnKeyCodeTyped(KeyCode code)
|
||||
{
|
||||
if ( code == KEY_ESCAPE )
|
||||
{
|
||||
OnCommand( "cancel" );
|
||||
}
|
||||
else
|
||||
{
|
||||
BaseClass::OnKeyCodeTyped(code);
|
||||
}
|
||||
}
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// Purpose:
|
||||
//-----------------------------------------------------------------------------
|
||||
void CCommentaryExplanationDialog::OnKeyCodePressed(KeyCode code)
|
||||
{
|
||||
if ( GetBaseButtonCode( code ) == KEY_XBUTTON_B || GetBaseButtonCode( code ) == STEAMCONTROLLER_B )
|
||||
{
|
||||
OnCommand( "cancel" );
|
||||
}
|
||||
else if ( GetBaseButtonCode( code ) == KEY_XBUTTON_A || GetBaseButtonCode( code ) == STEAMCONTROLLER_A )
|
||||
{
|
||||
OnCommand( "ok" );
|
||||
}
|
||||
else
|
||||
{
|
||||
BaseClass::OnKeyCodePressed(code);
|
||||
}
|
||||
}
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// Purpose: handles button commands
|
||||
//-----------------------------------------------------------------------------
|
||||
void CCommentaryExplanationDialog::OnCommand( const char *command )
|
||||
{
|
||||
if ( !stricmp( command, "ok" ) )
|
||||
{
|
||||
Close();
|
||||
BasePanel()->FadeToBlackAndRunEngineCommand( m_pszFinishCommand );
|
||||
}
|
||||
else if ( !stricmp( command, "cancel" ) || !stricmp( command, "close" ) )
|
||||
{
|
||||
Close();
|
||||
}
|
||||
else
|
||||
{
|
||||
BaseClass::OnCommand( command );
|
||||
}
|
||||
}
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// Purpose:
|
||||
//-----------------------------------------------------------------------------
|
||||
void CCommentaryExplanationDialog::OnClose( void )
|
||||
{
|
||||
BaseClass::OnClose();
|
||||
GameUI().AllowEngineHideGameUI();
|
||||
}
|
||||
Reference in New Issue
Block a user