885.2.1
INFLD/GUI keyboard handling refinements:
• | ALT-DOWN-ARROW may now be used as a keyboard shortcut to display the calendar in the date picker. |
• | UP/DOWN arrow may now be used, in addition to the numeric keypad +/- keys to increment/decrement the currently selected sub-field (in the date picker). |
• | SHIFT-TAB now acts like up arrow when TYPE 3 is specified (returning EXITCODE 3). |
885.2.2
GUI version of PCKLST now requires SBR=PCKLST_GUI in the miame.ini. Since the GUI version is not quite (yet?) perfectly compatible with the text version, it seems appropriate to require some positive action to enable I
Fix some problems with the date picker in INFLD; it wasn't being invoked for all date formats. Also, the arrow keys were not working until the field was clicked, and ^\ was not working.
885.0.1
INFLD now uses a date-time "picker" control for date (TYPE D) and and time (TYPE t) fields when in GUI (TYPE |G) mode. Note the following ideosyncracies of this control:
• | The date picker takes up more space than the traditional MMDDYY (or DDMMYY) format of date entry, so the control is automatically elongated by a few extra columns. Although this might possibly overwrite something to the right of the control, the effect is only temporary, since as soon as you exit from the control, it is redisplayed using the normal size and format. |
• | If you set XMIN to 0, the date picker control will include a checkbox which the user can uncheck to indicate no date. Otherwise there is no way to enter a blank (or invalid) date. |
• | The left and right arrow keys will move between the sub-fields of the date or time. If you want to pass these arrow keys to INFLD (to be treated as possible field exit keys), you'll have to hold down the SHIFT or CTRL buttons while hitting the left/right arrows. |
• | To edit each sub-field, you can use the number keys, or the numpad +/- key. In the case of the time control, you can also increment/decrement it using the up/down buttons which will be appended to right edge of the field. |
885.0.2
Controls created with MIAMEX,119 or TAB(-10,20) may now contain "tool tips". These are short messages that pop up when the mouse has remainded over the control for a second or two. The technique for defining a tooltip varies with the interface used. For MIAMEX,119 a new parameter has been added:
xcall MIAMEX, MX'WINBTN, op, btnid, txt, state, type, cmd, func, status, srow, scol, erow, ecol{, fgc{, bgc{, style{, scale{, face{, tip}}}}}}
where TIP is a string of up to about 200 characters. (Currently we only support the single-line rectangle style, so 200 characters should be more than sufficient.)
If using the TAB(-10,20) method, add the TIP argument to the end, after the FACE argument:
?TAB(-10, 20);OP;", ";BTNID;", ";TXT;", ";STATE;", ";TYPE;", ";CMD;", ";FUNC;", ";SROW;", ";SCOL;", ";EROW;", ";ECOL;", ";FGC;", ";BGC;", ";STYLE;", ";SCALE;", ";FACE;", ";TIP;chr(127);
In the case of INFLD, you can specify a tool tip in the first part of the HLPIDX parameter (i.e. prior to any mouse-click keyboard string). The tool tip portion of the HLPIDX parameter must have a leadin character ">". Some examples:
HLPIDX = ">This is a tooltip"
HLPIDX = ">This is a tooltip"+chr(126)+chr(27)
HLPIDX = "Help Key>Tooltip"+chr(126)+chr(7)+chr(250)+"123."
In the first example, HLPIDX contains only a tool tip string. In the second example, it contains both a tool tip string and a keyboard mouse click string, of chr(27) or ESC. In the third example, it contains a traditional HLPIDX string ("Help Key", intended to be used as some sort of index into a custom documentation database), followed by a tooltip ("Tooltip"), followed by a pseudo-function key mouseclick sequence.
885.0.3
The GDI printing direction //SETMAPMODE now supports DECIPOINTS (1/720 inch) as another mapping mode. The other options remain:
TWIPS,LOMETRIC,HIMETRIC,LOENGLISH,HIENGLISH,TEXT
885.0.4
XCALL MIAMEX,131,LOC'REM,PATH,BYTES,MTIME,CTIME,MODE returns stats for the specified PATH, either on the local system or the remote PC via ATE. Parameters are as follows:
loc'rem (S,1) "L" for local system, "R" for remote PC
path (S) specifies a native path or AMOS-style filespec. If native, may include embedded environment variables using the %env% syntax. Note that if LOC'REM is "R", and AMOS specification in PATH will be interpreted relative to the INI file used by ATE on the PC. Examples:
bytes (F) returns the size of the file. If PATH is not found BYTES will be set to -1. -2 indicates that you are attempting to use a remote PATH when you don't have ATE support.
mtime and ctime (F or B,4) return the last modification time and creation time, in seconds since "the epoch" (Midnight Jan 1, 1970). This format is very convenient for comparing filetimes, but be forewarned that comparing filetimes on different machines (e.g. to decide if a file transfer/update is needed) requires that you synchronize the clocks on the machines in question! If you want to display the filetimes in a more human-friendly format, use MIAMEX function 132.
mode (F or B,2+) returns the mode bits indicating the type and other attributes of the file. The most interesting bits are:
1 execute privilege (other)
2 write privilege (other)
4 read privilege (other)
8 execute (group)
16 write (group)
32 read (group)
64 execute (owner)
128 write (owner)
256 read (owner)
4096 pipe
8192 chr/special
16384 directory
32768 regular file
885.0.5
XCALL MIAMEX,132,FTIME,STRING may be used to format a numeric filetime of the type returned by MIAMEX,131 into a more friendly format.
885.0.6
XCALL MIAMEX,119 now supports a new opcode (5) to query the state of a checkbox. In a purely local Windows environment, this is not necessary since checkboxes can be coupled to a variable which is updated automatically when the box is checked. But in a telnet environment (with ATE) this is not possible (since the variable resides on a different machine from the checkbox object). Opcode 5 can be used instead to query the state of checkbox, and works both in local Windows environments and with ATE. The state is returned in the STATUS parameter as follows:
0 Not checked
1 Checked
2 Indeterminate (3 state checkboxes)
Negative values are errors (see the MIAMEX,119 documentation for a complete list of error codes.)
885.0.7
(ERS) TDIR/NOSORT option no longer compresses the array.