#include "TransmiteDeviceCfg.h" #include "Runtime.h" extern "C"{ #include "user_norflash.h" #include "user_eeprom.h" #include "uart_key_drv.h" #include "task.h" } #define dWdClr clSkyBlue #define dWdDisabelClr clNearWhite #define dWWidth 24 #define dWHeigh 24 #define dRoundR 7 static const int xFirst = 10; static const int xSec = 120; static const int xThird = 230; static const int xFourth= 340; static const int xFifth = 450; static const int xSixth = 560; static const int xSeventh = 661; void TTransmiteDev::Init() { CtlIndex = 0; IsShowing = 0; IsOnGoing = 0; ReadWrite =0; IsPermission =0; OnOff.Fire =1; OnOff.Lnk =0; OnOff.Sv =1; OnOff.Fault =1; OnOff.Mask =0; OnOff.Opa =1; OnOff.Other =0; State.DeviceOn =0; State.Connection =0; State.Rsv1 =1; State.Rsv2 =2; } void TTransmiteDev::DelayMs(unsigned int aMs) { volatile unsigned int mTick; volatile unsigned int Tick; for(Tick=0; Tick传输装置"); TextRender_string24(Lv.Grid.Left[0] + 10, Lv.Grid.Top[0] +6, clNearWhite, "传输装置设置"); TextRender_string24(Lv.Grid.Left[1] + 10, Lv.Grid.Top[1] +6, clNearWhite, "接口选择"); TextRender_string24(Lv.Grid.Left[2] + 10, Lv.Grid.Top[2] +6, clNearWhite, "数据信息选择"); TRoundRect::sDrawBySize(xFirst, Lv.Grid.Top[0] + 36, 72, 30, 7, clNearWhite, "开启", 12, clNearBlack); TRoundRect::sDrawBySize(xSec, Lv.Grid.Top[0] + 36, 72, 30, 7, clNearWhite, "关闭", 12, clNearBlack); TextRender_string24(xFirst + 30, Lv.Grid.Top[1] + 40, clNearWhite, "RS485"); TextRender_string24(xSec +30, Lv.Grid.Top[1] + 40, clNearWhite, "CAN"); TextRender_string24(xFirst + 30, Lv.Grid.Top[2] + 40, clNearWhite, "火警"); TextRender_string24(xSec +30, Lv.Grid.Top[2] + 40, clNearWhite, "联动"); TextRender_string24(xThird + 30, Lv.Grid.Top[2] + 40, clNearWhite, "监管"); TextRender_string24(xFourth +30, Lv.Grid.Top[2] + 40, clNearWhite, "故障"); TextRender_string24(xFifth + 30, Lv.Grid.Top[2] + 40, clNearWhite, "屏蔽"); TextRender_string24(xSixth +30, Lv.Grid.Top[2] + 40, clNearWhite, "操作"); TextRender_string24(xSeventh + 30, Lv.Grid.Top[2] + 40, clNearWhite, "其他"); }else{ TextRender_string24(Lv.Caption.Left + 10, Lv.Caption.Top +4, clNearWhite, CaptionColor, "Data Transmission->Device"); TextRender_string24(Lv.Grid.Left[0] + 10, Lv.Grid.Top[0] +6, clNearWhite, "Device Setting"); TextRender_string24(Lv.Grid.Left[1] + 10, Lv.Grid.Top[1] +6, clNearWhite, "Port Choice"); TextRender_string24(Lv.Grid.Left[2] + 10, Lv.Grid.Top[2] +6, clNearWhite, "Data Select"); TRoundRect::sDrawBySize(xFirst, Lv.Grid.Top[0] + 36, 108, 30, 7, clNearWhite, "Enable", 12, clNearBlack); TRoundRect::sDrawBySize(160, Lv.Grid.Top[0] + 36, 108, 30, 7, clNearWhite, "Disable", 12, clNearBlack); TextRender_string24(xFirst + 30, Lv.Grid.Top[1] + 40, clNearWhite, "RS485"); TextRender_string24(xSec +30, Lv.Grid.Top[1] + 40, clNearWhite, "CAN"); TextRender_string24(xFirst + 30, Lv.Grid.Top[2] + 40, clNearWhite, "Fire"); TextRender_string24(xSec +30, Lv.Grid.Top[2] + 40, clNearWhite, "Link"); TextRender_string24(xThird + 30, Lv.Grid.Top[2] + 40, clNearWhite, "SUPV"); TextRender_string24(xFourth +30, Lv.Grid.Top[2] + 40, clNearWhite, "Fail"); TextRender_string24(xFifth + 30, Lv.Grid.Top[2] + 40, clNearWhite, "Mask"); TextRender_string24(xSixth +30, Lv.Grid.Top[2] + 40, clNearWhite, "OPER"); TextRender_string24(xSeventh + 30, Lv.Grid.Top[2] + 40, clNearWhite, "Other"); } } void TTransmiteDev::DrawSelf(void) { RenderBackGround(); RectFillRender(Lv.Caption.Left, Lv.Caption.Top, Lv.Caption.Right, Lv.Caption.Bottom, CaptionColor); for(int i=0; i 5){ ClearSelected(); CtlIndex =3; Check4Selected(); }else if(CtlIndex > 1){ ClearSelected(); CtlIndex-=2; Check4Selected(); } break; case VK_DOWN: if(CtlIndex < 4){ ClearSelected(); CtlIndex+=2; Check4Selected(); } break; case dfKEY_SETUP: if(CtlIndex == 2){ LineType = LineType ? 0 : 1; DrawSetting(); }else if(CtlIndex == 3){ LineType = LineType ? 0 : 1; DrawSetting(); }else if(CtlIndex == 4){ OnOff.Fire = OnOff.Fire ? 0 : 1; DrawSetting(); }else if(CtlIndex == 5){ OnOff.Lnk = OnOff.Lnk ? 0 : 1; DrawSetting(); }else if(CtlIndex == 6){ OnOff.Sv = OnOff.Sv ? 0 : 1; DrawSetting(); }else if(CtlIndex == 7){ OnOff.Fault = OnOff.Fault ? 0 : 1; DrawSetting(); } if(CtlIndex == 8){ OnOff.Mask = OnOff.Mask ? 0 : 1; DrawSetting(); }else if(CtlIndex == 9){ OnOff.Opa = OnOff.Opa ? 0 : 1; DrawSetting(); }else if(CtlIndex == 10){ OnOff.Other = OnOff.Other ? 0 : 1; DrawSetting(); } break; case VK_TAB: break; case VK_EXECUTE: if(CtlIndex == 0){ //Active PermissionCmd = 1; if(SystemPermission > 2){ PermissionCmdGO(); }else{ IsPermission = 1; ClearSelected(); PmsIntervene4Gui.Show4Gui(100, Lv.Grid.Top[1] + 12, 600 , 120, 3); } }else if(CtlIndex == 1){ //Close PermissionCmd = 2; PermissionCmdGO(); } if(CtlIndex == 2){ LineType = LineType ? 0 : 1; DrawSetting(); }else if(CtlIndex == 3){ LineType = LineType ? 0 : 1; DrawSetting(); }else if(CtlIndex == 4){ OnOff.Fire = OnOff.Fire ? 0 : 1; DrawSetting(); }else if(CtlIndex == 5){ OnOff.Lnk = OnOff.Lnk ? 0 : 1; DrawSetting(); }else if(CtlIndex == 6){ OnOff.Sv = OnOff.Sv ? 0 : 1; DrawSetting(); }else if(CtlIndex == 7){ OnOff.Fault = OnOff.Fault ? 0 : 1; DrawSetting(); } if(CtlIndex == 8){ OnOff.Mask = OnOff.Mask ? 0 : 1; DrawSetting(); }else if(CtlIndex == 9){ OnOff.Opa = OnOff.Opa ? 0 : 1; DrawSetting(); }else if(CtlIndex == 10){ OnOff.Other = OnOff.Other ? 0 : 1; DrawSetting(); } break; case VK_RETURN: IsShowing = 0; aMsg = guiMsgReturn; break; } } return aMsg; } void TTransmiteDev::sRecoverSetDefault() { SysLoopTick = 0; } int TTransmiteDev::ExtRequst(unsigned char Prm) { IsShowing =0; return 0; } void TTransmiteDev::Task1000Ms() { }