mirror of
https://github.com/nillerusr/source-engine.git
synced 2024-12-29 09:33:00 +00:00
110 lines
3.3 KiB
C++
110 lines
3.3 KiB
C++
//========= Copyright Valve Corporation, All rights reserved. ============//
|
|
//
|
|
// Purpose:
|
|
//
|
|
// $NoKeywords: $
|
|
//=============================================================================//
|
|
|
|
#ifndef REPLAYBROWSER_RENDERDIALOG_H
|
|
#define REPLAYBROWSER_RENDERDIALOG_H
|
|
#ifdef _WIN32
|
|
#pragma once
|
|
#endif
|
|
|
|
#include "replaybrowserbasepanel.h"
|
|
#include "vgui/IScheme.h"
|
|
#include "vgui_controls/CheckButton.h"
|
|
#include "vgui_controls/ComboBox.h"
|
|
#include "vgui_controls/Slider.h"
|
|
#include "replay/replayhandle.h"
|
|
|
|
using namespace vgui;
|
|
|
|
class CExLabel;
|
|
class CExButton;
|
|
|
|
//-----------------------------------------------------------------------------
|
|
// Purpose:
|
|
//-----------------------------------------------------------------------------
|
|
class CReplayRenderDialog : public CReplayBasePanel
|
|
{
|
|
DECLARE_CLASS_SIMPLE( CReplayRenderDialog, CReplayBasePanel );
|
|
public:
|
|
CReplayRenderDialog( Panel *pParent, ReplayHandle_t hReplay, bool bSetQuit, int iPerformance );
|
|
|
|
virtual void ApplySchemeSettings( IScheme *pScheme );
|
|
virtual void PerformLayout();
|
|
virtual void OnCommand( const char *pCommand );
|
|
virtual void OnKeyCodeTyped( vgui::KeyCode code );
|
|
virtual void OnThink();
|
|
|
|
MESSAGE_FUNC_PARAMS( OnTextChanged, "TextChanged", data );
|
|
MESSAGE_FUNC_PTR( OnCheckButtonChecked, "CheckButtonChecked", panel );
|
|
|
|
private:
|
|
MESSAGE_FUNC( OnSetFocus, "SetFocus" );
|
|
|
|
void Close();
|
|
void Render();
|
|
void ValidateRenderData();
|
|
void UpdateControlsValues();
|
|
void AddControlToAutoLayout( Panel *pPanel, bool bAdvanced );
|
|
void SetValuesFromQualityPreset();
|
|
|
|
bool m_bShowAdvancedOptions;
|
|
int m_iQualityPreset;
|
|
ReplayHandle_t m_hReplay;
|
|
bool m_bSetQuit;
|
|
int m_iPerformance;
|
|
CheckButton *m_pPlayVoiceCheck;
|
|
CheckButton *m_pShowAdvancedOptionsCheck;
|
|
CheckButton *m_pQuitWhenDoneCheck;
|
|
CheckButton *m_pExportRawCheck;
|
|
CExButton *m_pCancelButton;
|
|
CExButton *m_pRenderButton;
|
|
TextEntry *m_pTitleText;
|
|
ComboBox *m_pVideoModesCombo;
|
|
ComboBox *m_pCodecCombo;
|
|
CExLabel *m_pQualityPresetLabel;
|
|
ComboBox *m_pQualityPresetCombo;
|
|
CExLabel *m_pResolutionNoteLabel;
|
|
CExLabel *m_pEnterANameLabel;
|
|
CExLabel *m_pVideoModeLabel;
|
|
CExLabel *m_pTitleLabel;
|
|
CExLabel *m_pLockWarningLabel;
|
|
CExLabel *m_pCodecLabel;
|
|
CExLabel *m_pEstimateTimeLabel;
|
|
CExLabel *m_pEstimateFileLabel;
|
|
CheckButton *m_pMotionBlurCheck;
|
|
CExLabel *m_pMotionBlurLabel;
|
|
Slider *m_pMotionBlurSlider;
|
|
CExLabel *m_pQualityLabel;
|
|
Slider *m_pQualitySlider;
|
|
EditablePanel *m_pBgPanel;
|
|
Panel *m_pSeparator;
|
|
CheckButton *m_pGlowEnabledCheck;
|
|
|
|
struct LayoutInfo_t
|
|
{
|
|
Panel *pPanel;
|
|
int nOffsetX;
|
|
int nOffsetY;
|
|
bool bAdvanced;
|
|
};
|
|
|
|
CUtlLinkedList< LayoutInfo_t * > m_lstControls;
|
|
CPanelAnimationVarAliasType( int, m_nStartY, "start_y", "0", "proportional_ypos" );
|
|
CPanelAnimationVarAliasType( int, m_nVerticalBuffer, "vertical_buffer", "0", "proportional_ypos" );
|
|
CPanelAnimationVarAliasType( int, m_nDefaultX, "default_x", "0", "proportional_xpos" );
|
|
|
|
friend class CReplayGameStatsHelper;
|
|
};
|
|
|
|
//-----------------------------------------------------------------------------
|
|
|
|
void ReplayUI_ShowRenderDialog( Panel* pParent, ReplayHandle_t hReplay, bool bSetQuit, int iPerformance );
|
|
|
|
//-----------------------------------------------------------------------------
|
|
|
|
#endif // REPLAYBROWSER_RENDERDIALOG_H
|