summaryrefslogtreecommitdiff
path: root/common/vgui/vgui_budgetpanelshared.h
diff options
context:
space:
mode:
Diffstat (limited to 'common/vgui/vgui_budgetpanelshared.h')
-rw-r--r--common/vgui/vgui_budgetpanelshared.h71
1 files changed, 71 insertions, 0 deletions
diff --git a/common/vgui/vgui_budgetpanelshared.h b/common/vgui/vgui_budgetpanelshared.h
new file mode 100644
index 0000000..5713604
--- /dev/null
+++ b/common/vgui/vgui_budgetpanelshared.h
@@ -0,0 +1,71 @@
+//========= Copyright Valve Corporation, All rights reserved. ============//
+//
+// Purpose:
+//
+//===========================================================================//
+
+#ifndef VGUI_BUDGETPANELSHARED_H
+#define VGUI_BUDGETPANELSHARED_H
+
+#ifdef _WIN32
+#pragma once
+#endif
+
+
+#include "vgui_basebudgetpanel.h"
+
+
+class IConVar;
+
+
+// Shared between the engine and dedicated server.
+class CBudgetPanelShared : public CBaseBudgetPanel
+{
+ typedef CBaseBudgetPanel BaseClass;
+
+public:
+
+ // budgetFlagsFilter is a combination of BUDGETFLAG_ defines that filters out which budget groups we are interested in.
+ CBudgetPanelShared( vgui::Panel *pParent, const char *pElementName, int budgetFlagsFilter );
+ ~CBudgetPanelShared();
+
+ // Override this to set the window position.
+ virtual void SetupCustomConfigData( CBudgetPanelConfigData &data );
+
+ virtual void SetTimeLabelText();
+ virtual void SetHistoryLabelText();
+
+ virtual void PaintBackground();
+ virtual void Paint( void );
+ virtual void PostChildPaint();
+
+ virtual void SnapshotVProfHistory( float filteredtime );
+
+ // Command handlers
+ void OnNumBudgetGroupsChanged( void );
+
+ void SendConfigDataToBase();
+
+
+public:
+
+ static double g_fFrameTimeLessBudget;
+ static double g_fFrameRate;
+
+
+private:
+
+ void DrawColoredText(
+ vgui::HFont font,
+ int x, int y,
+ int r, int g, int b, int a,
+ PRINTF_FORMAT_STRING const char *pText,
+ ... ) FMTFUNCTION( 9, 10 );
+};
+
+
+// CVars that change the layout can hook this.
+void PanelGeometryChangedCallBack( IConVar *var, const char *pOldString, float flOldValue );
+
+
+#endif // VGUI_BUDGETPANELSHARED_H