Table
Introduction
The Table module can display, edit, and create entrysets. It displays an Excel-like Viewer control for use in a wide variety of interactive applications. You can use the Table’s Property Panel to define the parameters of a new entryset and specify its data in the Viewer, or use it as an interface for displaying and updating the data in an entryset or a ProtoDB. To support seamless interaction with ProtoDBs, a Table can output a variety of data besides its entire current contents including its updated, inserted, and deleted entries.
Formatting
The Table module’s formatting options are not applied to cells individually, but to an associated range. To apply formatting to a range of cells in the Property Panel, first define the desired range on which to apply the formatting and then select the formatting to be associated with the range. Formatting options include: font, size, bold, italic, left/center/right justification, foreground color, and background color. Additionally, formatting for numbers includes setting the decimal places, a separator, and a currency symbol. Because cells can be a member of multiple ranges, ordering the ranges is necessary to specify formatting precedence.
Entryset Creation
The Table module includes the ability to generate new entrysets and then edit them in place. The same interface used to define new entrysets in the Entryset Generator is also available as a section in a Table’s Property Panel. Define a new entryset by the number, name, and ordering of its attributes, the starting number of rows, and their initial contents. For more information, see the Entryset Generator documentation. Creating a new entryset in the Property Panel overwrites the existing entryset.
Text Limits
Each cell within a Table has text limits imposed on it during display. These limits will be applied to the module’s internal data and output if edited. If not edited, the text will enter and leave the Table module without any limitations. Currently text is limited to 32768 characters with 4000 newlines. Individual lines are limited to 8192 characters.
The limits are applied in several different ways:
- If an incoming cell’s text is larger than the limits the text is truncated to the limits when being edited and viewed in the Viewer window.
- If an attempt is made to type more text into a cell than the limits allow a dialog explaining that more text is not allowed is displayed.
- If text is pasted in that is larger than the limits the text is truncated to the limits.
Viewer Control:
Altering the Control’s Appearance
- Click and drag column borders to alter the width of an individual column. Row heights are fixed at one-line height.
- Use the scroll bars to access sections of the Table that are not visible.
Selecting Cells
- Click on a single cell or click and drag a rectangular range of cells to select the contacted cells.
- Click on a row or column header to select the entire row or column.
- The selection of non-contiguous areas is not allowed.
Manipulating Rows
- Reorder rows by dragging the extreme bound of the headers of the selected row(s) to a desired location.
- Press “Delete” to remove entire selected row(s). If only a single cell is selected, it will delete its contents.
- Insert rows by entering information into the bottommost, empty row.
Editing Cell Contents
- Double-click on a cell to display an edit cursor in the cell and edit its contents.
- Press the “Esc” key during an edit to undo all changes and remove cursor focus.
- Press the “Tab” key to move selection to the next column in the row.
- Press the “Enter” key to move selection down to the next row.
Property Panel:
Editing
- Define Entryset...
- Click to create a new Entryset by the number, name, and ordering of its attributes, its starting number of rows, and their initial contents. For more information, see the Entryset Generator documentation. Creating a new entryset in the property panel overwrites the existing entryset.
- Allow content editing
- Toggles whether or not the Table’s contents are editable in the Viewer. This also enables and disables the “Trigger outputs on” and “Validate Input” controls.
- Trigger update when
- Specifies when an update Message is triggered. Selecting “A cell changes” triggers an update whenever an edit is made to any cell in the Table and that cell is deselected. Selecting “An entry changes” triggers an update whenever the selected row (which represents an entry) changes and when an edit is made to any cell in that row.
- Header Options
- The check boxes “Show Row Header” and “Show Column Header” toggle whether or not to display the row and column headers along the top and left edge of the table control in the Viewer.
- Validate Inputs
-
Each row in the “Validate Input” grid corresponds to a column in the Table. Selecting an “Attribute Type” from the drop-down menu allows you to limit the data type allowed by that column in the Table. When the “Automatically configure input type validation” check box is selected, the Table will configure the options listed in the grid to reasonable deafults. The Attribute Type column will be disabled, but the Auto Complete column will act normally. The “Attribute Type” choices are:
- Any Text: No data type constraint.
- Only Numbers: Ensures only numeric input.
- Only Dates: Cells display a date picker instead of standard text input.
- Only True/False: Cells display a check box instead of standard text input.
Formatting
- Ranges
- Click “Add” to define a new range of cells in the table. Select a defined range and use the arrows to adjust the order of the ranges. Since ranges can overlap, the vertical ordering of the ranges determines which formatting takes precedent when a cell is a member of multiple ranges.
- Formatting
- Specifies the formatting for the selected range. The text in the “Example” field provides a preview of the how the formatting will appear.
- Font
- The font the text in the range
- Size
- The size of the text in the range
- Bold
- Whether or not the text in the range is bold
- Italic
- Whether or not the text in the range is italic
- Border
- The border of the cells in the range
- Word Wrap
- Whether to or not to wrap words in a cell in the range
- Alignment
- How text is aligned in the cells
- Text Color
- The color of the text in the range
- Background Color
- The background color of the text in the range
- Format Numbers
- If this box is checked the appearance of numbers can be changed by adjusting the “Decimal Places,” “1000 Separator,” and “Symbol” fields.
Input Menu:
Set Entryset
Sets the data displayed in the Table.
Accepted Datatypes:
- Entryset
Triggered Outputs:
- Output Message:
- Get Entryset
- Output Message:
- Get Selected Entryset
- Output Message:
- Get Updated Entryset
- Output Message:
- Get Inserted Entryset
- Output Message:
- Get Deleted Entryset
Set IsEditable
Sets whether or not users can edit the data displayed in the Viewer.
Accepted Datatypes:
- True/false
Defined Range Connectors → Set [range] Active (Dynamic Menu)
Sets whether or not [range] applies its formatting to its cells in the Table.
Accepted Datatypes:
- True/false
Output Menu:
Get Entryset
Gets an entryset containing all data in the Table.
Output Datatype:
- Entryset
Triggered By:
- Input Message:
- Set Entryset
- Action:
- Creating a new entryset in the Table’s property panel.
- Action:
- Editing the data in the Viewer.
Get Selected Entryset
Gets an entryset containing only the currently selected entry or entries.
Output Datatype:
- Entryset
Triggered By:
- Input Message:
- Set Entryset
- Action:
- Changing the selected cells in the Viewer.
Get Updated Entryset
Gets an entryset containing only the most recently updated entry or entries.
Output Datatype:
- Entryset
Triggered By:
- Input Message:
- Set Entryset
- Action:
- Editing cells in the Viewer.
Get Inserted Entryset
An entryset containing only the most recently inserted entry or entries.
Output Datatype:
- Entryset
Triggered By:
- Input Message:
- Set Entryset
- Action:
- Inserting rows into the Table.
Get Deleted Entryset
An entryset containing only the most recently deleted entry or entries.
Output Datatype:
- Entryset
Triggered By:
- Input Message:
- Set Entryset
- Action:
- Deleted rows from the Table.