186 lines
6.8 KiB
C++
186 lines
6.8 KiB
C++
#ifndef DUPLICATECHECK_H_
|
|
#define DUPLICATECHECK_H_
|
|
|
|
#include "gType.h"
|
|
#include "GraphBase.h"
|
|
#include "string.h"
|
|
#include "my_string.h"
|
|
#include "Device.h"
|
|
#include "EpDevice.h"
|
|
#include "StaticText.h"
|
|
#include "CtlPanel1.h"
|
|
#include "ProtoInnerCan.h"
|
|
|
|
class TDuplicateCheck{
|
|
public:
|
|
static constexpr unsigned short hList[12] = {72,102,72,72, 42,72,34,34, 34,34,34,34};
|
|
static constexpr unsigned short wList[12] = {800,290,290,290, 290,290,290,290, 290,290,290,290};
|
|
static constexpr TLv Lv = {
|
|
.Caption.Left = 0,
|
|
.Caption.Top = 36,
|
|
.Caption.Width = 800,
|
|
.Caption.Heigh = 32,
|
|
.Caption.Right = 800 -0 -1,
|
|
.Caption.Bottom = 36 + 32,
|
|
|
|
.Grid.Left = {0,0,0,0, 0,0,0,0, 0,0,0,0},
|
|
.Grid.Right = {wList[0]-1,wList[1]-1,wList[2]-1,wList[3]-1, wList[4]-1,wList[5]-1,wList[6]-1,wList[7]-1, wList[8]-1,wList[9]-1,wList[10]-1,wList[11]-1},
|
|
.Grid.Top[0] = (36 + 32 +2),
|
|
.Grid.Top[1] = (36 + 32 +2) + (2 + hList[0]),
|
|
.Grid.Top[2] = (36 + 32 +2) + (2 + hList[0]) + (2 + hList[1]),
|
|
.Grid.Top[3] = (36 + 32 +2) + (2 + hList[0]) + (2 + hList[1]) + (2 + hList[2]),
|
|
.Grid.Top[4] = (36 + 32 +2) + (2 + hList[0]) + (2 + hList[1]) + (2 + hList[2]) + (2 + hList[3]),
|
|
.Grid.Top[5] = (36 + 32 +2) + (2 + hList[0]) + (2 + hList[1]) + (2 + hList[2]) + (2 + hList[3]) + (2 + hList[4]),
|
|
.Grid.Top[6] = (36 + 32 +2) + (2 + hList[0]) + (2 + hList[1]) + (2 + hList[2]) + (2 + hList[3]) + (2 + hList[4]) + (2 + hList[5]),
|
|
.Grid.Top[7] = (36 + 32 +2) + (2 + hList[0]) + (2 + hList[1]) + (2 + hList[2]) + (2 + hList[3]) + (2 + hList[4]) + (2 + hList[5]) + (2 + hList[6]),
|
|
.Grid.Top[8] = (36 + 32 +2) + (2 + hList[0]) + (2 + hList[1]) + (2 + hList[2]) + (2 + hList[3]) + (2 + hList[4]) + (2 + hList[5]) + (2 + hList[6]) + (2 + hList[7]),
|
|
.Grid.Top[9] = (36 + 32 +2) + (2 + hList[0]) + (2 + hList[1]) + (2 + hList[2]) + (2 + hList[3]) + (2 + hList[4]) + (2 + hList[5]) + (2 + hList[6]) + (2 + hList[7]) + (2 + hList[8]),
|
|
.Grid.Top[10] = (36 + 32 +2) + (2 + hList[0]) + (2 + hList[1]) + (2 + hList[2]) + (2 + hList[3]) + (2 + hList[4]) + (2 + hList[5]) + (2 + hList[6]) + (2 + hList[7]) + (2 + hList[8]) + (2 + hList[9]),
|
|
.Grid.Top[11] = (36 + 32 +2) + (2 + hList[0]) + (2 + hList[1]) + (2 + hList[2]) + (2 + hList[3]) + (2 + hList[4]) + (2 + hList[5]) + (2 + hList[6]) + (2 + hList[7]) + (2 + hList[8]) + (2 + hList[9]) + (2 + hList[10]),
|
|
|
|
.Grid.Bottom[0] = (36 + 32 +2) + hList[0],
|
|
.Grid.Bottom[1] = (36 + 32 +2) + (2 + hList[0]) + hList[1],
|
|
.Grid.Bottom[2] = (36 + 32 +2) + (2 + hList[0]) + (2 + hList[1]) + hList[2],
|
|
.Grid.Bottom[3] = (36 + 32 +2) + (2 + hList[0]) + (2 + hList[1]) + (2 + hList[2]) + hList[3],
|
|
.Grid.Bottom[4] = (36 + 32 +2) + (2 + hList[0]) + (2 + hList[1]) + (2 + hList[2]) + (2 + hList[3]) + hList[4],
|
|
.Grid.Bottom[5] = (36 + 32 +2) + (2 + hList[0]) + (2 + hList[1]) + (2 + hList[2]) + (2 + hList[3]) + (2 + hList[4]) + hList[5],
|
|
.Grid.Bottom[6] = (36 + 32 +2) + (2 + hList[0]) + (2 + hList[1]) + (2 + hList[2]) + (2 + hList[3]) + (2 + hList[4]) + (2 + hList[5]) + hList[6],
|
|
.Grid.Bottom[7] = (36 + 32 +2) + (2 + hList[0]) + (2 + hList[1]) + (2 + hList[2]) + (2 + hList[3]) + (2 + hList[4]) + (2 + hList[5]) + (2 + hList[6]) + hList[7],
|
|
.Grid.Bottom[8] = (36 + 32 +2) + (2 + hList[0]) + (2 + hList[1]) + (2 + hList[2]) + (2 + hList[3]) + (2 + hList[4]) + (2 + hList[5]) + (2 + hList[6]) + (2 + hList[7]) + hList[8],
|
|
.Grid.Bottom[9] = (36 + 32 +2) + (2 + hList[0]) + (2 + hList[1]) + (2 + hList[2]) + (2 + hList[3]) + (2 + hList[4]) + (2 + hList[5]) + (2 + hList[6]) + (2 + hList[7]) + (2 + hList[8]) + hList[9],
|
|
.Grid.Bottom[10] = (36 + 32 +2) + (2 + hList[0]) + (2 + hList[1]) + (2 + hList[2]) + (2 + hList[3]) + (2 + hList[4]) + (2 + hList[5]) + (2 + hList[6]) + (2 + hList[7]) + (2 + hList[8]) + (2 + hList[9]) + hList[10],
|
|
.Grid.Bottom[11] = (36 + 32 +2) + (2 + hList[0]) + (2 + hList[1]) + (2 + hList[2]) + (2 + hList[3]) + (2 + hList[4]) + (2 + hList[5]) + (2 + hList[6]) + (2 + hList[7]) + (2 + hList[8]) + (2 + hList[9]) + (2 + hList[10]) + hList[11],
|
|
|
|
.Grid.UsingCount = 5,
|
|
|
|
.Panel.Active = 1,
|
|
.Panel.ItemType = piMemo,
|
|
.Panel.Left = wList[1] + 6,
|
|
.Panel.Top = (36 + 32 +2) + hList[0] +6,
|
|
.Panel.Width = 502,
|
|
.Panel.Heigh = 250,
|
|
.Panel.Right = wList[1] + 6 + 502 -1,
|
|
.Panel.Bottom = (36 + 32 +2) + hList[0] +6 + 250 -1,
|
|
|
|
.PanelSmall.Active = 1,
|
|
.PanelSmall.Left = wList[1] + 6,
|
|
.PanelSmall.Top = (36 + 32 +2) + hList[0] +6 + 250 -1 + 1,
|
|
.PanelSmall.Width = 502,
|
|
.PanelSmall.Heigh = 42,
|
|
.PanelSmall.Right = wList[1] + 6 + 502 -1,
|
|
.PanelSmall.Bottom = (36 + 32 +2) + hList[0] +6 + 250 -1 + 1 + 42 -1,
|
|
};
|
|
static constexpr unsigned int MaxCount = 1024;
|
|
static constexpr int LinesCount = 8;
|
|
public:
|
|
class TItemList *IList;
|
|
|
|
void (*KeepOnMeJustEnter)(void);
|
|
void (*KeepUiOnMe)(void);
|
|
u32 Color;
|
|
|
|
int IsShow;
|
|
|
|
unsigned char CtlNum;
|
|
unsigned char PortNum;
|
|
unsigned char CtlNumAvalble;
|
|
unsigned char PortNumAvalble;
|
|
|
|
TRect Bound;
|
|
TMyString Str;
|
|
|
|
struct{
|
|
unsigned char InxMin;
|
|
unsigned char InxMax;
|
|
unsigned char Inx;
|
|
void Reset(){
|
|
Inx = 0;
|
|
InxMin = 0;
|
|
InxMax =11;
|
|
}
|
|
}Tag;
|
|
unsigned char IsPermission;
|
|
unsigned char PermissionCmd;
|
|
|
|
union{
|
|
unsigned short sVal[4];
|
|
unsigned char cVal[8];
|
|
}RecData;
|
|
unsigned short Scaling[4];
|
|
int IsFastCmd;
|
|
unsigned char Data[8];
|
|
|
|
unsigned char IsChecking;
|
|
unsigned char IsTransmiting;
|
|
unsigned char IsTransmitingFinish;
|
|
unsigned char IsOnNetwork;
|
|
unsigned char CheckWhat;
|
|
unsigned char CheckTick;
|
|
unsigned char PortCnt;
|
|
unsigned char Percent;
|
|
unsigned char OldPercent;
|
|
unsigned char P0;
|
|
unsigned char IsShowDetail;
|
|
unsigned char IsProgressUpdata;
|
|
unsigned char IsDetailUpdata;
|
|
|
|
unsigned int WastingTime;
|
|
|
|
struct{
|
|
unsigned char PagesCount;
|
|
unsigned char PageX;
|
|
}Details;
|
|
char Text[4];
|
|
|
|
private:
|
|
public:
|
|
TDuplicateCheck(){};
|
|
void Init();
|
|
|
|
void SetAndShowCaption(unsigned char aType);
|
|
|
|
void RenderBackGround(void);
|
|
void RenderBackGround(unsigned int aClr);
|
|
void DrawSelf(void);
|
|
void DrawCommonByExReturn();
|
|
void DrawFixText();
|
|
|
|
void Show(void);
|
|
void ReDraw(void);
|
|
void FullRedraw(int Prm);
|
|
void PanelCanvasOut();
|
|
void DrawProgress();
|
|
void DrawDetailOutline();
|
|
int TryDrawDetail();
|
|
void DrawDetail();
|
|
|
|
TGuiMsgReturn KeyIn(unsigned char aKey);
|
|
void ClearSelected(void);
|
|
void Check4Selected(void);
|
|
|
|
void PermissionCmdReturnDraw();
|
|
void SendCmd();
|
|
void SendFastCmd();
|
|
void SendEndCmd();
|
|
|
|
void CheckResult();
|
|
void ResetBackEndData();
|
|
|
|
void InnerCanPushData(unsigned char aCmd, unsigned char *pData);
|
|
|
|
void PermissionCmdGO();
|
|
void SetData(unsigned char aPort, unsigned char aAddr, unsigned char aCnt);
|
|
unsigned char GetData(unsigned char aPort, unsigned char aAddr);
|
|
|
|
void Task1000Ms();
|
|
|
|
int ExtRequst(unsigned char Prm);//{IsShow =0; SendEndCmd(); return 0;}
|
|
};
|
|
|
|
|
|
|
|
#endif
|
|
|
|
|
|
|