aboutsummaryrefslogtreecommitdiff
path: root/sp/src/public/vgui_controls/BitmapImagePanel.h
diff options
context:
space:
mode:
authorJoe Ludwig <[email protected]>2013-06-26 15:22:04 -0700
committerJoe Ludwig <[email protected]>2013-06-26 15:22:04 -0700
commit39ed87570bdb2f86969d4be821c94b722dc71179 (patch)
treeabc53757f75f40c80278e87650ea92808274aa59 /sp/src/public/vgui_controls/BitmapImagePanel.h
downloadsource-sdk-2013-39ed87570bdb2f86969d4be821c94b722dc71179.tar.xz
source-sdk-2013-39ed87570bdb2f86969d4be821c94b722dc71179.zip
First version of the SOurce SDK 2013
Diffstat (limited to 'sp/src/public/vgui_controls/BitmapImagePanel.h')
-rw-r--r--sp/src/public/vgui_controls/BitmapImagePanel.h57
1 files changed, 57 insertions, 0 deletions
diff --git a/sp/src/public/vgui_controls/BitmapImagePanel.h b/sp/src/public/vgui_controls/BitmapImagePanel.h
new file mode 100644
index 00000000..95c1286d
--- /dev/null
+++ b/sp/src/public/vgui_controls/BitmapImagePanel.h
@@ -0,0 +1,57 @@
+//========= Copyright Valve Corporation, All rights reserved. ============//
+//
+// Purpose:
+//
+// $NoKeywords: $
+//=============================================================================//
+
+#ifndef BITMAPIMAGEPANEL_H
+#define BITMAPIMAGEPANEL_H
+#ifdef _WIN32
+#pragma once
+#endif
+
+#include <vgui_controls/Label.h>
+
+namespace vgui {
+
+class CBitmapImagePanel : public vgui::Panel
+{
+public:
+ CBitmapImagePanel( vgui::Panel *parent, char const *panelName, char const *filename = NULL );
+ ~CBitmapImagePanel();
+
+ virtual void PaintBackground();
+
+ virtual void setTexture( char const *filename, bool hardwareFiltered = true );
+
+ void setImageColor( Color color ) { m_bgColor = color; }
+
+ // Set how the image aligns itself within the panel
+ virtual void SetContentAlignment(Label::Alignment alignment);
+
+protected:
+ virtual void GetSettings(KeyValues *outResourceData);
+ virtual void ApplySettings(KeyValues *inResourceData);
+ virtual const char *GetDescription();
+ virtual void ApplySchemeSettings( IScheme *pScheme );
+ virtual void PaintBorder();
+
+private:
+ typedef vgui::Panel BaseClass;
+
+ virtual void ComputeImagePosition(int &x, int &y, int &w, int &h);
+ Label::Alignment m_contentAlignment;
+
+ bool m_preserveAspectRatio;
+ bool m_hardwareFiltered;
+
+ IImage *m_pImage;
+ Color m_bgColor;
+ char *m_pszImageName;
+ char *m_pszColorName;
+};
+
+};
+
+#endif // BITMAPIMAGEPANEL_H