#ifndef XBOX_H_
#define XBOX_H_

#include "gType.h" 
#include "GraphLow.h"
#include "GraphBase.h"
#include "stdio.h"
#include "stdlib.h"
#include "string.h"
#include "my_string.h"
#include "Device.h"
#include "EpDevice.h"
#include "StaticText.h"
#include "TEdit.h"

#define drgMAX_COUNT	12

typedef enum{
	btRadioGroup = 0,
	btGroupBox =1,
	
}TXBoxType;

class TXBox{
	public:
		struct{
			int Count;
			int SelectedIndex;
			int FocusIndex;
			unsigned char CheckList[drgMAX_COUNT];
		}Items;
		TStaticText Caption;
		TMyString Str[drgMAX_COUNT];
	
		int LineSpacing;

		u32 OutlineColor;
		u32 Color;
		u32 TextColor;
		u32 SelectedColor;
		u32 SelectedTextColor;
	
		TRect Bound;	
		TRect Content;
	
		int CheckPointX;
		int TextPstX;
		int ItemsTopY;
		int CheckWidgetSize;
		int TextPixelWidth;
		TXBoxType BoxType;
	public:
		TXBox(){};
		void Init(int x1, int y1, int aW, int aH, int OwnerX, int OwnerY, u32 aColor);
	
		void SetTextPixelWidth(int aW);
		void ReDrawItems();
		void Show();
			
		TGuiMsgReturn KeyIn(unsigned char aKey);
			
		int ExtRequst(unsigned char Prm){return 0;}
			
		static void sDrawBoxBorder(int x, int y, int x2, int y2, char *chr, int tLen, int aEn, int aSel, unsigned int bClr); 
			
			
	
};















#endif
