#pragma once

#include "dllinterface.h"
#include "guielement.h"
#include "..\dxfunctions\dllinterface.h"
#include "..\dxfunctions\dxtexture.h"

//-----------------------------------------------------------------------------
//Name: Image
//Desc: Draws an image on the screen
//-----------------------------------------------------------------------------

class GAMEGUI_API Image : public GUIElement
{
protected:

	DXTexture *m_Texture;

	bool m_AlphaTest;
	bool m_AlphaBlend;
	float m_Opacity;

	virtual ~Image(void);

public:
	Image(MenuManager*manager,DWORD id);

	virtual void OnDraw(void);

	void SetTexture(DXTexture* tex);
	DXTexture* GetTexture(void) const { return m_Texture; }

	void SetAlphaTest(const bool at) { m_AlphaTest=at; }
	bool GetAlphaTest(void) const { return m_AlphaTest; }
	void SetAlphaBlend(const bool ab) { m_AlphaBlend=ab; }
	bool GetAlphaBlend(void) const { return m_AlphaBlend; }
	void SetOpacity(const float opacity){ m_Opacity = opacity; }
	float GetOpacity(void) const { return m_Opacity; }
};
