// DrawInfo.h: interface for the DrawInfo class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_DRAWINFO_H__6BA54536_57E6_4CD5_84C3_F1AE4F38038E__INCLUDED_)
#define AFX_DRAWINFO_H__6BA54536_57E6_4CD5_84C3_F1AE4F38038E__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

#include "ViewWindowInfo.h"

class DrawInfo  
{
protected:

	CPen *PenArray;
	CBrush HelperBrush;
	int CurrentPen;
	CDC *pDC;

	const static char *PenName[];
public:
	bool UseBrushes;

	enum PenTypes {  SelectPen=0,
					 HelperPen,
					 VehiclePen,
					 BuildingPen,
					 CulturalPen,
					 MechPen,
					 ExtraHelperPen,
					 WarningPen,
					 NonComPen,
					 PenCount};
	
	
	ViewWindowInfo vinf;
	CDC *GetDC() {return pDC;} 
	void SetDC(CDC *dc) {pDC=dc; CurrentPen=-1;} 
	void SetPen(int pen);
	CPen *GetPen(int pen) {Verify(pen<PenCount); return PenArray+pen;}
	CString GetPenName(int pen) { Verify(pen<PenCount); return CString(PenName[pen]);}
	void SetPenColor(int idx,COLORREF ref);
	COLORREF GetPenColor(int idx);
	void SaveToReg();
	void LoadFromReg();
	
	DrawInfo();
	virtual ~DrawInfo();

};

#endif // !defined(AFX_DRAWINFO_H__6BA54536_57E6_4CD5_84C3_F1AE4F38038E__INCLUDED_)
