XTRCTL

Updated April 2022

This is a structure containing various extended parameters and options. If omitted, suitable defaults will be supplied, although that will severely limit the capabilities of the tree control. For those parameters which are essentially Boolean options, 0=false and 1=true. Most of the fields in XTRCTL are input-only, but a few, such as COLUMNACTIVE are updated as well, and some are output-only; these are indicated with "[in/out]" or "[out]" in the following table, which lists the structure members alphabetically for easy reference. To use the XTRCTL structure in your program, include the xtree.sdf and xtree.def files and then map an instance of the structure for each XTREE in the program, e.g.:

MAP1 XTR, XTRCTL                ! define instance of XTRCTL structure named xtr

...

XTR.OPCODE = XTROP_CREATE

XTR.CTLNO = -1

etc.

 

Or include the xtree.map file which includes actual map statements for XTRCTL (rather than a structure definition); in that case, members would be assigned as follows:

XTR'OPCODE = XTROP_CREATE

XTR'CTLNO = -1

etc.

 

Note that the first method (declaring an instance of the defined structure XTRCTL and using the structure dot member notation) has the advantage of making it easy to define and maintain separate copies of the structure for multiple XTREEs.

By convention in this document, we refer to the members of the XTRCTL structure using structure.member notation, as if you had declared an instance of the structure XTRCTL named XTR, as in the example above.

Symbol

Type

I/O

Description

CLOSEDENDED

B,1

in

Set size of last column to "open ended" or fixed.

COLID

B,1

in

Associate column with a numeric ID.

COLORDER (31)

B,1

in/out

Provides rearranging of the display order of the first (up to) 31 columns

COLUMNACTIVE

B,1

in/out

Col # with focus (for kbd search)

COLUMNSORT (3)

B,1

in/out

First, second, third sort columns

CTLID

B,2

out

Returns standard control ID of XTREE control (allowing access by AUI_CONTROL)

CTLNO

B,1

in/out

Specifies which XTREE control to use.

DELCTLID

B,4

in

Control to delete when XTREE load is complete; used with progress/lifesigns.

EXPANDLEVEL

B,1

in

0=collapse, #=expand through level # (9 max)

FLAGS1

 

 

Various low-level flags; see TXF#_xxx in ASHINC:XTEXT.DEF.

FLYBY

B,1

in

Fly-by highlighting? 0=no, 1 = first column, 2 = entire row.

FOOTERSTYLE

B,1

in

 

GRIDSTYLE

B,1

in

0=vert solid, 1=horz solid, 2=both, 3=vert dotted, 4=horz dotted, 5=both. See XTR.SHOWGRID.

HEADERSTYLE

B,1

in

Column header style flags

HIDEHEADER

B,1

in

Hide headers? (0=no)

ITEMLINES

B,1

in

Display lines per item.

KBDSTR

S,10

in

Click code.

LEFTINDEX

B,1

 

Left-most visible column

LEFTPANECOLS

B,1

in

Number of columns in left pane.

LEFTPANEWIDTH

B,1

in

Width of left pane.

MISCFLAGS

B,1

in

Misc flags (overlays XTR.TRUNCATED, which is now deprecated)

NFSELSTYLE

B,1

in

Determines how selected item(s) are highlighted, mostly when tree is inactive

OPCODE

B,1

in

Opcode.

PARENTID

B,2

in

ID of parent of control (e.g. a dialog). To specify parent by its alphanumeric control name, set XTR.PARENTID to zero and add the ParentID=<name> clause to any column; see Advanced Coldef Options.

ROWHDRSTYLE

B,1

in

Options related to row headers. See SHOWROWHDR.

SCROLLTIPS

B,1

in

Show scroll tips (0=no)

SEARCHMODE

B,1

 

 

SELECTAREA

B,1

in

Clickable area and style.

SHOW3D

B,1

in

Use 3D style? (0=no).

SHOWBUTTONS

B,1

in

Control visibility of the expand/collapse (+/-) button for multi-level trees.

SHOWBUTTONS0

B,1

 

No longer used. See SHOWBUTTONS.

SHOWFOOTER

B,1

in

See FOOTERSTYLE.

SHOWGRID

B,1

in

Show grid lines (0=no, 1=yes). Sample image here.

SHOWROWHDR

B,1

in

Determines whether row headers are displayed.

SKEY

S,10

in

Search key.

SORTORDER (3)

B,1

in/out

0=ascending, 1=descending

TARGETCOL

B,1

in/out

Column of "target" cell; see TARGET.

TARGETROW

B,4

in/out

Row of "target" cell; see TARGET.

TIMEOUT

B,4

in

Timeout (ms)

TOPINDEX

B,4

in/out

Force the initial display vertical scroll position.

TREELINESTYLE

B,1

 

Style of lines linking child lines to parent: 0=none, 1=solid, 2=dotted

TRUNCATED

B,1

in

Deprecated, replaced by MISCFLAGS. Show dots if text truncated?

USECOLORDER

B,1

in

Use COLORDER() to reorder?

USETHEMES

B,1

in

Use Windows themes? (0=no)

USRCFG

B,1

 

Used for Saving User Adjustments.

XCOL

B,1

in/out

Column of last cell to have the focus (see TARGETCOL).

XNAVCOD

B,1

in/out

Used in cell editing

XNAVMASK

B,1

in/out

  "    "     "    "

XROW

B,4

in/out

Row of last cell to have the focus. See TARGET.

XVALIDATE

B,1

out

 

Definition file: xtree.sdf