aboutsummaryrefslogtreecommitdiff
path: root/mp/src/game/client/replay/vgui/replayrenderoverlay.h
blob: a6dbdab0d659bda8af70807ed18b09159a10dfcf (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
//========= Copyright Valve Corporation, All rights reserved. ============//
//
//=======================================================================================//

#ifndef REPLAY_RENDEROVERLAY_H
#define REPLAY_RENDEROVERLAY_H
#ifdef _WIN32
#pragma once
#endif

//-----------------------------------------------------------------------------

#include "vgui_controls/Frame.h"
#include "vgui_controls/ProgressBar.h"
#include "replay/rendermovieparams.h"

//-----------------------------------------------------------------------------

class CExButton;
class CExLabel;
class IQuickTimeMovieMaker;
class CReplay;
class CReplayRenderer;

//-----------------------------------------------------------------------------

class CReplayRenderOverlay : public vgui::Frame
{
	DECLARE_CLASS_SIMPLE( CReplayRenderOverlay, vgui::Frame );
public:
	CReplayRenderOverlay( Panel *pParent );
	~CReplayRenderOverlay();

	void Show();
	void Hide();

	CReplayRenderer		*m_pRenderer;

private:
	virtual void	ApplySchemeSettings( vgui::IScheme *pScheme );
	virtual void	PerformLayout();
	virtual void	OnTick();
	virtual void	OnMousePressed( vgui::MouseCode nCode );
	virtual void	OnKeyCodeTyped( vgui::KeyCode nCode );
	virtual void	OnCommand( const char *pCommand );

private:
	MESSAGE_FUNC_PTR( OnCheckButtonChecked, "CheckButtonChecked", pPanel );

#if _DEBUG
	bool				m_bReloadScheme;
#endif

	int					m_unNumFrames;
	float				m_flStartTime;
	float				m_flPreviousTimeLeft;
	EditablePanel		*m_pBottom;
	vgui::ProgressBar	*m_pRenderProgress;
	vgui::CheckButton	*m_pPreviewCheckButton;
	CExButton			*m_pCancelButton;
	CExLabel			*m_pTitleLabel;
	CExLabel			*m_pFilenameLabel;
	CExLabel			*m_pProgressLabel;
};

//-----------------------------------------------------------------------------

void ReplayUI_OpenReplayRenderOverlay();
void ReplayUI_HideRenderOverlay();

//-----------------------------------------------------------------------------

#endif // REPLAY_RENDEROVERLAY_H