forked from hitmen047/Source-PlusPlus
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathIImage.h
75 lines (55 loc) · 1.69 KB
/
IImage.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
//========= Copyright Valve Corporation, All rights reserved. ============//
//
// Purpose:
//
// $NoKeywords: $
//=============================================================================//
#ifndef IIMAGE_H
#define IIMAGE_H
#ifdef _WIN32
#pragma once
#endif
#include <vgui/VGUI.h>
class Color;
namespace vgui
{
typedef unsigned long HTexture;
enum iimage_rotation_t
{
ROTATED_UNROTATED = 0,
ROTATED_CLOCKWISE_90,
ROTATED_ANTICLOCKWISE_90,
ROTATED_FLIPPED,
};
//-----------------------------------------------------------------------------
// Purpose: Interface to drawing an image
//-----------------------------------------------------------------------------
class IImage
{
public:
// Call to Paint the image
// Image will draw within the current panel context at the specified position
virtual void Paint() = 0;
// Set the position of the image
virtual void SetPos(int x, int y) = 0;
// Gets the size of the content
virtual void GetContentSize(int &wide, int &tall) = 0;
// Get the size the image will actually draw in (usually defaults to the content size)
virtual void GetSize(int &wide, int &tall) = 0;
// Sets the size of the image
virtual void SetSize(int wide, int tall) = 0;
// Set the draw color
virtual void SetColor(Color col) = 0;
// virtual destructor
virtual ~IImage() {}
// not for general purpose use
// evicts the underlying image from memory if refcounts permit, otherwise ignored
// returns true if eviction occurred, otherwise false
virtual bool Evict() = 0;
virtual int GetNumFrames() = 0;
virtual void SetFrame( int nFrame ) = 0;
virtual HTexture GetID() = 0;
virtual void SetRotation( int iRotation ) = 0;
};
} // namespace vgui
#endif // IIMAGE_H