ProntoGUI™ Primitive Reference

Overview of Primitives

Primitive Type Description
Card Displays a card of information.
Check Displays a checkbox.
Choice Displays choice and provide means of selecting from a list of choices.
Command Displays a button or equivalent
ExportFile Exports a file from the server.
Frame Holds arbitrary primitives for display and interaction.
Group Logically groups arbitrary primitives for display and interaction.
Icon A graphical icon from Material design.
Image A graphical image.
ImportFile Imports a file into the server.
List Displays a list of items.
Node A node that appears in a Tree primitive.
Nothing Shows nothing and acts as a filler where a primitive is normally shown.
NumericField Field for editing numberic values.
Table Presents a 2D array of primitives in a table consisting of rows and columns.
Text Displays a piece of text.
TextField Field for entering text.
Timer Performs updates on a regular interval.
Tree A tree of primitives.
Tristate A true, false, or indeterminate choice.

Common Embodiment Properties

Property Name Description
borderAll Border width for all sides, expressed in logical pixels
borderBottom Border width for the bottom side, expressed in logical pixels
borderColor Border color for all sides
borderLeft Border width for the left side, expressed in logical pixels
borderRight Border width for the right side, expressed in logical pixels
borderTop Border width for the top side, expressed in logical pixels
bottom Bottom position expressed in logical pixels
height Height expressed in logical pixels
horizontalAlignment Horizontal alignment
Values:
=> left – Left aligned (default)
=> center – Center aligned
=> right – Right aligned
=> expand – Expanded
left Left position expressed in logical pixels
marginAll Margin width for all sides, expressed in logical pixels
marginBottom Margin width for the bottom side, expressed in logical pixels
marginLeft Margin width for the left side, expressed in logical pixels
marginRight Margin width for the right side, expressed in logical pixels
marginTop Margin width for the top side, expressed in logical pixels
paddingAll Padding for all sides, expressed in logical pixels
paddingBottom Padding on the bottom side, expressed in logical pixels
paddingLeft Padding on the left side, expressed in logical pixels
paddingRight Padding on the right side, expressed in logical pixels
paddingTop Padding on the top side, expressed in logical pixels
right Position of the right side, expressed in logical pixels
top Position of the top side, expressed in logical pixels
verticallAlignment Vertical alignment
Values:
=> top – Top aligned
=> middle – Middle aligned (default)
=> bottom – Bottom aligned
=> expand – Expanded
width Width expressed in logical pixels

Card

Displays a card of information. A card can show summarized information with a title and optional image and buttons.

Fields

Field Name Type Description
Embodiment string A JSON string specifying the embodiment to use for this primitive. This can be assigned explicitly or by an update from the App.
LeadingItem Primitive The primitive to show on the left side of the card.
MainItem Primitive The primitive to show on the main or title portion of the card.
Status int 0 = Normal, 1 = Disabled, 2 = Hidden, 3 = Collapsed.
SubItem Primitive The primitive to show on the lower or subtitle portion of the card.
Tag string An optional and arbitrary string to identify this primitive.
TrailingItem Primitive The primitive to show on the right or trailing portion of the card.

Embodiments

default

A regular card.

Properties

Common Properties

tile

A tile-styled card.

Properties

Common Properties


Check

Displays a checkbox.

Fields

Field Name Type Description
Embodiment string A JSON string specifying the embodiment to use for this primitive. This can be assigned explicitly or by an update from the App.
Checked bool True if the item appears checked.
Label string The text to show in the item.
LabelItem Primitive A primitive to show as the label.
Status int 0 = Normal, 1 = Disabled, 2 = Hidden, 3 = Collapsed.
Tag string An optional and arbitrary string to identify this primitive.

Embodiments

default

A regular checkbox.

Properties

Common Properties

toggle-button

A toggle button.

Properties

Common Properties


Choice

Displays choice and provide means of selecting from a list of choices.

Fields

Field Name Type Description
Embodiment string A JSON string specifying the embodiment to use for this primitive. This can be assigned explicitly or by an update from the App.
Choice string The current choice that is selected, or empty string if nothing chosen.
Choices []string The choice values.
ChoiceLabels []string The labels to show corresponding to each item in Choices.
Status int 0 = Normal, 1 = Disabled, 2 = Hidden, 3 = Collapsed.
Tag string An optional and arbitrary string to identify this primitive.

Embodiments

default

Edit styled field with pull down list.

Properties

Common Properties

Property Name Description
focusSelection How the edited content should be selected upon getting keyboard focus.
Values:
=> begin – Select the beginning of content
=> end – Select the end of content (default)
=> all – Select all of the content
button

Button styled dropdown choice.

Properties

Common Properties


Command

Displays a button or equivalent

Fields

Field Name Type Description
Embodiment string A JSON string specifying the embodiment to use for this primitive. This can be assigned explicitly or by an update from the App.
CommandIssued bool True when the user has clicked the command.
Label string The text to show in the item.
LabelItem Primitive A primitive to show as the label.
Status int 0 = Normal, 1 = Disabled, 2 = Hidden, 3 = Collapsed.
Tag string An optional and arbitrary string to identify this primitive.

Embodiments

default

An elevated button.

Properties

Common Properties

outlined-button

A button with an outline.

Properties

Common Properties


ExportFile

Exports a file from the server.

Fields

Field Name Type Description
Data []byte The blob of data representing the binary contents of the file.
Embodiment string A JSON string specifying the embodiment to use for this primitive. This can be assigned explicitly or by an update from the App.
Exported bool True when the file has been exported (stored to a file) by the app. This field is updated by the app.
Name string The file name including its extension separated by a period.
Status int 0 = Normal, 1 = Disabled, 2 = Hidden, 3 = Collapsed.
Tag string An optional and arbitrary string to identify this primitive.

Embodiments

default

Default

Properties

Common Properties


Frame

Holds arbitrary primitives for display and interaction. For a detailed explanation see: Frame Primitive

Fields

Field Name Type Description
Embodiment string A JSON string specifying the embodiment to use for this primitive. This can be assigned explicitly or by an update from the App.
FrameItems []Primitive The collection of primitives that comprise the GUI frame.
Icon Primitive The primitive (Icon) to show.
Showing bool True if this top-level frame should be active. For more information: Frame Primitive
Status int 0 = Normal, 1 = Disabled, 2 = Hidden, 3 = Collapsed.
Tag string An optional and arbitrary string to identify this primitive.
Title string The title to show for the frame.

Embodiments

default

Shows primitives in allocated space.

Properties

Common Properties

Property Name Description
flowDirection The direction of content flow within the primitive
Values:
=> leftToRight – Content flows from left to right (default)
=> topToBottom – Content flows from top to bottom
layoutMethod How child primitives are arranged
Values:
=> flow – Child primitives are laid out in a manner consistent with parent/child breakdown. (default)
=> positioned – Child primitives are manually positioned relative to child area of parent.
full-view

Shows primitives in allocated space.

Properties

Common Properties

Property Name Description
flowDirection The direction of content flow within the primitive
Values:
=> leftToRight – Content flows from left to right (default)
=> topToBottom – Content flows from top to bottom
layoutMethod How child primitives are arranged
Values:
=> flow – Child primitives are laid out in a manner consistent with parent/child breakdown. (default)
=> positioned – Child primitives are manually positioned relative to child area of parent.
dialog-view

Shows primitives in a dialog view.

Properties

Common Properties

Property Name Description
flowDirection The direction of content flow within the primitive
Values:
=> leftToRight – Content flows from left to right (default)
=> topToBottom – Content flows from top to bottom
layoutMethod How child primitives are arranged
Values:
=> flow – Child primitives are laid out in a manner consistent with parent/child breakdown. (default)
=> positioned – Child primitives are manually positioned relative to child area of parent.
snackbar

Shows primitives in a snackbar.

Properties

Common Properties

Property Name Description
snackbarBehavior Snackbar behavior
Values:
=> fixed – Fixed location (default)
=> floating – Floating above content
snackbarDuration Time duration, expressed in seconds, to show the snack bar
snackbarShowCloseIcon Whether the icon for closing the snackbar should appear

Group

Logically groups arbitrary primitives for display and interaction.

Fields

Field Name Type Description
Embodiment string A JSON string specifying the embodiment to use for this primitive. This can be assigned explicitly or by an update from the App.
GroupItems []Primitive A collection of primitives to show together.
Status int 0 = Normal, 1 = Disabled, 2 = Hidden, 3 = Collapsed.
Tag string An optional and arbitrary string to identify this primitive.

Embodiments

default

Default

Properties

Common Properties


Icon

A graphical icon from Material design.

Fields

Field Name Type Description
Embodiment string A JSON string specifying the embodiment to use for this primitive. This can be assigned explicitly or by an update from the App.
IconID string The ID of the material icon to show.
Status int 0 = Normal, 1 = Disabled, 2 = Hidden, 3 = Collapsed.
Tag string An optional and arbitrary string to identify this primitive.

Embodiments

default

Default

Properties

Common Properties

Property Name Description
color Color of embodiment (typically the foreground)
size Size expressed in logical pixels

Image

A graphical image.

Fields

Field Name Type Description
Embodiment string A JSON string specifying the embodiment to use for this primitive. This can be assigned explicitly or by an update from the App.
ID string The ID assigned to a primitive.
Image []byte The blob of data representing a graphical image.
Ref string The ID that references another primitive.
Status int 0 = Normal, 1 = Disabled, 2 = Hidden, 3 = Collapsed.
Tag string An optional and arbitrary string to identify this primitive.

Embodiments

default

Default

Properties

Common Properties

Property Name Description
imageFit How the image is fitted inside its enclosing box
Values:
=> fill – Fill the enclosing box by distorting the aspect ratio of the image
=> contain – Expand the image as much as possible in the enclosing box while preserving its aspect ratio. (default)
=> cover – Reduce the image as much as possible in the enclosing box while still covering the box.
=> fitWidth – Expand the image to the full width of the enclosing box, regardless of whether it overflows in vertical direction.
=> fitHeight – Expand the image to the full height of the enclosing box, regardless of whether it overflows in horizontal direction.
=> none – Align the image in the enclosing box and clip portions outside the box.
=> scaleDown – Align the image in the enclosing box and scale it down if it doesn’t fit in the box.

ImportFile

Imports a file into the server.

Fields

Field Name Type Description
Data []byte The blob of data representing the binary contents of the file.
Embodiment string A JSON string specifying the embodiment to use for this primitive. This can be assigned explicitly or by an update from the App.
Imported bool True when the file has been imported from the app.
Name string The file name including its extension separated by a period.
Status int 0 = Normal, 1 = Disabled, 2 = Hidden, 3 = Collapsed.
Tag string An optional and arbitrary string to identify this primitive.
ValidExtensions []string The allowed file extensions for the file.

Embodiments

default

Default

Properties

Common Properties


List

Displays a list of items.

Fields

Field Name Type Description
Embodiment string A JSON string specifying the embodiment to use for this primitive. This can be assigned explicitly or by an update from the App.
ListItems []Primitive The primitives to show in the list.
ModelItem Primitive A model primitive that models what each item in the list will look like.
SelectedItems []int The indices of selected items.
SelectionChanged event Fires when selection changes.
SelectionMode int The selection mode: 0=None, 1=One Always, 2=One or None, 3=Multiple.
Status int 0 = Normal, 1 = Disabled, 2 = Hidden, 3 = Collapsed.
Tag string An optional and arbitrary string to identify this primitive.

Embodiments

default

A list of items.

Properties

Common Properties

Property Name Description
horizontal List is arranged horizontally instead of the default vertical fashion.
tabbed

A list of frames organized with tabs.

Properties

Common Properties

Property Name Description
animationPeriod Animation period in milliseconds
tabHeight Height of tabs expressed in logical pixels

Node

A node that appears in a Tree primitive.

Fields

Field Name Type Description
Embodiment string A JSON string specifying the embodiment to use for this primitive. This can be assigned explicitly or by an update from the App.
NodeItem Primitive The primitive held at this node
SubNodes []Primitive The sub or child nodes under this node.
Tag string An optional and arbitrary string to identify this primitive.

Embodiments

default

Default

Properties

Common Properties


Nothing

Shows nothing and acts as a filler where a primitive is normally shown.

Fields

Field Name Type Description

Embodiments

default

Default

Properties

Common Properties


NumericField

Field for editing numberic values.

Fields

Field Name Type Description
Embodiment string A JSON string specifying the embodiment to use for this primitive. This can be assigned explicitly or by an update from the App.
NumericEntry string The number entered or the number to edit.
Status int 0 = Normal, 1 = Disabled, 2 = Hidden, 3 = Collapsed.
Tag string An optional and arbitrary string to identify this primitive.

Embodiments

default

Default

Properties

Common Properties

Property Name Description
displayDecimalPlaces The fixed decimal places to display (1-15), or optional decimal places to display (-1 to -15), or no display of fractional portion (0).
displayNegativeFormat The format for displaying negative numbers
Values:
=> absolute – Display the absolute value of number without any symbols representing negative numbers.
=> minusSignPrefix – Prefix the number with a minus sign. (default)
=> parens – Surround the number with parentheses.
displayThousandths Whether to display the thousandths separators.
focusSelection How the edited content should be selected upon getting keyboard focus.
Values:
=> begin – Select the beginning of content
=> end – Select the end of content (default)
=> all – Select all of the content
maxValue Maximum allowed value for the field.
minValue Minimum allowed value for the field.
popupChoices Choices to display in popup list
color

Field for entering and selecting color values.

Properties

Common Properties

Property Name Description
focusSelection How the edited content should be selected upon getting keyboard focus.
Values:
=> begin – Select the beginning of content
=> end – Select the end of content (default)
=> all – Select all of the content
font-size

Field for specifying a font size.

Properties

Common Properties

Property Name Description
focusSelection How the edited content should be selected upon getting keyboard focus.
Values:
=> begin – Select the beginning of content
=> end – Select the end of content (default)
=> all – Select all of the content

Table

Presents a 2D array of primitives in a table consisting of rows and columns.

Fields

Field Name Type Description
Embodiment string A JSON string specifying the embodiment to use for this primitive. This can be assigned explicitly or by an update from the App.
HeaderRow []Primitive The headings to show above each column.
ModelRow []Primitive A row of model primitives that model what each cell in each column will look like.
Rows [][]Primitive The rows of primitives to show in the table.
SelectedRows []int The indices of the selected rows.
SelectionChanged event Fires when selection changes.
SelectionMode int The selection mode: 0=None, 1=One Always, 2=One or None, 3=Multiple.
Status int 0 = Normal, 1 = Disabled, 2 = Hidden, 3 = Collapsed.
Tag string An optional and arbitrary string to identify this primitive.

Embodiments

default

Default

Properties

Common Properties

Property Name Description
columnSettings Array of settings for each column
insideBorderAll Border width for all interior sides of table cells, expressed in logical pixels
insideBorderBottom Border width for the interior bottom side of a table, expressed in logical pixels
insideBorderColor Border color for all interior sides of a table
insideBorderHorizontals Border width for the interior horizontal dividers of a table, expressed in logical pixels
insideBorderLeft Border width for the interior left side of a table, expressed in logical pixels
insideBorderRight Border width for the interior right side of a table, expressed in logical pixels
insideBorderTop Border width for the interior top side of a table, expressed in logical pixels
insideBorderVerticals Border width for the interior vertical dividers of a table, expressed in logical pixels
paged

A table of primitives shown as a series of pages.

Properties

Common Properties

Property Name Description
columnSettings Array of settings for each column
rowsPerPage Number of rows to display for each page of table information

Text

Displays a piece of text.

Fields

Field Name Type Description
Content string The text to show.
Embodiment string A JSON string specifying the embodiment to use for this primitive. This can be assigned explicitly or by an update from the App.
Status int 0 = Normal, 1 = Disabled, 2 = Hidden, 3 = Collapsed.
Tag string An optional and arbitrary string to identify this primitive.

Embodiments

default

Default

Properties

Common Properties

Property Name Description
backgroundColor Background color
color Color of embodiment (typically the foreground)
fontFamily Font family
fontSize Font size
fontStyle Font style
Values:
=> normal – Normal weight (default)
=> italic – Italic font
fontWeight Font weight
Values:
=> normal – Normal weight (default)
=> bold – Bold weight
=> w1 – Weight 10%
=> w2 – Weight 20%
=> w3 – Weight 30%
=> w4 – Weight 40%
=> w5 – Weight 50%
=> w6 – Weight 60%
=> w7 – Weight 70%
=> w8 – Weight 80%
=> w9 – Weight 90%

TextField

Field for entering text.

Fields

Field Name Type Description
Embodiment string A JSON string specifying the embodiment to use for this primitive. This can be assigned explicitly or by an update from the App.
Status int 0 = Normal, 1 = Disabled, 2 = Hidden, 3 = Collapsed.
Tag string An optional and arbitrary string to identify this primitive.
TextEntry string The entered text or the initial text to edit.

Embodiments

default

Default

Properties

Common Properties

Property Name Description
focusSelection How the edited content should be selected upon getting keyboard focus.
Values:
=> begin – Select the beginning of content
=> end – Select the end of content (default)
=> all – Select all of the content
hideText Hide the input text.
hidingCharacter Character to use for hiding the input text. If not specified then the asterisk * character is used.
maxDisplayLines Maximum lines to be displayed.
maxLength Maximum allowed length for text entry.
maxLines Maximum allowed lines for text entry.
minDisplayLines Minimum lines to be displayed.

Timer

Performs updates on a regular interval.

Fields

Field Name Type Description
Embodiment string A JSON string specifying the embodiment to use for this primitive. This can be assigned explicitly or by an update from the App.
PeriodMs int The amount of time in milliseconds between each timer tick.
Status int 0 = Normal, 1 = Disabled, 2 = Hidden, 3 = Collapsed.
Tag string An optional and arbitrary string to identify this primitive.
TimerFired bool True when the timer is fired in the app.

Embodiments

default

Default

Properties

Common Properties


Tree

A tree of primitives.

Fields

Field Name Type Description
Embodiment string A JSON string specifying the embodiment to use for this primitive. This can be assigned explicitly or by an update from the App.
ModelItem Primitive A model primitive that models what each item in the list will look like.
Root Primitive The root node of the tree.
SelectedPath []int The sequence of sub node traversals to reach the selected node.
Status int 0 = Normal, 1 = Disabled, 2 = Hidden, 3 = Collapsed.
Tag string An optional and arbitrary string to identify this primitive.

Embodiments

default

Default

Properties

Common Properties


Tristate

A true, false, or indeterminate choice.

Fields

Field Name Type Description
Embodiment string A JSON string specifying the embodiment to use for this primitive. This can be assigned explicitly or by an update from the App.
Label string The text to show in the item.
LabelItem Primitive A primitive to show as the label.
State int The state of the option (0 = Negative, 1 = Affirmative, and -1 = Indeterminate).
Status int 0 = Normal, 1 = Disabled, 2 = Hidden, 3 = Collapsed.
Tag string An optional and arbitrary string to identify this primitive.

Embodiments

default

Default

Properties

Common Properties