summaryrefslogtreecommitdiff
path: root/game/client/cstrike/VGUI/stats_summary.h
diff options
context:
space:
mode:
authorFluorescentCIAAfricanAmerican <[email protected]>2020-04-22 12:56:21 -0400
committerFluorescentCIAAfricanAmerican <[email protected]>2020-04-22 12:56:21 -0400
commit3bf9df6b2785fa6d951086978a3e66f49427166a (patch)
tree2c0f1f0c63c4832882bc93814ebd2c2b1c6224e5 /game/client/cstrike/VGUI/stats_summary.h
downloadarchived-source-engine-2018-hl2-src-master.tar.xz
archived-source-engine-2018-hl2-src-master.zip
Diffstat (limited to 'game/client/cstrike/VGUI/stats_summary.h')
-rw-r--r--game/client/cstrike/VGUI/stats_summary.h84
1 files changed, 84 insertions, 0 deletions
diff --git a/game/client/cstrike/VGUI/stats_summary.h b/game/client/cstrike/VGUI/stats_summary.h
new file mode 100644
index 0000000..e4e0c41
--- /dev/null
+++ b/game/client/cstrike/VGUI/stats_summary.h
@@ -0,0 +1,84 @@
+//========= Copyright Valve Corporation, All rights reserved. ============//
+//
+// Purpose:
+//
+// $NoKeywords: $
+//=============================================================================//
+
+#ifndef CSSTATSSUMMARY_H
+#define CSSTATSSUMMARY_H
+#ifdef _WIN32
+#pragma once
+#endif
+
+#include "vgui_controls/PanelListPanel.h"
+#include "vgui_controls/Label.h"
+#include "tier1/KeyValues.h"
+#include "vgui_controls/PropertyPage.h"
+#include "vgui_controls/Button.h"
+#include "c_cs_player.h"
+#include "cs_gamestats_shared.h"
+#include "achievements_page.h"
+#include "GameEventListener.h"
+#include "utlmap.h"
+
+class IAchievement;
+class IScheme;
+class CAchievementsPageGroupPanel;
+class StatCard;
+class CCSBaseAchievement;
+
+class CStatsSummary : public vgui::PropertyPage, public CGameEventListener
+{
+ DECLARE_CLASS_SIMPLE ( CStatsSummary, vgui::PropertyPage );
+
+public:
+ CStatsSummary( vgui::Panel *parent, const char *name );
+ ~CStatsSummary();
+
+ virtual void ApplySchemeSettings( vgui::IScheme *pScheme );
+ virtual void ApplySettings( KeyValues *pResourceData );
+ virtual void OnSizeChanged( int newWide, int newTall );
+ virtual void FireGameEvent( IGameEvent *event );
+
+ virtual void OnThink();
+ virtual void OnPageShow();
+
+ void UpdateStatsData();
+ void UpdateStatsSummary();
+ void UpdateKillHistory();
+ void UpdateFavoriteWeaponData();
+ void UpdateMapsData();
+ void UpdateRecentAchievements();
+ void UpdateLastMatchStats();
+
+ void UpdateLastMatchFavoriteWeaponStats();
+
+private:
+
+ static int AchivementDateSortPredicate( CCSBaseAchievement* const* pLeft, CCSBaseAchievement* const* pRight);
+ void DisplayCompressedLocalizedStat(CSStatType_t stat, const char* dialogVariable, const char* localizationToken = NULL);
+ void DisplayFormattedLabel(const char* localizationToken, const wchar_t* valueText, const char* dialogVariable);
+
+ int m_iFixedWidth;
+ int m_iDefaultWeaponImage;
+ int m_iDefaultMapImage;
+
+ vgui::Label* m_pLabelRoundsPlayed;
+ vgui::Label* m_pLabelRoundsWon;
+ vgui::ImagePanel* m_pImagePanelFavWeapon;
+ vgui::ImagePanel* m_pImagePanelLastMapFavWeapon;
+ vgui::ImagePanel* m_pImagePanelFavMap;
+
+ vgui::ImageList *m_pImageList;
+
+ vgui::PanelListPanel *m_pRecentAchievementsList;
+
+ StatCard* m_pStatCard;
+
+ bool m_bRecentAchievementsDirty;
+ bool m_bStatsDirty;
+
+ CUtlMap<CSStatType_t, int> m_StatImageMap;
+};
+#endif // CSSTATSSUMMARY_H \ No newline at end of file