GEOS SDK TechDocs|
|
3 TableClass Instance Data |
3.2 Defining Columns TableFlags, TableBorderFlags, MSG_TABLE_SET_FLAGS, MSG_TABLE_GET_FLAGS, MSG_TABLE_SET_BORDER_FLAGS, MSG_TABLE_GET_BORDER_FLAGS
There are a few attributes which apply to the entire
Table
. Ordinarily, you would set these up when you define the
Table
, and leave them unchanged; however, you can get or change these attributes at will, by sending messages.
Every
Table
has a record of
TableFlags
, stored in the instance data field TI
_tableFlags
. This record contains the following flags:
TableClass
object to contain headers for your table. (See Table Headings.)
Table
will automatically clear TF_INTERNAL_DRAG_DROP after every drag-drop operation. (See Dragging and Dropping.)
Table
will automatically scroll whenever the user clicks the pointer inside the
Table
and drags it across the top or bottom boundary. This flag does not affect any other scrolling behavior you may have added to your Table (such as scroll buttons in the parent TableView).
Table
will automatically leave drag-and-drop mode, clearing TF_INTERNAL_DRAG_DROP. (See Dragging and Dropping.) If you do not set this flag, once you begin a drag and drop operation, you will need to manually exit drag and drop by clearing the TF_INTERNAL_DRAG_DROP flag yourself. (This is not recommended.)
MSG_META_START_SELECT
. Unless your Table is display-only, you will probably always want this flag set.
MSG_TABLE_NOTIFY_SELECTION_CHANGED
whenever the stored selection value changes. If you wish to have that message sent (and intercept it) you must set this flag.
You may set these bits in TI
_tableFlags
when you define the table object in your source file. If you wish to change the
TableFlags
record of an existing
Table
object, you must do this by sending the object
MSG_TABLE_SET_FLAGS
, not by editing TI
_tableFlags
directly. You can find out the current settings of
TI_tableFlags
by sending
MSG_TABLE_GET_FLAGS
to the
Table
object.
Each table object also has a record of
TableBorderFlags
, stored in the instance data field TI
_borderFlags
. This record specifies what borders should be drawn around the
Table
. This record has the following flags:
Table
visible on-screen. Setting this flag is equivalent to setting TBF_TOP_BORDER, TBF_BOTTOM_BORDER, TBF_LEFT_BORDER, and TBF_RIGHT_BORDER.
Table
visible on-screen.
Table
visible on-screen.
Table
visible on-screen.
Table
visible on-screen.
Table
visible on-screen. Setting this flag is equivalent to setting TBF_TOP_MARGIN, TBF_BOTTOM_MARGIN, TBF_LEFT_MARGIN, and TBF_RIGHT_MARGIN.
Table
visible on-screen.
Table
visible on-screen.
Table
visible on-screen.
Table
visible on-screen.
To find out what
TableBorderFlags
are currently set, send MSG_TABLE_GET_BORDER_FLAGS to the
Table
. As with
TableFlags
, you may set the instance field TI
_borderFlags
in your source file, but you may not alter it directly at run-time; instead, you can set the field indirectly, by sending
MSG_TABLE_SET_BORDER_FLAGS
to the
Table
object.
TableFlags MSG_TABLE_GET_FLAGS();
This message returns the current
TableFlags
settings in the recipient's TI
_tableFlags
field. To change this field, send
MSG_TABLE_SET_FLAGS
.
Source: Unrestricted.
Destination: Any
TableClass
object.
Parameters: None.
Return: The
TableFlags
record currently stored in the
Table
object's TI
_tableFlags
field.
Structures: The
TableFlags
record (see Every Table has a record of TableFlags, stored in the instance data field TI_tableFlags. This record contains the following flags:).
void MSG_TABLE_SET_FLAGS(
TableFlags setTableFlags,
TableFlags unsetTableFlags);
This message alters the
TableFlags
settings in the recipient's TI
_tableFlags
field. To find out what the current settings are, send
MSG_TABLE_GET_FLAGS
.
Source: Unrestricted.
Destination: Any
TableClass
object.
Parameters:
setTableFlags
All the flags in this record will be turned
on
.
unsetTableFlags
Return: Nothing.
Structures: The
TableFlags
record (see Every Table has a record of TableFlags, stored in the instance data field TI_tableFlags. This record contains the following flags:).
TableBorderFlags MSG_TABLE_GET_BORDER_FLAGS();
This message returns the current
TableBorderFlags
settings in the recipient's TI
_borderFlags
field. To change this field, send
MSG_TABLE_SET_BORDER_FLAGS
.
Source: Unrestricted.
Destination: Any
TableClass
object.
Parameters: None.
Return: The
TableBorderFlags
record currently stored in the
Table
object's TI
_borderFlags
field.
Structures: The
TableBorderFlags
record (see Each table object also has a record of TableBorderFlags, stored in the instance data field TI_borderFlags. This record specifies what borders should be drawn around the Table. This record has the following flags:).
void MSG_TABLE_SET_BORDER_FLAGS(
TableBorderFlags borderFlags);
This message alters the
TableBorderFlags
settings in the recipient's TI
_borderFlags
field. To find out what the current settings are, send
MSG_TABLE_GET_FLAGS
.
Source: Unrestricted.
Destination: Any
TableClass
object.
Parameters:
borderFlags
The current value in TI
_borderFlags
will be replaced by the value in this record.
Return: Nothing.
Structures: The
TableBorderFlags
record (see Each table object also has a record of TableBorderFlags, stored in the instance data field TI_borderFlags. This record specifies what borders should be drawn around the Table. This record has the following flags:).
GEOS SDK TechDocs|
|
3 TableClass Instance Data |
3.2 Defining Columns