summaryrefslogtreecommitdiff
path: root/public/toolutils/toolmenubar.h
blob: f7973529f577a4e4d1bc74668e9e666b23d47d50 (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
//========= Copyright Valve Corporation, All rights reserved. ============//
//
// This menu bar displays a couple extra labels:
// one which contains the tool name, and one which contains a arbitrary info 
//
//=============================================================================

#ifndef TOOLMENUBAR_H
#define TOOLMENUBAR_H

#ifdef _WIN32
#pragma once
#endif


#include "vgui_controls/menubar.h"

using namespace vgui;


//-----------------------------------------------------------------------------
// Forward declarations
//-----------------------------------------------------------------------------
namespace vgui
{
	class Panel;
	class Label;
}

class CBaseToolSystem;

//-----------------------------------------------------------------------------
// Main menu bar
//-----------------------------------------------------------------------------
class CToolMenuBar : public vgui::MenuBar
{
	DECLARE_CLASS_SIMPLE( CToolMenuBar, vgui::MenuBar );

public:
	CToolMenuBar( CBaseToolSystem *parent, const char *panelName );
	virtual void PerformLayout();
	void SetToolName( const char *name );
	void SetInfo( const char *text );

	CBaseToolSystem *GetToolSystem();

protected:
	Label		*m_pInfo;
	Label		*m_pToolName;
	CBaseToolSystem *m_pToolSystem;
};


//-----------------------------------------------------------------------------
// Main menu bar version that stores file name on it
//-----------------------------------------------------------------------------
class CToolFileMenuBar : public CToolMenuBar
{
	DECLARE_CLASS_SIMPLE( CToolFileMenuBar, CToolMenuBar );

public:
	CToolFileMenuBar( CBaseToolSystem *parent, const char *panelName );
	virtual void PerformLayout();
	void SetFileName( const char *pFileName );

private:
	Label		*m_pFileName;
};


#endif // TOOLMENUBAR_H