#ifndef _GRAPHICS_H_
#define _GRAPHICS_H_
enum BorderStyle{None,Border3D,FlatBorder};
enum TextAlign{Left,Center,Right};
enum Colors{Black,Blue,Green,Cyan,Red,Magenta,Brown,LightGray,DarkGray,LightBlue,LightGreen,LightCyan,LightRed,LightMagenta,Yellow,White};

const Colors DefaultBackgroundColor = LightGray;
const Colors DefaultTextColor = Black;
const TextAlign DefaultTextAlign = Left;
const BorderStyle DefaultBorderStyle = Border3D;
const int BackGroundColor = LightGray;

/*DRO*/
class CSize
{
public:
	int m_iX;
	int m_iY;
	int m_iMaxX;
	int m_iMaxY;

	CSize(int iX = 0, int iY = 0, int iMaxX = 0, int iMaxY = 0)
	{
		m_iX	= iX;
		m_iY	= iY;
		m_iMaxX	= iMaxX;
		m_iMaxY	= iMaxY;
	}
};

class CGraphics
{
	public: 	
		CGraphics();
		~CGraphics();
		void ClearScreen(void);
		CSize GetSizeTitle(void);
		CSize GetSizeBarTask(void);
		CSize getSizeBody(void);
		int Line3D(CSize& chSize, unsigned char ucBorder = 0);


	private:	
		int iMaxX;
		int iMaxY;

};

typedef struct STgaHeader
{
	unsigned char	ucIdentSize;
	unsigned char	ucColorMapType;
	unsigned char	ucImageType;
	unsigned short	usColorMapStart;
	unsigned short usColorMapLenght;
	unsigned char	ucColorMapBits;
	unsigned short	usXStart;
	unsigned short usYStart;
	unsigned short usWidth;
	unsigned short usHeight;
	unsigned char	ucBitsPerPixel;
	unsigned char  ucDescriptor;
}STgaHeader;
void CaptureDisplay(char* szFile);
#endif