#ifndef CTLPANELLITE_H_
#define CTLPANELLITE_H_

#include "gType.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 "TButton.h"
#include "TEdit.h"

#define dGuiLoginII	0x00
#define dGuiLogoutII	0x01
#define dGuiLoginIII	0x02
#define dGuiLogoutIII	0x03
#define dGuiQueryDevice			0x10
#define dGuiQueryAddr			0x11
#define dGuiQueryMask			0x12
#define dGuiQueryConfig			0x13
#define dGuiQueryInterLink		0x14
#define dGuiQueryHandpadInterLink	0x15
#define dGuiNetwork			0x16
#define dGuiHistoryInfAll			0x20
#define dGuiHistoryFireAlarm			0x21
#define dGuiHistoryInterLink			0x22
#define dGuiHistoryFault			0x23
#define dGuiHistoryOperating			0x24
#define dGuiHistorySuper			0x25

//aPanel with Caption, StaticText, Btn, Edit, 
class TCtlPanelLite{
	private:
		int FontSize;
		int FontHeight;
		int EditMode;
		TBvStyle BevelOuter;
		struct{
			u16 Width;
			unsigned int Color;
		}Border;
		struct{
			u32 Color;
			u32 RibbonColor;
		}VScrollBar;
	public:
		TStaticText		Caption;
		TStaticText		SText[4];	
		TButton		Btn[4];
		TEdit			Edit[4];
		TButton		BtnSaveReturn;
		TButton		BtnCancel;
		TButton		BtnPrev;
		TButton		BtnNext;
		
		float ScrollVertical;
	
		u32 FixColColor;
		u32 FixColTextColor;
		u32 Color;
		u32 TextColor;
		u32 SelectedColor;
		u32 SelectedTextColor;
	
		int TabOrder;
	
		TRect Bound;	
		TRect VScrollBarBox;
		TRect Content;
		
		unsigned char ShowWhat;
		
	private:

	public:
		TCtlPanelLite(){};
		TCtlPanelLite(int aX, int aY, int aW, int aH, int OwnerX, int OwnerY, u32 aColor, TBvStyle aBevelOuter){
			Init(aX, aY, aW, aH, OwnerX, OwnerY, aColor, aBevelOuter);
		}
		void Init(int aX, int aY, int aW, int aH, int OwnerX, int OwnerY, u32 aColor, TBvStyle aBevelOuter);
		void DrawSelf(void);
		void DrawVertScrollBar(void);
		void Show(void);
		void ReDrawItems(void);
		void ReDrawEdit(void);
		
		void SetEditMode(unsigned int aMode);
		
		void Clear(void);
		void FullRePaint(void);
		void RePaint(void);
			
		void GuiLoginIIShow();
		void GuiLoginIIIShow();
		void GuiLoginPasswdErrShow();
		
		TGuiMsgReturn GuiLoginII_KeyIn(unsigned char aKey);
		TGuiMsgReturn GuiLoginIII_KeyIn(unsigned char aKey);
};


#endif
