summaryrefslogtreecommitdiff
path: root/public/vgui_controls/Image.h
diff options
context:
space:
mode:
Diffstat (limited to 'public/vgui_controls/Image.h')
-rw-r--r--public/vgui_controls/Image.h80
1 files changed, 80 insertions, 0 deletions
diff --git a/public/vgui_controls/Image.h b/public/vgui_controls/Image.h
new file mode 100644
index 0000000..9ed128e
--- /dev/null
+++ b/public/vgui_controls/Image.h
@@ -0,0 +1,80 @@
+//========= Copyright Valve Corporation, All rights reserved. ============//
+//
+// Purpose:
+//
+// $NoKeywords: $
+//=============================================================================//
+
+#ifndef IMAGE_H
+#define IMAGE_H
+
+#ifdef _WIN32
+#pragma once
+#endif
+
+#include <vgui/VGUI.h>
+#include <Color.h>
+#include <vgui/IImage.h>
+
+namespace vgui
+{
+
+class Panel;
+
+//-----------------------------------------------------------------------------
+// Purpose: Basic image control
+//-----------------------------------------------------------------------------
+class Image : public IImage
+{
+public:
+ Image();
+ virtual ~Image();
+
+ // Set the position of the image
+ virtual void SetPos( int x, int y );
+ // Get the position of the image
+ virtual void GetPos( int &x, int &y );
+ // Get the size of the image
+ virtual void GetSize( int &wide, int &tall );
+ virtual void GetContentSize( int &wide, int &tall );
+ // Set the draw color
+ virtual void SetColor( Color color );
+ // set the background color
+ virtual void SetBkColor( Color color ) { DrawSetColor( color ); }
+ // Get the draw color
+ virtual Color GetColor();
+ virtual bool Evict();
+ virtual int GetNumFrames();
+ virtual void SetFrame( int nFrame );
+ virtual HTexture GetID();
+ virtual void SetRotation( int iRotation ) { return; };
+
+protected:
+ virtual void SetSize(int wide, int tall);
+ virtual void DrawSetColor(Color color);
+ virtual void DrawSetColor(int r, int g, int b, int a);
+ virtual void DrawFilledRect(int x0, int y0, int x1, int y1);
+ virtual void DrawOutlinedRect(int x0, int y0, int x1, int y1);
+ virtual void DrawLine(int x0,int y0,int x1,int y1);
+ virtual void DrawPolyLine(int *px, int *py, int numPoints);
+ virtual void DrawSetTextFont(HFont font);
+ virtual void DrawSetTextColor(Color color);
+ virtual void DrawSetTextColor(int r, int g, int b, int a);
+ virtual void DrawSetTextPos(int x,int y);
+ virtual void DrawPrintText(const wchar_t *str, int strlen);
+ virtual void DrawPrintText(int x, int y, const wchar_t *str, int strlen);
+ virtual void DrawPrintChar(wchar_t ch);
+ virtual void DrawPrintChar(int x, int y, wchar_t ch);
+ virtual void DrawSetTexture(int id);
+ virtual void DrawTexturedRect(int x0, int y0, int x1, int y1);
+ virtual void Paint() = 0;
+
+private:
+ int _pos[2];
+ int _size[2];
+ Color _color;
+};
+
+} // namespace vgui
+
+#endif // IMAGE_H