112
Chapter 11: Creating the User Interface
TI
-
89 / TI
-
92 Plus Developer Guide
Not for Distribution
Beta Version January 26, 2001
bottom coordinate of the dialog box. They are defined assuming a virtual scroll
region.
Note:
If you use SCROLL_REGION, it must be the first item defined in the dialog box.
11.4.2.10. TEXT
char * TextPtr
A TEXT field is a static field that allows for stand-alone text to be placed
anywhere in a dialog box. The field is defined by a zero-terminated string.
If the DF_OWNER_DRAW flag is set, then the call-back is passed the field index
and a pointer to a OWNER_DRAW_STRUCT structure. The first item of this
structure is a direct pointer to the DIALOG_ITEMS structure for the field to be
drawn (this is not normally used). The second item is a pointer to the WINDOW
structure for the dialog box. Using this pointer, the call-back can draw anything
and anywhere to the dialog box (all clipped to the dialog boxes window). This
may include both text and images.
typedef struct {
DIALOG_ITEMS *Item;
WINDOW *pW;
} OWNER_DRAW_STRUCT;
An example from the VAR-LINK code’s receive variable overwrite dialog box is
listed below.
/* VAR-LINK RECEIVE: Overwrite callback */
WORD VL_OverwriteCB( WORD DlgId, DWORD dValue )
{
if (DlgId == 0) {
WinStrXY( ((OWNER_DRAW_STRUCT *) dValue)->pW, 8, 15, (char *)
VL_VarName );
return TRUE;
}
if (DlgId == DB_QACTIVE && dValue == 2)
return (VL_OverwriteAns[0] == VLO_NO);
if (DlgId == 1)
return DB_REDRAW_AND_CONTINUE;
return TRUE;
}
11.4.2.11. XFLAGS
WORD
xFlags1
,
xFlags2
,
xFlags3
,
xFlags4
The XFLAGS field defines an array of four extended WORD flags. Currently only
the first WORD is used and may contain the following flags. The remaining three
WORDs should always be set to zero for future compatibility.