EditTable Resources
Inherited Behavior and Resources
The EditTable widget inherits behavior and resources from the Core,
Composite, Constraint, Manager, INT CompBase and EditObject
classes.
- The class pointer is xintEditTableWidgetClass.
- The class name is XintEditTable.
- The header file is included as <Xint/EditTable.h>.
Specifies whether the EditTable widget should prevent the user from entering
more characters than the column width when editing a cell.
Specifies whether or not the contents of partially visible columns are
displayed.
Specifies the name of an ASCII file that provides input to the EditTable
widget. EditTable will automatically convert the values in the file to the
column format. If a conversion fails, the cell will be left unchanged. Also,
the EditTable widget will be automatically resized to the size of the dataset
contained in the file. See function
XintEditTableReadAscii
for more information on the file format.
Specifies whether to shift column/row automatically when inserting a column/row
before the first visible column/row.
Specifies which of the values of the margin resources (XmNtopMargin,
XmNbottomMargin, XmNleftMargin and XmNrightMargin) are automatically determined
by the widget. This resource is inherited from class XintCompBase. You can
specify one of the following constants:
| Defined Constant | Description
|
|---|
| XintADJUST_ALL | All margins will be automatically computed by the widget.
|
| XintADJUST_NONE (default) | None of the margins will be automatically computed by the widget.
|
| XintADJUST_LEFT | The left margin will be automatically computed by the widget.
|
| XintADJUST_RIGHT | The right margin will be automatically computed by the widget.
|
| XintADJUST_TOP | The top margin will be automatically computed by the widget.
|
| XintADJUST_BOTTOM | The bottom margin will be automatically computed by the widget.
|
Alternatively, you can specify a combination of the constants by using a
logical OR operation or an arithmetic addition operation. For instance, to have
the left and right margin sized automatically and the top and bottom margin
sized as specified with the XmNtop and XmNbottom resources, you would set
XmNautoMarginAdjust to XintADJUST_LEFT | XintADJUST_RIGHT or XintADJUST_LEFT +
XintADJUST_RIGHT.
This resource has no effect unless the EditTable is the child of an INT Scroll
widget.
Specifies the scrolling interval, in milliseconds, when dragging a
cell/column/row outside the visible Table window.
Specifies whether to adjust the size of the text overflow marker automatically
when resizing a cell.
Specifies whether the widget will automatically annotate each column when it
is created and displayed. The default value is True, indicating that the
columns will be automatically annotated when displayed using the series of
labels: A, B, C,...,Z, AA, AB,...,etc.
This resource must be set to False if the XmNcolumnAnnotationData resource is
specified.
Specifies whether the widget will automatically annotate each row when it is
created and displayed. The default value is True, indicating that the rows
will be automatically annotated using sequential integers beginning at 1.
Specifies the space, in pixel units, to allocate for the bottom column
annotation area. This resource is calculated automatically if resource
XmNautoMarginAdjust is set to XintADJUST_ALL or XintADJUST_BOTTOM.
Specifies the callback that is called just before the cell is drawn. This
callback allows the programmer to change the cell attributes, such as
background, foreground, alignment, and font table index of a cell dynamically.
The constant values available for attribute alignment are listed below in
resource XmNcolumnAlignmentData. This callback will be called for every
visible cell in the table.
Specifies an integer array, as large as the number of rows (or columns if the
table is transposed), which defines the height of each row in the unit system
specified by resource XmNcellSizeUnit. If resource XmNcellHeightData is not
specified (NULL), the height of all the rows in the table will be set to the
size specified in resource XmNdefaultCellHeight.
Specifies the color used to draw the background of one or of a group of
selected cells.
Specifies the thickness of the cell pointer in pixel units. The
cell pointer is a rectangle drawn around the cell that is being edited.
Specifies the color of the cell pointer rectangle.
Specifies whether the cell pointer is kept or not when the table loses focus.
Specifies the unit system used to specify the size of a cell. Specify
XintUNIT_CHARACTER (default) to have the cell size in character units or
XintUNIT_PIXEL to have the cell size in pixels.
Specifies the list of callbacks that is called just before a `widget in a cell`
is drawn or mapped to a cell. `Widget in a cell' is the mechanism that permits
a single widget to be used across a range of cells in the edit table. These
callbacks allow the application to query data and to configure the inserted
widget with the proper resources before it is drawn to the current cell
location. This callback is used whenever XmNcellWidgetSetResources is
False, or when the widget requires more or different resources.
Specifies an integer array, as large as the number of columns (or rows if the
table is transposed), which defines the width of each column in the unit system
defined by resource XmNcellSizeUnit. If resource XmNcellWidthData is not
specified (NULL), the width of all the columns in the table will be set to the
size specified in resource XmNdefaultCellWidth.
Specifies the list of callbacks that is called when the end user has selected
a cell for editing via the action EditTableEditCell().
Specifies whether the annotation will be clipped if the annotation string is
wider than the annotation area. If the column orientation is vertical, then
clipping will occur only for the column annotation. If the column orientation
is horizontal, then clipping will occur only for the row annotation. The
default value for this resource is False, indicating that the annotation will
not be clipped, but rather the width of the column will be increased to
accommodate the width of the annotation. If you set this resource to True,
then the annotation will be clipped and the column width will not be changed.
Specifies an array (of size XmNnumberOfColumns) containing the alignment
specifications for each column. Use the defined integer constants listed below
for specifying the alignment.
| Resource Value | Description
|
|---|
| XintALIGNMENT_BEGINNING_TOP | The value in each cell of the column is to be justified in the upper left hand corner of the cell.
|
| XintALIGNMENT_CENTER_TOP | The value in each cell of the column is to be justified horizontally in the center of the cell and vertically at the top of the cell.
|
| XintALIGNMENT_END_TOP | The value in each cell of the column is to be justified in the upper right hand corner of the cell.
|
XintALIGNMENT_BEGINNING_MIDDLE (default) | The value in each cell of the column is to be justified horizontally at the left side of the cell and vertically in the center of the cell.
|
| XintALIGNMENT_CENTER_MIDDLE | The value in each cell of the column is to be justified horizontally at the center of the cell and vertically in the center of the cell.
|
| XintALIGNMENT_END_MIDDLE | The value in each cell of the column is to be justified horizontally at the right side of the cell and vertically in the center of the cell.
|
| XintALIGNMENT_BEGINNING_BOTTOM | The value in each cell of the column is to be justified in the lower left hand corner of the cell.
|
| XintALIGNMENT_CENTER_BOTTOM | The value in each cell of the column is to be justfied horizontally in the center of the cell and vertically at the bottom of the cell.
|
| XintALIGNMENT_END_BOTTOM | The value in each cell of the column is to be justified in the lower right hand corner of the cell.
|
The alignment of a column can also be set using the function
XintEditTableDefineColumnFormat or the resource XmNdefaultColumnAlignment.
If you set the resource XmNcolumnAlignmentData using a resource file, specify a
list of values consisting of the defined constants (in the table above)
separating the values with commas.
Specifies the character strings to use for annotating the columns in the table.
You set this resource's value by specifying a pointer to an array of pointers,
each of which refers to a character string containing a column annotation. If
a value is specified for this resource then the EditTable widget will make
its own copy of the column annotations from the array at its creation time,
regardless of the setting of the value of the resource XmNuseOriginalData. If
this resource is set from a resource file, use commas to separate the strings.
The number of strings must be equal to the number of columns defined by
XmNnumberOfColumns.
If this resource is specified, the XmNautomaticColumnAnnotation resource must
be set to False.
Specifies the font used to draw the column annotations.
Specifies the foreground color used for column annotations.
Specifies a (parsed) translation table defining the translations for the
annotation action routines. Use this resource only when the parent of EditTable
widget is an INT Scroll widget. When the parent of the EditTable widget is
not an INT Scroll widget, then register these translations with the
EditTable widget with an XtAugmentTranslations or an XtOverrideTranslations
function.
Specifies the list of callbacks that is called when the end user has executed
any column operation action routine (such as column select, insert or delete).
Specifies an array (of size XmNnumberOfColumns) containing strings specifying
the display format for each column. The display format is specified using C
format descriptors such as "%f". The format descriptor must be compatible with
the data type for that column. If you need to display a column of data using a
non standard format, set the format descriptor to NULL and register callback
XmNformatCellCallback. Also, for columns whose data type is set to pointer,
the format descriptor will be ignored and callback XmNformatCellCallback will
be called. The display format of a column can also be specified using function
XintEditTableDefineColumnFormat. If you set this resource from a resource file,
separate the format strings by commas.
Specifies an array of size XmNnumberOfColumns containing integer values
specifying the data type for each column of the table. Use the constants
listed below for specifying the data type.
| Resource Value | Description
|
|---|
| XintTYPE_SHORT | Specifies short integer data type.
|
| XintTYPE_INTEGER | Specifies integer data type.
|
| XintTYPE_LONG | Specifies long integer data type.
|
| XintTYPE_FLOAT | Specifies floating point data type.
|
| XintTYPE_DOUBLE | Specifies double precision floating point data type.
|
| XintTYPE_STRING (default) | Specifies character string data type.
|
| XintTYPE_POINTER | Specifies the pointer data type.
|
The data type of a column can also be specified using function
XintEditTableDefineColumnFormat or resource XmNdefaultColumnDataType. If you
set resource XmNcolumnDataTypeData from a resource file, use the string names
or integer values listed in the table above. Multiple values must be separated
by commas.
Specifies an array of size XmNnumberOfColumns containing integer values
specifying the edit mode for each column of the table. Specify
XintCOLUMN_EDITABLE if you want the cells of a column to be editable or
XintCOLUMN_NON_EDITABLE if you want the cells of a column to be non editable.
The edit mode of a column can also be set using resource
XmNdefaultColumnEditMode. See the callback
XmNcheckEditModeCallback to selectively enable or disable the edit mode of
a cell. When specifying this resource via a resource file, place commas between
the elements of the list.
Specifies an array of size XmNnumberOfColumns containing integer values
specifying the font index to use for each column of the table. Resource
XmNfontTable specifies a list of X fonts that can be used for displaying the
cell contents. The index value corresponds to an entry in that table. Specify
-1 for columns that use the default font specified in XmNtableFont. Use
function XintEditTableSetCellFont to specify fonts on a cell-by-cell basis.
Specifies whether the columns are oriented horizontally across the page or
vertically down the page. The default is vertical orientation specified by
XintCOLUMN_VERTICAL. Specify XintCOLUMN_HORIZONTAL for horizontal orientation.
Specifies the default height of a cell in the unit system defined by resource
XmNcellSizeUnit. Specify a positive integer as the value of this resource.
Alternatively, if you specify the integer 0 as the value of this resource, the
EditTable widget will compute the height of each row as the maximum number of
lines of text in any character string formatted cell in that row (can be quite
slow for big tables).
Specifies the default width of a cell in the unit system defined by resource
XmNcellSizeUnit. If you specify the integer 0 as the value of this resource,
the EditTable widget will compute the width of each column as the maximum
number of characters in any character string formatted cell in that column.You
can change the width of a column using the function
XintEditTableDefineColumnFormat or use resource XmNcellWidthData to set the
width of all the columns in the table.
Specifies the alignment of the cell contents for newly created columns. See
the XmNcolumnAlignmentData resource
description for a list of defined constants used to specify the value of
this resource.
Specifies the default display format for the cells in the table. Specify the
format value as any C format descriptor (such as %s, %d, %f) that corresponds
to the data type specified by the value of the resource,
XmNdefaultColumnDataType. Specify NULL if you want to handle the formatting
of the data yourself using callback XmNformatCellCallback.
Specifies the data type of the values of the cells in a column that will be
used when a new column is created. You can specify one of the following defined
constants:
| Resource Value | Description
|
|---|
| XintTYPE_SHORT | Specifies short integer data type.
|
| XintTYPE_INTEGER | Specifies integer data type.
|
| XintTYPE_LONG | Specifies long integer data type.
|
| XintTYPE_FLOAT | Specifies floating point data type.
|
| XintTYPE_DOUBLE | Specifies double precision data type.
|
| XintTYPE_STRING (default) | Specifies character string data type.
|
| XintTYPE_POINTER | Specifies pointer data type.
|
Specifies the edit mode for newly created columns. The default value for this
resource is XintCOLUMN_EDITABLE indicating that the values in a newly created
column can be edited by the end user. Specify the constant
XintCOLUMN_NON_EDITABLE if you want to prohibit end-user editing in newly
created columns.
Specifies the default span factor for every cell in the table. This resource is
defined as a pointer to a structure of type XintCellSpanFactor, which takes the
following form:
typedef struct {
int rows;
int columns;
} XintCellSpanFactor;
See resource XmNspanMode to activate all spanning
on a table.
Specifies a list of callbacks that is called when the end user performs a
double-click operation on a cell. The callback structure is
XintEditTableDoubleClickCallbackStruct and the reason is XintCR_DOUBLE_CLICK.
Specifies the maximum interval, in milliseconds, between which two button
clicks are considered to be a double-click action rather than two single-click
actions. The default is the value returned by function XtGetMultiClickTime.
Specifies the list of callbacks that is called when the end user performs a
move, resize or copy operation on a cell, row or column.
Specifies the cursor type to use when performing an interactive copy, move or
resize operation on a row, column or cell.
Specifies the color, as a pixel value, used to draw the outline of a row,
column or cell while performing an interactive copy, move or resize operation.
Specifies the style used to draw the outline of a row, column or cell while
performing an interactive copy, move or resize operation. Use one of the
following defined constants when specifying a value for this resource:
| Resource Value | Description
|
|---|
| XintGRID_LINE_SOLID (default) | The outline is drawn using a solid line.
|
| XintGRID_LINE_DASHED | The outline is drawn using a dashed line.
|
| XintGRID_LINE_DOUBLE_DASHED | The outline is drawn using a double dashed line.
|
| XintGRID_LINE_NONE | No outline is drawn.
|
Specifies whether the cell values should be displayed, along with the outline,
while performing an interactive copy, move or resize operation on a row, column
or cell.
Specifies the list of callbacks that is called when the end user has selected a
row or column annotation for editing via the action AnnotationEdit().
Specifies the first column to display when the table is created.
Specifies the first row to display when the table is created.
Specifies a NULL terminated list of X font names that can be used for setting
fonts for individual cells, rows or columns. Once this table is defined,
fonts can be assigned with resource XmNcolumnFontIndexData or functions
XintEditTableSetCellFont, XintEditTableSetColumnFont and
XintEditTableSetRowFont. Specify NULL if you want the whole table to use the
font specified in XmNtableFont.
Specifies the list of callbacks that can be used to format the data before
display. This callback is invoked when the format specifier for a column is set
to NULL or the data type for a column is XintTYPE_POINTER.
Specifies the list of callbacks that can be used to input the column annotation
before display. This resource will have no effect if
XmNautomaticColumnAnnotation is True.
Specifies the list of callbacks that can be used to input the row annotation
before display. This resource will have no effect if XmNautomaticRowAnnotation
is True.
This resource can be used to temporarily disable (True) any geometry update and
redrawing before performing a series of changes on an EditTable widget. The
resource value should be set back to False after the changes are made so that
the table can automatically calculate its new geometry and redisplay itself.
Specifies the placement of a frozen column. Specify XintPLACEMENT_LEFT or
XintPLACEMENT_RIGHT if the columns are oriented vertically. Specify
XintPLACEMENT_TOP or XintPLACEMENT_BOTTOM if the columns are orientated
horizontally.
Specifies the placement of a frozen row. Specify XintPLACEMENT_TOP or
XintPLACEMENT_BOTTOM if the rows are oriented horizontally. Specify
XintPLACEMENT_LEFT or XintPLACEMENT_RIGHT if the rows are orientated vertically.
Specifies the foreground color used to draw grid lines when the grid line style
is set to solid or dashed.
Specifies the color used for the grid lines that outline a block of selected
cells.
Specifies the width (in pixels) of the highlight border drawn around one cell
or a group of cells when they are selected. The thickness defined using this
resource will be restricted to be at most half of the grid line width specified
in resource XmNgridLineWidth. Use resource XmNgridLinelHighlightColor to define
the color for the highlight border.
Specifies the orientation of grid lines.Use one of the following defined
constants when specifying a value for this resource:
| Resource Value | Description
|
|---|
| XintGRID_LINE_CROSSWISE (default) | Grid lines are drawn to separate rows and columns.
|
| XintGRID_LINE_COLUMNWISE | Grid lines are drawn between columns only.
|
| XintGRID_LINE_ROWWISE | Grid lines are drawn between rows only.
|
Specifies the line style used to display the grid lines that separate the cells
in the table. Use one of the following defined constants when specifying a
value for this resource:
| Resource Value | Description
|
|---|
| XintGRID_LINE_SOLID (default) | The cells in the table will be separated by a solid line.
|
| XintGRID_LINE_DASHED | The cells in the table will be separated by a dashed line.
|
| XintGRID_LINE_DOUBLE_DASHED | The cells in the table will be separated by a double dashed line.
|
| XintGRID_LINE_SHADOW_IN | The cells in the table will have a shadow border that goes into the screen.
|
| XintGRID_LINE_SHADOW_OUT | The cells in the table will have a shadow border that goes out of the screen.
|
Specifies the width (in pixels) of the grid lines drawn between the cells in a
table.
Specifies the placement of horizontal annotation. You can specify one of the
following constants:
| Defined Constant | Description
|
|---|
| XintPLACEMENT_NONE | No horizontal annotation displayed.
|
| XintPLACEMENT_TOP | Horizontal annotation is displayed above the table.
|
| XintPLACEMENT_BOTTOM | Horizontal annotation is displayed below the table.
|
| XintPLACEMENT_TOP_BOTTOM | Horizontal annotation is displayed both above and below the table.
|
Specifies the width (in pixels) of the margin between the left side of a cell's
value and the left side of the cell. The same value is used for the margin
between the right side of a cell's value and the right side of the cell.
Specifies a single or multiple line string that provides labelling for the
horizontal annotation. The label placement is controlled by the resource,
XmNhorizontalLabelPlacement.
Specifies the alignment of each line of the horizontal label. Multiple lines
can be specified by inserting the special character `\n' between each line in
the label string. Label lines are adjusted in respect to the horizontal label
area, which is the same width as the widget's display area. You can specify one
of the following constants:
| Defined Constant | Description
|
|---|
| XintALIGNMENT_BEGINNING | Lines of the label are left aligned.
|
| XintALIGNMENT_CENTER | Lines of the label are centered.
|
| XintALIGNMENT_END | Lines of the label are right aligned.
|
Specifies the name of a font used to draw the horizontal label specified by
resource, XmNhorizontalLabel.
Specifies the orientation of the label string. Specify constant
XintPARALLEL_TO_AXIS (default) to have the label placed along the horizontal
axis, or specify constant XintSTACKED to have the letters of the label stacked
vertically.
Specifies the placement of the horizontal label. You can specify one of the
following constants:
| Defined Constant | Description
|
|---|
| XintPLACEMENT_TOP | The horizontal label is drawn above the widget's display area.
|
| XintPLACEMENT_BOTTOM | The horizontal label is drawn below the widget's display area.
|
| XintPLACEMENT_TOP_BOTTOM | The horizontal label is drawn both above and below the widget's display area.
|
Specifies the number of pixels the EditTable widget will scroll horizontally
when the left or right scrollbar arrow is pressed. Specify 0 (default) to have
the the EditTable scroll an entire cell width.
Specifies the pixel used to draw the horizontal and vertical labels.
Specifies the space, in pixels units, to allocate for the left row annotation
area. This resource is calculated automatically if resource XmNautoMarginAdjust
is set to XintADJUST_ALL or XintADJUST_LEFT.
Specifies the number of columns in the table.
Specifies the number of rows in the table.
Specifies how many columns should be visible (size of the viewport), when the
EditTable widget is created as a child of a INT Scroll widget. Specify 0
(default) to have all the columns in the table visible. This resource will take
effect only if the parent scroll resource XmNhorizontalAutoSized is set to True.
Specifies how many rows should be visible (size of the viewport), when the
EditTable widget is created as a child of a INT Scroll widget. Specify 0
(default) to have all the rows in the table visible. This resource will take
effect only if the parent scroll resource XmNverticalAutoSized is set to True.
Specifies if the table overrides the text translations for the Return, Left,
Right, Up and Down keys, so that they can be used to navigate between cells
inside the table. This resource is usually set to True. Set it to False to be
able to edit multiline text in a cell.
Specifies the default background color of the cells in a non editable column.
Specifies the character whose width is used to compute the width of a column
that is displaying string data. This resource is only used when fonts
containing characters of different widths are used (proportional fonts).
Specifies an index corresponding to an entry in the font table (specified in
resource XmNfontTable) that is used to calculate the dimension of each column
in the table. This resource only applies if resource XmNfontTable is not NULL
and should be usually set to the index corresponding to the largest font. The
default value for this resource is -1, which means that the table will
calculate the size of each column based on the font used by each cell. This
process can be slow for large tables.
Specifies the space, in pixels units, allocated for the right row annotation
area. This resource is calculated automatically if resource XmNautoMarginAdjust
is set to XintADJUST_ALL or XintADJUST_RIGHT.
Specifies the values to use for annotating the rows in the table. You set this
resource's value by specifying a pointer to an array containing the row
annotation values. The row annotation can be any of the supported data types
for cell data. If a value is specified for this resource then the EditTable
widget will make its own copy of the row annotations in the array at widget
creation time regardless of the setting of the value of the resource
XmNuseOriginalData. The number of values in the array must be equal to the
number of rows defined by the XmNnumberOfRows resource.
Specifies the format of the values used for the row annotation. You specify the
value as any C format descriptor (such as %s, %d, %f) that corresponds to the
data type specified by the value of the resource XmNrowAnnotationDataType.
Specifies the data type of the values used for row annotation. You can specify
one of the following defined constants:
| Resource Value | Description
|
|---|
| XintTYPE_SHORT | Specifies short integer data type.
|
| XintTYPE_INTEGER (default) | Specifies integer data type.
|
| XintTYPE_LONG | Specifies long integer data type.
|
| XintTYPE_FLOAT | Specifies floating point data type.
|
| XintTYPE_DOUBLE | Specifies double precision floating point data type.
|
| XintTYPE_STRING | Specifies character string data type.
|
Specifies the font used to draw the row annotations.
Specifies the foreground color used for row annotations.
Specifies the parsed translation table defining the translations for the row
annotation action routines. Use this resource only when the parent of EditTable
widget is an INT Scroll widget. When the parent of the EditTable widget is not
an INT Scroll widget, then do not define the row annotation translations using
this resource, but include those translations in a translation table registered
with the EditTable widget via an XtAddTranslations call.
Specifies the list of callbacks that is called when the end user has executed
any row operation action routine (e.g. row select, insert or delete).
Specifies the list of callbacks that is called when the end user has selected a
cell using any cell selection action routine (such as EditTableEndSelect).
Specifies whether the EditTable will automatically scroll to show the area that
has been selected via the selection convenience function
XintEditTableSetSelection.
Specifies whether grid lines should be drawn in the annotation area.
Specifies whether to show the text overflow marker when the width/height of a
cell is less than the actual dimensions of the displayed text.
Specifies whether or not the cell pointer will treat spanned cell row/column
locations as a single location and skip the individual locations that have been
overlapped by the span. If True (the default), the cell pointer will skip
overlapped locations and treat the cell as a single location. If False, the
cell pointer will visit every row/column location, regardless of whether or not
that location is spanned.
Specifies whether or not cell spanning is enabled. This resource applies only
at creation time. XmNspanMode must be specified as one of the following
constants.
| Defined Constant | Description
|
|---|
| XintSPAN_NONE | Spanning is not enabled (the default).
|
| XintSPAN_DATA_ONLY | Cells with data are drawn according to their span factor. Empty cells, regardless of their span, are drawn at 1x1.
|
| XintSPAN_DATA_AND_EMPTY | Cells are drawn according to their span factor, regardless of whether or not they have data.
|
Specifies the font used to draw the values of all cells in the table.
Specifies the color (as a pixel value) used when displaying the values of the
cells in the table.
Specifies the color (pixel), of the text overflow marker. The color white is
the default color.
Specifies the size of the text overflow marker, in pixel units. The default
size is 5 pixels wide.
Specifies whether the widget's labels and title are drawn with a shadow, so
that they have a 3-dimensional appearance. The default is False, indicating
that they will not appear 3-dimensional.
Specifies the alignment of the lines of the title if it has more than one line. Multiple lines can be specified by inserting special character `\n' between lines in the title string. You can specify one of the following constants:
| Defined Constant | Description
|
|---|
| XintALIGNMENT_BEGINNING | Lines of the title are left adjusted.
|
| XintALIGNMENT_CENTER | Lines of the title are centered.
|
| XintALIGNMENT_END | Lines of the title are right adjusted.
|
Specifies the pixel value used to draw the background of the title.
Specifies the name of the font used to draw the title.
Specifies the pixel value used to draw the foreground of the title.
Specifies the placement of the title string. Specify one of the following
constants:
| Defined Constant | Description
|
|---|
| XintPLACEMENT_NONE | The title is not drawn.
|
| XintPLACEMENT_TOP (default) | The title is drawn above the widget's window.
|
| XintPLACEMENT_BOTTOM | The title is drawn at the bottom of the widget's window.
|
Specifies the thickness of the title shadow in pixels if resource
XmNtitleShadowType is not set to XintSHADOW_NONE.
Specifies the type of shadow to draw around the title. You can specify one of
the following constants:
| Defined Constant | Description
|
|---|
| XintSHADOW_NONE | No shadow is drawn.
|
| XintSHADOW_IN | Shadow drawn so that title appears inset.
|
| XintSHADOW_OUT | Shadow drawn so that tile appears outset.
|
| XintSHADOW_ETCHED_IN | Shadow drawn using a double line inset.
|
| XintSHADOW_ETCHED_OUT | Shadow drawn using a double line outset.
|
Specifies the string used to draw the title. The color, font and location of
the title string can be specified using resources XmNtitleFont,
XmNtitleForeground and XmNtitlePlacement.
Specifies the space, in pixels units, reserved for the top column annotation
area. This resource is automatically calculated by the widget when the value of
the resource XmNautoMarginAdjust is XintADJUST_ALL or XintADJUST_TOP.
Specifies the list of callbacks that is called when the end-user has executed
the EditTableEnterCell() action routine.
Indicates whether the EditTable widget should use the application's table data
or whether the EditTable widget should create a copy of the application's table
data. The default is False, indicating that the EditTable widget should make
its own copies of the application's table data. Table data includes the values
of all cells in the table. If you set this resource to True, insertion and
deletion of rows (or columns if the table is transposed) will be disabled
because it is not possible for the table to reallocate your data. When resource
XmNuseOriginalData is True, you should use function XintEditTableFillColumnData
to fill the table.
Note: this resource can only be set at creation time.
Specifies the list of callbacks to be called so that the application can
validate the input when the end user has changed the value of a cell.
Specifies the placement of vertical annotation. You can specify one the
following constants:
| Defined Constant | Description
|
|---|
| XintPLACEMENT_NONE | No vertical annotation displayed.
|
| XintPLACEMENT_RIGHT | Vertical annotation is displayed to the right of the table.
|
| XintPLACEMENT_LEFT | Vertical annotation is displayed to the left of the table.
|
| XintPLACEMENT_LEFT_RIGHT (default) | Vertical annotation is displayed both left and right of the table.
|
Specifies the height (in pixels) of the margin between the top edge of cell's
value and the top edge of the cell. The same value is used for the margin
between the bottom edge of a cell's value and the bottom edge of the cell.
Specifies a single or multiple line string that provides labelling for the
vertical annotation. The label placement is controlled by resource
XmNverticalLabelPlacement.
Specifies the alignment of each line of the vertical label. Multiple lines can
be specified by inserting the special character `\n' between lines in the label
string. Label lines are adjusted in respect to the vertical label area, which
is the same height as the widget's display area. For a vertical label,
beginning alignment means the lines are justified to the top of the widget's
display area and continue downward. End alignment means these lines will be
justified to the bottom of the widget's display area and continue upward.
You can specify one of the following constants:
| Defined Constant | Description
|
|---|
| XintALIGNMENT_BEGINNING | Lines of the label are aligned with the top of the widget's display area.
|
| XintALIGNMENT_CENTER | Lines of the label are centered.
|
| XintALIGNMENT_END | Lines of the label are aligned with the bottom of the widget's display area.
|
Specifies the name of a font used to draw the vertical label specified by the
resource XmNverticalLabel.
Specifies the orientation of the label string. Specify the constant
XintPARALLEL_TO_AXIS to have the label rotated 90 degrees from the horizontal
and placed along the vertical axis, or specify the constant XintSTACKED to have
the letters of the label stacked vertically.
Specifies the placement of the vertical label. You can specify one of the
following constants:
| Defined Constant | Description
|
|---|
| XintPLACEMENT_LEFT | The vertical label is drawn left of the widget's display area.
|
| XintPLACEMENT_RIGHT | The vertical label is drawn right of the widget's display area.
|
| XintPLACEMENT_LEFT_RIGHT | The vertical label is drawn both left and right of the widget's display area.
|
Specifies the number of pixels the EditTable widget will scroll vertically when
the up or down scrollbar arrow is pressed. Specify 0 (default) to have the the
EditTable scroll an entire cell height.
The following constraint resources can be specified on a widget inserted in an
EditTable widget. They specify the range of cells into which the widget will be
inserted and whether or not some resources will be automatically applied when
the widget is mapped to a cell.
Specifies the range of EditTable cells that will contain the designated widget.
This resource is a pointer to a structure as shown below.
typedef struct {
int row;
int rows;
int column;
int columns;
} XintCellWidgetRange;
Where the structure variables are:
| Member | Description
|
|---|
| row | Starting row in the range of cells that contain the widget.
|
| rows | Number of rows in the range of cells that contain the widget. 0 = all rows in the table, beginning with the starting row.
|
| column | Starting column in the range of cells that contain the widget.
|
| columns | Number of columns in the range of cells that contain the widget. 0 = all columns in the table, beginning with the starting column.
|
Specifies whether or not the EditTable will automatically set a number of cell
resources for the most common Motif widgets to the values shown below.
| Resource Name | Automatic Setting
|
|---|
| XmNlabelString | Current cell content, as a string.
|
| XmNfontList | Current cell font.
|
| XmNbackground | Current cell background.
|
| XmNforeground | Current cell foreground.
|
| XmNalignment | Current cell alignment.
|
| XmNsensitive | Current cell sensitivity.
|
XmNcellWidgetSetResources should be set just before calling the
XmNcellWidgetDisplayCallback callback. If this resource is set to
False and the XmNcellWidgetDisplayCallback is omitted, the visual
characteristics of the cells will be undefined.
Specifies whether or not to change or replace the translations of the widget
in a cell so that arrows and tab keys take you back to the table process rather
than the focus remaining in the mapped widget.
Widget In A Cell Example
The following code fragment illustrates the ease of installing Widget In A Cell
and setting its resources. Since XmNcellWidgetSetResources is True
by default, the cell values will be set automatically.
/*
* Create the edit table
*/
edit_table = XtCreateManagedWidget("edit_table",
xintEditTableWidgetClass,
scroll, arg, n);
/*
* Put a widget into cells that span 400 rows and 2 columns
*/
range.row = 1;
range.rows = 400;
range.column = 1;
range.columns = 2;
XtVaCreateWidget("pushb", xmPushButtonWidgetClass,
edit_table, XmNcellWidgetRange, &range, NULL);