#ifndef FLOORDISPLAY_H_
#define FLOORDISPLAY_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 "EditML.h"
#include "CtlPanel1.h"

class TFloorDisplay{
	public:
		TStaticText Caption;
		TStaticText SText;
	
		u32 Color;
	
		TRect Bound;	
		TRect Content;
		TRect RectPanel;
		class TCtlPanel1 *aPanel;
	
		unsigned char CtlIndex;
		unsigned char SubCtlIndex;
		unsigned char WhatSet;
	
		unsigned char PadNum;
		unsigned char KeyNum;
		unsigned char IsUsing;
		unsigned char Type;
		unsigned char Ferture;
		unsigned char Fon;
	
		unsigned char GlobalPrm;
	
		struct{
			unsigned char CtlNum;
			unsigned char Path0;
			unsigned char Path1;
			unsigned char aAssign;
		}AddrAssign[256];
		struct{
			short TopIndex;
			short SelectedLineNum;
			short SelectedIndex;
			short DevCount;
		}Lv;
		short RestoreIndex;
		short RestoreEditIndex;
		
		union{
			unsigned int D32[16];
			char Body[64];
		}Text;
		
		TEdit *pEdit;
		
		unsigned char IsExtInput;
		
		union{
			unsigned char D8[256];
			unsigned int  D32[64];
		}ReadWriteData;
	public:
		TFloorDisplay(){};
		void Init(int x1, int y1, int aW, int aH, int OwnerX, int OwnerY, u32 aColor);
		void RenderBackGround(void);

		void RenderBackGround(unsigned int aClr);
		void RenderContent(void);
		void DrawSelf(void);
		void DrawCaption(void);
		void DrawCaption2(void);
		void DrawCaption24Addr(void);
		void DrawCaption24Descp(void);
		void Show();
			
		void Check4Selected();
		void Check4Selected4Global();
		void Check4Selected4SetAddr();
		void Check4Selected4SetDescp();
		void InitPanel();
		void InitPanel4Global(void);
		void InitPanel4SetAddr();
		void InitPanel4SetDescp();
			
		void DrawAddrList();
		void DrawDescpList();
		void RestoreDescpFromEdits();
			
		void SetEditAddrStart();
		void RestoreEditAddr();
		
		void LoadDescp(int aInx, char *p);
		void RestoreDescp(int aInx, char *p);
			
		void LoadDev();
		TGuiMsgReturn KeyIn(unsigned char aKey);
		
		void DescpBufInit();
		void LoadDescpFromSys();
		
		void Write2Flash();
		void ReadFromFlash();
		
		int ExtRequst(unsigned char Prm){return 0;}
};



































#endif
