diff options
| author | Joe Ludwig <[email protected]> | 2013-06-26 15:22:04 -0700 |
|---|---|---|
| committer | Joe Ludwig <[email protected]> | 2013-06-26 15:22:04 -0700 |
| commit | 39ed87570bdb2f86969d4be821c94b722dc71179 (patch) | |
| tree | abc53757f75f40c80278e87650ea92808274aa59 /mp/src/game/client/game_controls/IconPanel.cpp | |
| download | source-sdk-2013-39ed87570bdb2f86969d4be821c94b722dc71179.tar.xz source-sdk-2013-39ed87570bdb2f86969d4be821c94b722dc71179.zip | |
First version of the SOurce SDK 2013
Diffstat (limited to 'mp/src/game/client/game_controls/IconPanel.cpp')
| -rw-r--r-- | mp/src/game/client/game_controls/IconPanel.cpp | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/mp/src/game/client/game_controls/IconPanel.cpp b/mp/src/game/client/game_controls/IconPanel.cpp new file mode 100644 index 00000000..88fb8071 --- /dev/null +++ b/mp/src/game/client/game_controls/IconPanel.cpp @@ -0,0 +1,68 @@ +//========= Copyright Valve Corporation, All rights reserved. ============//
+//
+// Purpose:
+//
+//=============================================================================//
+
+#include "cbase.h"
+#include "IconPanel.h"
+#include "KeyValues.h"
+
+DECLARE_BUILD_FACTORY( CIconPanel );
+
+CIconPanel::CIconPanel( vgui::Panel *parent, const char *name ) : vgui::Panel( parent, name )
+{
+ m_szIcon[0] = '\0';
+ m_icon = NULL;
+ m_bScaleImage = false;
+}
+
+void CIconPanel::ApplySettings( KeyValues *inResourceData )
+{
+ Q_strncpy( m_szIcon, inResourceData->GetString( "icon", "" ), sizeof( m_szIcon ) );
+
+ m_icon = gHUD.GetIcon( m_szIcon );
+
+ m_bScaleImage = inResourceData->GetInt("scaleImage", 0);
+
+ BaseClass::ApplySettings( inResourceData );
+}
+
+void CIconPanel::SetIcon( const char *szIcon )
+{
+ Q_strncpy( m_szIcon, szIcon, sizeof(m_szIcon) );
+
+ m_icon = gHUD.GetIcon( m_szIcon );
+}
+
+void CIconPanel::Paint()
+{
+ BaseClass::Paint();
+
+ if ( m_icon )
+ {
+ int x, y, w, h;
+ GetBounds( x, y, w, h );
+
+ if ( m_bScaleImage )
+ {
+ m_icon->DrawSelf( 0, 0, w, h, m_IconColor );
+ }
+ else
+ {
+ m_icon->DrawSelf( 0, 0, m_IconColor );
+ }
+ }
+}
+
+void CIconPanel::ApplySchemeSettings( vgui::IScheme *pScheme )
+{
+ BaseClass::ApplySchemeSettings( pScheme );
+
+ if ( m_szIcon[0] != '\0' )
+ {
+ m_icon = gHUD.GetIcon( m_szIcon );
+ }
+
+ SetFgColor( pScheme->GetColor( "FgColor", Color( 255, 255, 255, 255 ) ) );
+}
|