Files
TempleOS-Rijn/LT/DEMO/GetInput.CPZ
T
2018-09-08 21:45:17 +02:00

57 lines
1.4 KiB
Plaintext

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(&gtl.name,"John");
datetime=GetCurTimeLTDate;
gtl.dt=datetime.date;
if (DoForm(&gtl,"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(&gtl,"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;