class DStruct { //Use CTRL-L and select "Data" to generate the format strings double num1 fmtstr "$$DA-T,256,\"Double 1:%12.8f\"$$\r"; double num2 fmtstr "$$DA-T,256,\"Double 2:%12e\"$$\r"; I8 num3 fmtstr "$$DA-T,256,\"I8 1:0x%08X\"$$\r"; I8 num4 fmtstr "$$DA-T,256,\"I8 2:%12d\"$$\r"; I1 name[8] fmtstr "$$DA-P,7, \"Name :%s\"$$\r"; I8 dt fmtstr "$$DA-T,256,\"Date :%8D\"$$\r"; }; public void DoIt() { double d; I8 i; I1 *name; DStruct gtl; LTDate datetime; gtl.num1=12.3e-4; //Set defaults gtl.num2=4.5e3; gtl.num3=0x1234; gtl.num4=-567; StrCpy(>l.name,"John"); datetime=GetCurTimeLTDate; gtl.dt=datetime.date; if (DoForm(>l,"DStruct")) { coutln "#1=",gtl.num1; coutln "#2=",gtl.num2; coutln "#3=",gtl.num3; coutln "#4=",gtl.num4; coutln "Name=",gtl.name; PrintF("Date=%D\r\n",gtl.dt); } else coutln "Cancel"; coutln "\r\n\r\nClassRep Example"; ClassRep(>l,"DStruct"); coutln "\r\n\r\nNow prompting from the cmd line:"; i=PmtI8("Enter int (%d):",123); coutln "Int=",i; d=PmtDouble("Enter double (%12g):",1.2e3); coutln "Double=",d; name=PmtStr("Name (%s):","John"); coutln "Name:",name; Free(name); datetime=PmtLTDate("Date (%D):",GetCurTimeLTDate); PrintF("Date=%D\r\n",datetime.date); } DoIt;