SDON Object Model Reference Guide

Diagram

The root object of an SDON document

Template <String>:
Type of diagram SDON will create. Sets the behavior of lines and shapes. A value from the SDONTemplates enum.

Version <String>:
The version of the SDON document.

Shape <Shape Object>:
The root shape in a diagram.

Title <TitleShape Object>:
A title string centered over the diagram 1/2" above it.

Returns <Array of Return Object>:
A list of segmented lines that link shapes together.

Colors <Array of ColorEntry Object>:
A list of mappings of color aliases to color hex codes so that the alias can be used instead of the hex color code.

Symbols <Array of SymbolEntry Object>:
A list of mapping of a symbol's ID (in the SmartDraw CMS) to an alias that can be used in place of the Shape's ShapeType name.

DataTable <Array of DataTableDefinition Object>:
Definitions of data tables used in the diagram whose rows can be referenced by a shape.

GanttOptions <GanttOptions Object>:
Options for Gantt charts if the digram is a Gantt chart.

GanttColumns <Array of GanttColumn Object>:
Column definitions for a Gantt chart.

DataTable <DataTableInstance Object>:
A special data table used when making Gantt charts, defines the row values and relationships that are inserted into a Gantt chart. The field names for the rows in this data table must be from the GanttChartColumnNames enum.

BACK TO TOP

Shape

Object that represents a shape in a SmartDraw diagram.

{
	"ID":<Number>,
	"Label":<String>,
	"ShapeType":<String>,
	"TextBold":<Boolean>,
	"TextItalic":<Boolean>,
	"TextUnderline":<Boolean>,
	"TextSize":<Number>,
	"TextFont":<String>,
	"TextMargin":<Number>,
	"TextColor":<String>,
	"FillColor":<String>,
	"TextAlignH":<String>,
	"TextAlignV":<String>,
	"TextGrow":<String>,
	"MinWidth":<Number>,
	"MinHeight":<Number>,
	"LineThick":<Number>,
	"LineColor":<String>,
	"LineLabel":<String>,
	"LinePattern":<String>,
	"Hide":<Boolean>,
	"Truncate":<Number>,
	"ShapeConnectorType":<String>,
	"Note":<String>,
	"NoteIcon":<String>,
	"ShapeConnector":<Array of ShapeConnector Object>,
	"Hyperlink":<Hyperlink Object>,
	"TextHyperlink":<Hyperlink Object>,
	"Table":<Table Object>,
	"Image":<Image Object>,
	"ShapeContainer":<ShapeContainer Object>,
	"Data":<DataTableShapeEntry Object>
}

ID <Number>:
The ID of this shape. IDs are used to specify the paths of Return lines. IDs arbitrary but should be unique and must be greater than zero.

Label <String>:
The text label inside the shape.

ShapeType <String>:
The type of shape. Used to change the shape from a rectangle (default) to another shape. A value from the ShapeTypes enum or a value from the containing diagram's symbol table.

TextBold <Boolean>:
Makes the text label be bold with a value of true, not bold with false, otherwise, if omitted, boldness follows the template default.

TextItalic <Boolean>:
Makes the text label be italic with a value of true, not italic with false, otherwise, if omitted, italic follows the template default.

TextUnderline <Boolean>:
Makes the text label be underlined with a value of true, not underlined with false, otherwise, if omitted, underlined follows the template default.

TextSize <Number>:
The point size of the text label the specified value. If omitted, the text size is the default for the template.

TextFont <String>:
The font of the text label the specified value. If omitted, the font is the default for the template. Any font can be defined, but will fall back to system default if font is unavailable.

TextMargin <Number>:
Sets the space (in 100 dpi) between the text and the outside edge of the shape.

TextColor <String>:
The color of the text label of the shape (hex RGB value or color alias). If omitted, the color is the default for the template.

FillColor <String>:
The fill color of the shape (hex RGB value or color alias). If omitted, color is the default for the template.

TextAlignH <String>:
Aligns the text label to the left, right or centered in the shape. If omitted, the alignment is the default for the template. A value from the HorizontalAlignments enum.

TextAlignV <String>:
Align the text label to the top, bottom or middle in the shape. If omitted, the alignment is the default for the template. A value from the VerticalAlignments enum.

TextGrow <String>:
Determines the way in which a shape will grow as text is added. Values must be from the TextGrow enum.

MinWidth <Number>:
Specifies the initial width of a shape in 1/100" before any text is added. Adding more text than will fit into the shape will grow it according to the TextGrow value.

MinHeight <Number>:
Specifies the initial height of a shape in 1/100" before any text is added. Adding more text than will fit into the shape will grow it according to the TextGrow value.

LineThick <Number>:
The border thickness of the shape in 1/100". If omitted, the thickness is the default for the template.

LineColor <String>:
The border color of the shape (hex RGB value or color alias). If omitted, color is the default for the template.

LineLabel <String>:
A text label on the connector line segment that touches the shape.

LinePattern <String>:
The pattern of the line for the connector. Must be a value from the LinePatterns enum.

Hide <Boolean>:
Whether or not to display the shape if this shape is a parent ShapeContainer to child shapes.

Truncate <Number>:
Defines the number of characters to allow in a shape before the remaining text is truncated. By default nothing is truncated. Defining Truncate to "-1" turns it off if on by default.

ShapeConnectorType <String>:
Defines the type of connector that is coming off of this shape is the parent of. Must be a value from ShapeConnectorTypes.

Note <String>:
A string to appear as a note attached to a shape.

NoteIcon <String>:
The icon to use for the note on a shape. Defaults to a post-it note icon. Other options are available in the Icons enum.

ShapeConnector <Array of ShapeConnector Object>:
The list of ShapeConnectors that are attached to and branch off from this shape.

Hyperlink <Hyperlink Object>:
A hyperlink on the shape.

TextHyperlink <Hyperlink Object>:
A hyperlink on the text in the shape.

Table <Table Object>:
Divides the shape up into rows and columns.

Image <Image Object>:
An image to put into the shape.

ShapeContainer <ShapeContainer Object>:
Defines arrangements of shapes not connected by lines, but contained inside a parent shape in rows, columns or a matrix arrangement.

Data <DataTableShapeEntry Object>:
An instance of a data table that is used to attach data to a shape.

BACK TO TOP

ShapeConnector

An object that contains an array of shapes that are connected to it by an automatic connector. Defines an automatic connector.

{
	"Collapse":<Boolean>,
	"Direction":<String>,
	"FillColor":<String>,
	"LineThick":<Number>,
	"LineColor":<String>,
	"LinePattern":<String>,
	"Arrangement":<String>,
	"Shapes":<Array of Shape Object>,
	"ShapeConnectorType":<String>,
	"StartArrow":<Number>,
	"EndArrow":<Number>,
	"TextBold":<Boolean>,
	"TextItalic":<Boolean>,
	"TextUnderline":<Boolean>,
	"TextSize":<Number>,
	"TextFont":<String>,
	"DefaultShape":<Shape Object>
}

Collapse <Boolean>:
Whether or not to collapse (hide) the connector. The connector is collapsed initially. This applies only to tree-like diagrams (not flowcharts).

Direction <String>:
The direction of the connector from the parent shape. For Mind Maps this can be Left or Right for the Shape array connected to the root shape. All other uses are ignored. The default is "Right". Mind Maps ignore any more than two Shape arrays for the root shape and any more than one for other shapes. For Org Charts (trees) the first Shape array connected to the root shape can be in any direction and this sets the direction of the tree. The default is "Down". All other values are ignored. Org charts ignore any more than one Shape array per shape. For Flow Charts any shape can have multiple Shape arrays in any direction. If two or more Shape arrays attached to a single shape have the same direction, they are shown as a split path. The default direction for a Shape array is "Right".

FillColor <String>:
The background color for text labels.

LineThick <Number>:
The thickness of the line in 1/100". If omitted, the thickness is the default for the template.

LineColor <String>:
The line color of the connector as a hex RGB value. If omitted, the color is the default for the template.

LinePattern <String>:
The pattern of the line for the connector. Must be a value from the LinePatterns enum.

Arrangement <String>:
The arrangement pattern of the shapes on the connector. Must be a value from the ShapeConnectorArrangement enum.

Shapes <Array of Shape Object>:
A list of shapes that are attached to the connector. The shapes are attached in the order they appear in in the list.

ShapeConnectorType <String>:
Defines the way the shape connector will be formatted. If omitted, the template default is used.

StartArrow <Number>:
The arrowhead that will appear on the beginning of the line. Must be a value from the Arrowheads enum.

EndArrow <Number>:
The arrowhead that will appear on the end of the line. Must be a value from the Arrowheads enum.

TextBold <Boolean>:
Makes the text label be bold with a value of true, not bold with false, otherwise, if omitted, boldness follows the template default.

TextItalic <Boolean>:
Makes the text label be italic with a value of true, not italic with false, otherwise, if omitted, italic follows the template default.

TextUnderline <Boolean>:
Makes the text label be underlined with a value of true, not underlined with false, otherwise, if omitted, underlined follows the template default.

TextSize <Number>:
The point size of the text label the specified value. If omitted, the text size is the default for the template.

TextFont <String>:
The font of the text label the specified value. If omitted, the font is the default for the template. Any font can be defined, but will fall back to system default if font is unavailable.

DefaultShape <Shape Object>:
Sets the default properties of any child shapes of the connector.

BACK TO TOP

Object representing a container for a hyperlink.

{
	"url":<String>
}

url <String>:
The URL of the hyperlink.

BACK TO TOP

Image

Object for holding the reference to an image.

{
	"url":<String>
}

url <String>:
The URL of the image.

BACK TO TOP

ShapeContainer

An object for holding shapes in a grid-like pattern.

{
	"Shapes":<Array of Shape Object>,
	"Arrangement":<String>,
	"Wrap":<Number>,
	"VerticalSpacing":<Number>,
	"HorizontalSpacing":<Number>,
	"ShapesAlignH":<String>,
	"ShapesAlignV":<String>,
	"Hide":<Boolean>,
	"DefaultShape":<Shape Object>
}

Shapes <Array of Shape Object>:
The shapes contained by the ShapeContainer.

Arrangement <String>:
The arrangement grid pattern. Must be a value from ShapeContainerArrangement.

Wrap <Number>:
This is the maximum number of rows for a "Row" arrangement before it wraps to a new row, or the maximum number of columns for a Column arrangement before it wraps to a new column.

VerticalSpacing <Number>:
Spacing between rows in 1/100". This is inherited by child ShapeContainers.

HorizontalSpacing <Number>:
Spacing between columns in 1/100". This is inherited by child ShapeContainers.

ShapesAlignH <String>:
Controls the positioning of shapes in a column of shapes. Must be a value from ShapeAlignHorizontal.

ShapesAlignV <String>:
Controls the positioning of a shape in a row of shapes. Must be a value from ShapeAlignVertical.

Hide <Boolean>:
Causes the parent to be deleted after the layout is achieved. It is ignored if there is no ShapeContainer.

DefaultShape <Shape Object>:
The default shape properties of all shapes in the container.

BACK TO TOP

Table

Object that represents a table that has been inserted into a shape.

Rows <Number>:
The number of rows in the table. This can be omitted for a default of 1 if there are columns defined. If neither the number of rows or columns is defined, the Table object is ignored.

Columns <Number>:
The number of columns in the table. This can be omitted for a default of 1 if there are rows defined. If neither the number of rows or columns is defined, the Table object is ignored.

ColumnWidth <Number>:
The width of the column in 1/100th inches.

RowHeight <Number>:
The Height of the Row in 1/100th inches.

Cell <Array of Cell Object>:
Specific properties for individual cells.

AlternateRows <TableAlternateRowsColors Object>:
Sets up a color scheme for alternating row colors in a table.

Join <Array of Join Object>:
List of elements that define a range of table cells to join into one cell.

ColumnProperties <Array of ColumnProperties Object>:
Special properties of individual columns.

RowProperties <Array of RowProperties Object>:
Special properties of individual rows.

BACK TO TOP

Cell

Object that represents a Cell in a table.

{
	"Column":<Number>,
	"Row":<Number>,
	"Label":<String>,
	"TextSize":<Number>,
	"TextBold":<Boolean>,
	"TextItalic":<Boolean>,
	"TextUnderline":<Boolean>,
	"TextFont":<String>,
	"TextColor":<String>,
	"FillColor":<String>,
	"TextAlignH":<String>,
	"TextAlignV":<String>,
	"Truncate":<Number>,
	"Note":<String>,
	"NoteIcon":<String>,
	"Hyperlink":<Hyperlink Object>,
	"TextHyperlink":<Hyperlink Object>,
	"Image":<Image Object>,
	"Shape":<Shape Object>
}

Column <Number>:
Required. The column of the cell. Note that the first column is column 1 not column 0.

Row <Number>:
Required. The row of the cell. Note that the first row is row 1 not row 0.

Label <String>:
The text label inside the cell.

TextSize <Number>:
The point size of the text label the specified value. If omitted, the text size is the default for the template.

TextBold <Boolean>:
Makes the text label be bold with a value of true, not bold with false, otherwise, if omitted, boldness follows the template default.

TextItalic <Boolean>:
Makes the text label be italic with a value of true, not italic with false, otherwise, if omitted, italic follows the template default.

TextUnderline <Boolean>:
Makes the text label be underlined with a value of true, not underlined with false, otherwise, if omitted, underlined follows the template default.

TextFont <String>:
The font of the text label the specified value. If omitted, the font is the default for the template. Any font can be defined, but will fall back to system default if font is unavailable.

TextColor <String>:
The color of the text label of the cell (hex RGB value or alias). If omitted, the color is the default for the template.

FillColor <String>:
The fill color of the shape (hex RGB value or alias). If omitted, color is the default for the template.

TextAlignH <String>:
Aligns the text label to the left, right or centered in the shape. If omitted, the alignment is the default for the template. A value from the HorizontalAlignments enum.

TextAlignV <String>:
Align the text label to the top, bottom or middle in the shape. If omitted, the alignment is the default for the template. A value from the VerticalAlignments enum.

Truncate <Number>:
The number of characters shown in the cell before the text is truncated.

Note <String>:
A string to appear as a note attached to a cell.

NoteIcon <String>:
The icon to use for the note on a cell. Defaults to a post-it note icon. Other options are available in the Icons enum.

Hyperlink <Hyperlink Object>:
A hyperlink in the cell.

TextHyperlink <Hyperlink Object>:
A hyperlink for the text in the cell.

Image <Image Object>:
Defines the url to the image to be shown in the cell.

Shape <Shape Object>:
A shape that appears inside a table cell. The cell will resize to accommodate the shape and its children.

BACK TO TOP

Join

Object that describes how to join cells together in a table.

{
	"Row":<Number>,
	"Column":<Number>,
	"N":<Number>,
	"Down":<Boolean>
}

Row <Number>:
Required. The row of the first cell to be joined to others to the right or below it. Note that the first row is row 1 not row 0.

Column <Number>:
Required. The column of the first cell to be joined to others to the right or below it. Note that the first column is column 1 not column 0.

N <Number>:
The number of cells to join to the first cell. If this exceeds the number of cells available within a row or column the number is reduced to the maximum possible. The default value is 1.

Down <Boolean>:
Adding this parameter with a non zero value makes the join happen down the column.

BACK TO TOP

ColumnProperties

Object for containing the properties of a column in a table.

{
	"Index":<Number>,
	"LineThick":<Number>,
	"LineColor":<String>,
	"LinePattern":<String>,
	"Width":<Number>,
	"FixedWidth":<Boolean>
}

Index <Number>:
The index of the column.

LineThick <Number>:
The thickness of the column borders in 1/100". Otherwise the thickness is the default for the template.

LineColor <String>:
The line color of the column borders as a hex RGB value or color alias. If omitted, the color is the default for the template.

LinePattern <String>:
The pattern of the line for the column border. Must be a value from the LinePatterns enum.

Width <Number>:
The desired width of the column in 1/100". Note any change n column N’s width reduces the width of column N+1 by the same amount.

FixedWidth <Boolean>:
Makes the column not scale as the shape that contains the table grows.

BACK TO TOP

RowProperties

Object for containing the properties of a row in a table.

{
	"Index":<Number>,
	"LineThick":<Number>,
	"LineColor":<String>,
	"LinePattern":<String>,
	"Height":<Number>,
	"FixedHeight":<Boolean>
}

Index <Number>:
The index of the row.

LineThick <Number>:
The thickness of the row borders in 1/100". If omitted, the thickness is the default for the template.

LineColor <String>:
The line color of the row borders as a hex RGB value or color alias. If omitted, the color is the default for the template.

LinePattern <String>:
The pattern of the line for the row border. Must be a value from the LinePatterns enum.

Height <Number>:
The minimum height of the row in 1/100". The text in cells in the row may force the row to be taller than this height.

FixedHeight <Boolean>:
Makes the row not scale as the shape that contains the table grows.

BACK TO TOP

TableAlternateRowsColors

Object that holds two color entries to alternate between while in a table.

{
	"Color1":<String>,
	"Color2":<String>
}

Color1 <String>:
The first color to alternate between. If omitted, the default theme colors are used. Can be a hex color or a color alias.

Color2 <String>:
The last color to alternate between. If omitted, the default theme colors are used. Can be a hex color or a color alias.

BACK TO TOP

TitleShape

Object that represents the title of a diagram.

{
	"Label":<String>,
	"TextBold":<Boolean>,
	"TextItalic":<Boolean>,
	"TextUnderline":<Boolean>,
	"TextSize":<Number>,
	"TextFont":<String>,
	"TextColor":<String>
}

Label <String>:
The text to put as a title for the diagram.

TextBold <Boolean>:
Makes the text label be bold with a value of true, not bold with false, otherwise, if omitted, boldness follows the template default.

TextItalic <Boolean>:
Makes the text label be italic with a value of true, not italic with false, otherwise, if omitted, italic follows the template default.

TextUnderline <Boolean>:
Makes the text label be underlined with a value of true, not underlined with false, otherwise, if omitted, underlined follows the template default.

TextSize <Number>:
The point size of the text label the specified value. If omitted, the text size is the default for the template.

TextFont <String>:
The font of the text label the specified value. If omitted, the font is the default for the template. Any font can be defined, but will fall back to system default if font is unavailable.

TextColor <String>:
The color of the text label of the shape (hex RGB value). If omitted, the color is the default for the template.

BACK TO TOP

Return

An object representing a segmented line that links two shapes.

{
	"StartID":<Number>,
	"EndID":<Number>,
	"StartDirection":<String>,
	"EndDirection":<String>,
	"LinePattern":<String>,
	"Label":<String>,
	"StartArrow":<Number>,
	"EndArrow":<Number>,
	"LineThick":<Number>,
	"LineColor":<String>,
	"Curved":<Boolean>
}

StartID <Number>:
Required. The ID of the starting shape. The starting and ending shapes define the direction of the line as far as any arrowhead is concerned, the arrowhead touches the ending shape.

EndID <Number>:
Required. The ID of the ending shape. The starting and ending shapes define the direction of the line as far as any arrowhead is concerned, the arrowhead touches the ending shape.

StartDirection <String>:
The direction the line leaves the starting shape. The default is Down. A value from the Directions enum.

EndDirection <String>:
The direction the line goes out the ending shape. The default is Down. A value from the Directions enum.

LinePattern <String>:
The pattern of the line connecting the shapes. A value from the LinePatterns enum.

Label <String>:
The text that appears on the line.

StartArrow <Number>:
The arrowhead that will appear on the beginning of the line. A value from the Arrowheads enum. The default arrowhead depends on the template used.

EndArrow <Number>:
The arrowhead that will appear on the end of the line. A value from the Arrowheads enum. The default arrowhead depends on the template used.

LineThick <Number>:
The thickness of the line in 1/100". Otherwise the thickness is the default for the template.

LineColor <String>:
Make the line color of the connector the specified RGB value or color alias. Otherwise the color is the default for the template.

Curved <Boolean>:
When set to true this creates a curved return.

BACK TO TOP

ColorEntry

Object that maps an alias to a hex color code.

{
	"Name":<String>,
	"Value":<String>
}

Name <String>:
The alias to give the color.

Value <String>:
The 6 or 8 character hex color, starting with the #. For example: #FFFFFF is the valid entry for white. The hex color code can be RGB or (8-digit) RGBA where A is the opacity of the color.

BACK TO TOP

SymbolEntry

An object that maps an alias to a symbol's GUID.

{
	"Name":<String>,
	"ID": <String>
}

Name <String>:
The alias to give the symbol.

ID <String>:
The ID of the symbol to use.

BACK TO TOP

DataTableDefinition

Object for containing a table of custom data for a shape, defines the schema of a table and gives it an ID so it can be used in shapes contained in the diagram.

ID <String>:
The unique identifier for the data table so it can be referenced in a shape object.

TableName <String>:
The name to give the table.

Columns <Array of DataTableColumn Object>:
The list of column definitions in a data table. The schema of the data table.

Rows <Array of DataTableRow Object>:
Optional. The data to populate rows in the data table with.

BACK TO TOP

DataTableColumn

Object defining of a column in a data table.

{
	"Name":<String>,
	"Type":<String>
}

Name <String>:
The name of the column.

Type <String>:
The data type of the column. Must be one of the data types from DataTableDataTypes.

BACK TO TOP

DataTableRow

Object that represents a row of column values in a DataTable.

RowID <Number>:
The ID of the row.

Fields <Array of DataTableField Object>:
A list of fields that are used to populate a row in a DataTable schema defined in the Diagram object.

BACK TO TOP

GanttOptions

Object for containing the configuration options for a Gantt chart.

{
	"AllWorkingDays":<Boolean>,
	"Holidays":<String>
}

AllWorkingDays <Boolean>:
Whether or not Saturday and Sunday are considered working days or if they should be omitted from the Gantt chart.

Holidays <String>:
The holidays (by region) to include in the Gantt chart. Must be a value from GanttChartHolidays enum.

BACK TO TOP

GanttColumn

Object for containing information about a column in a gantt chart.

Name <String>:
The name of the column. Must be a value from GanttChartColumnNames.

Settings <GanttColumnSettings Object>:
The settings of the column.

BACK TO TOP

GanttColumnSettings

Object for containing various settings for a column in a gantt chart.

{
	"Title":<String>,
	"Width":<Number>
}

Title <String>:
The title of the column in the gantt chart.

Width <Number>:
The width of the column.

BACK TO TOP

DataTableInstance

Object that contains a reference to a DataTable defined in the Diagram object. Used to fill out the schema defined in the DataTable array in the Diagram object.

{
	"TableName":<String>,
	"Rows":<Array of DataTableRow Object>
}

TableName <String>:
The name of a predefined table in the template used.

Rows <Array of DataTableRow Object>:
The rows to insert in the pre-existing table.

BACK TO TOP

DataTableField

Object representing a value in a row in a data table.

{
	"Name":<String>,
	"Value":<String>
}

Name <String>:
The name of the corresponding column to add a value to.

Value <String>:
The value to give the row.

BACK TO TOP

DataTableShapeEntry

Object that represents a row of column values in a DataTable that is attached to a shape.

{
	"RowID":<Number>,
	"TableID":<Number>,
	"Fields":<Array of DataTableField Object>
}

RowID <Number>:
The ID of the row.

TableID <Number>:
The ID of the DataTableDefinition to use. If no ID is specified, it uses the first data table defined in the Diagram object.

Fields <Array of DataTableField Object>:
A list of fields that are used to populate a row in a DataTable schema defined in the Diagram object.

BACK TO TOP

CONSTANTS

DataTableDataTypes

Constants table indicating the type of a data value in a data table column.

{
	"String":"String",
	"Int":"Int",
	"Float":"Float",
	"Bool":"Boolean",
	"Date":"Date"
}

String <String>:
The data type of a column is a string (text).

Int <String>:
The data type of a column is an integer (whole number).

Float <String>:
The data type of a column is a floating-point integer (number with a decimal point).

Bool <String>:
The data type of a column is a boolean (either true or false).

Date <String>:
The data type of a column is a date (YYYY/MM/DD).

BACK TO TOP

SDONTemplates

Constants table indicating the type of diagram SDON will create. Sets the behavior of lines and shapes.

{
	"Flowchart":"Flowchart",
	"MindMap":"Mindmap",
	"OrgChart":"Orgchart",
	"DecisionTree":"Decisiontree",
	"Hierarchy":"Hierarchy"
}

Flowchart <String>:
The document will open as a flowchart with the flowchart SmartPanel.

MindMap <String>:
The document will open as a mind map with the mind map SmartPanel.

OrgChart <String>:
The document will open as a org chart with the org chart SmartPanel.

DecisionTree <String>:
The document will open as a decision tree with the decision tree SmartPanel.

Hierarchy <String>:
The document will open as a hierarchy diagram with the hierarchy SmartPanel.

BACK TO TOP

HorizontalAlignments

Constants table indicating the horizontal justification of text or shapes.

{
	"Left":"left",
	"Center":"center",
	"Right":"right"
}

Left <String>:
Left-justified alignment.

Center <String>:
Center-justified alignment.

Right <String>:
Right-justified alignment.

BACK TO TOP

VerticalAlignments

Constants table indicating the vertical justification of text or shapes.

{
	"Top":"top",
	"Middle":"middle",
	"Bottom":"bottom"
}

Top <String>:
Aligns to the top of the shape or container.

Middle <String>:
Aligns to the middle of the shape or container.

Bottom <String>:
Aligns to the bottom of the shape or container.

BACK TO TOP

ShapeTypes

Constants table indicating what type of shape is going to be created by the SDON.

{
	"RoundedRectangle":"RRect",
	"Oval":"Oval",
	"Circle":"Circle",
	"Square":"Square",
	"Diamond":"Diamond"
}

RoundedRectangle <String>:
A rectangle with circular edges.

Oval <String>:
An oval.

Circle <String>:
A circle.

Square <String>:
A square.

Diamond <String>:
A diamond.

BACK TO TOP

Directions

Constants table indicating the direction of a connector.

{
	"Left":"Left",
	"Right":"Right",
	"Top":"Top",
	"Bottom":"Bottom"
}

Left <String>:
The shapes added to a connector will go from left to right.

Right <String>:
The shapes added to a connector will go from right to left.

Top <String>:
The shapes added to a connector will go top to bottom.

Bottom <String>:
The shapes added to a connector will go bottom to top.

BACK TO TOP

LinePatterns

Constants table indicating the pattern of a line.

{
	"Solid":"Solid",
	"Dotted":"Dotted",
	"Dashed":"Dashed"
}

Solid <String>:
A solid line.

Dotted <String>:
A dotted line.

Dashed <String>:
A line made from dashes.

BACK TO TOP

ShapeArrangementTypes

Constants table indicating how shapes in a ShapeArray's ShapeArrangement are laid out.

{
	"Square":"Square",
	"Row":"Row",
	"Column":"Column"
}

Square <String>:
Shapes will be arranged in a square grid.

Row <String>:
Shapes will be arranged in a row.

Column <String>:
Shapes will be arranged in a column.

BACK TO TOP

TextGrow

Constants table indicating how a shape will grow if it holds more text than it can display.

{
	"Proportional":"Proportional",
	"Vertical":"Vertical",
	"Horizontal":"Horizontal"
}

Proportional <String>:
Adding text will cause the shape to grow proportionally vertically and horizontally.

Vertical <String>:
Adding text will cause the shape to grow vertically only.

Horizontal <String>:
Adding text will cause the shape to grow horizontally only.

BACK TO TOP

ShapeConnectorTypes

Constants table indicating the type of shape connector to generate. Changes how shapes behave in the diagram.

{
	"Flowchart":"Flowchart",
	"DecisionTree":"Decisiontree",
	"Mindmap":"Mindamp",
	"OrgChart":"OrgChart",
	"Hierarchy":"Hierarchy"
}

Flowchart <String>:
Shapes are added along an evenly-spaced horizontal or vertical shape connector.

DecisionTree <String>:
Shapes are added as peers to a parent shape in either a horizontal or vertical arrangement.

Mindmap <String>:
Shapes are added as peers to a parent shape in either a horizontal or vertical arrangement.

OrgChart <String>:
Shapes are added as a horizontal or vertical tree stemming from a parent shape.

Hierarchy <String>:
Shapes are added as a horizontal tree stemming from a parent shape.

BACK TO TOP

ShapeAlignHorizontal

Constants table indicating how shapes are aligned in a shape container horizontally.

{
	"Left":"left",
	"Right":"right",
	"Center":"center"
}

Left <String>:
Shapes are left-justified in a shape container.

Right <String>:
Shapes are right-justified in a shape container.

Center <String>:
Shapes are center-justified in a shape container.

BACK TO TOP

ShapeAlignVertical

Constants table indicating how shapes are aligned in a shape container.

{
	"Top":"top",
	"Bottom":"bottom",
	"Middle":"middle"
}

Top <String>:
Shapes are aligned along the top of the shape container.

Bottom <String>:
Shapes are aligned along the bottom of the shape container.

Middle <String>:
Shapes are aligned along the middle of the shape container.

BACK TO TOP

ShapeContainerArrangement

Constants table indicating the arrangement of shapes in a shape container.

{
	"Square":"Square",
	"Row":"Row",
	"Column":"Column"
}

Square <String>:
Shapes will be aligned in a square grid pattern.

Row <String>:
Shapes are aligned in a row.

Column <String>:
Shapes are aligned in a column.

BACK TO TOP

ShapeConnectorArrangement

Describes the arrangement of shapes on an org chart or hierarchy chart.

{
	"Row":"Row",
	"Stagger":"Stagger",
	"Column":"Column",
	"LeftColumn":"LeftColumn",
	"TwoColumn":"TwoColumn"
}

Row <String>:
Horizontal row of shapes.

Stagger <String>:
Horizontal row of shapes with staggered distances from the parent.

Column <String>:
A vertical column of shapes to the right of the connector line.

LeftColumn <String>:
A vertical column of shapes to the left of the connector line.

TwoColumn <String>:
A vertical column arranged with shapes on both sides of the connector line.

BACK TO TOP

Icons

Constants table indicating icons that can be used in shapes.

{
	"Info":"Info"
}

Info <String>:
A "info" icon.

BACK TO TOP

DataTableTypes

Constants table indicating the type of data in a data table. Changes how the data behaves.

{
	"String":"string",
	"Int":"int",
	"Float":"float",
	"Bool":"bool",
	"Date":"date"
}

String <String>:
The data type is a string of text.

Int <String>:
The data type is a whole number (an integer).

Float <String>:
The data type is a decimal number (a double floating point number).

Bool <String>:
The data type is a boolean value (either true or false).

Date <String>:
The data type is a date string (YYYY/MM/DD).

BACK TO TOP

GanttChartHolidays

Constants table indicating holidays to observe on the Gantt charts.

{
	"None":"None",
	"USA":"USA",
	"UK":"UK",
	"Australia":"Australia",
	"Canada":"Canada"
}

None <String>:
Observe no holidays.

USA <String>:
Observe USA holidays.

UK <String>:
Observe United Kingdom holidays.

Australia <String>:
Observe Australian holidays.

Canada <String>:
Observe Canadian holidays.

BACK TO TOP

GanttChartColumnNames

Special column names for use with Gantt charts. Used when populating the Diagram object's UseDataTable property.

{
	"Row":"Row",
	"Task":"Task",
	"Start":"Start",
	"Length":"Length",
	"End":"End",
	"Parent":"Parent",
	"Master":"Master",
	"Person":"Person",
	"PercentComplete":"PercentComplete",
	"Department":"Department",
	"Cost":"Cost",
	"Custom":"Custom"
}

Row <String>:
Numerical index of a row. Defaults to index in the array of rows.

Task <String>:
The description of a task. Defaults to empty.

Start <String>:
The start date of the task in YYYY-MM-DD format. Defaults to the current date.

Length <String>:
The length of the task in days (can be a decimal). Defaults to 5.

End <String>:
The end date of the task in YYYY-MM-DD format.

Parent <String>:
The ID of the parent task. Defaults to no parent.

Master <String>:
The ID of the task that has to be completed before this task can begin (a dependency).

Person <String>:
The name of the person for the assigned task. Defaults to empty.

PercentComplete <String>:
The percent completion of the task. Defaults to 0.

Department <String>:
A text field used for indicating which department a task belongs to. Defaults to empty.

Cost <String>:
The cost of a task. Defaults to empty.

Custom <String>:
A custom user text field.

BACK TO TOP

Arrowheads

Enum for describing the different arrowheads that can be used.

{
	"None":0,
	"Filled":1,
	"LineArrow":2,
	"Fancy":3,
	"FilledCircle":4,
	"EmptyCircle":5,
	"FilledSquare":6,
	"EmptySquare":7,
	"CrowsFoot":8,
	"BackSlash":9,
	"FilledCrowsFoot":10,
	"Diamond":11,
	"ZeroToMany":12,
	"OneToMany":13,
	"ZeroToOne":14,
	"OneToOne":15,
	"OneToZero":16,
	"CenterFilled":17,
	"CenterLineArrow":18,
	"CenterFancy":19,
	"Double":20,
	"DimensionFilled":21,
	"DimensionPlain":22,
	"DimensionLine":23,
	"Metafile":24,
	"ArcDown":25,
	"ArcUp":26,
	"HalfUp":27,
	"HalfDown":28,
	"CenterCross":29,
	"HalfLineUp":30,
	"HalfLineDown":31,
	"ForwardSlash":32,
	"OpenFilled":33,
	"OpenCrowsFoot":34,
	"OpenDiamond":35,
	"Cross":36,
	"IndicatorDown":37,
	"IndicatorUp":38,
	"RoundEnd":39
}

None <Number>:
No arrowhead.

Filled <Number>:
Filled Triangle Arrowhead arrowhead.

LineArrow <Number>:
Triangle Arrowhead that is not filled.

Fancy <Number>:
A fancy arrowhead.

FilledCircle <Number>:
An arrowhead that is a filled circle.

EmptyCircle <Number>:
An arrowhead that is an empty circle.

FilledSquare <Number>:
An arrowhead that is a filled square.

EmptySquare <Number>:
An arrowhead that is an unfilled square.

CrowsFoot <Number>:
A crow's foot style arrowhead.

BackSlash <Number>:
An arrowhead that is a backslash.

FilledCrowsFoot <Number>:
A filled crow's foot style arrowhead.

Diamond <Number>:
A filled diamond arrowhead.

ZeroToMany <Number>:
A zero-to-many relationship arrowhead.

OneToMany <Number>:
A one-to-many relationship arrowhead.

ZeroToOne <Number>:
A zero-to-one relationship arrowhead.

OneToOne <Number>:
A one-to-one relationship arrowhead.

OneToZero <Number>:
A one-to-zero relationship arrowhead.

CenterFilled <Number>:
A center filled arrowhead.

CenterLineArrow <Number>:
A center line arrowhead.

CenterFancy <Number>:
A center fancy arrowhead.

Double <Number>:
A double arrowhead.

DimensionFilled <Number>:
A filled dimension line arrowhead.

DimensionPlain <Number>:
A plain dimension line arrowhead.

DimensionLine <Number>:
The default dimension line arrowhead.

Metafile <Number>:
The arrowhead is a metafile. (Not supported)

ArcDown <Number>:
An downwards arcing arrowhead.

ArcUp <Number>:
An upwards arcing arrowhead.

HalfUp <Number>:
A half-arrowhead on top of the line.

HalfDown <Number>:
A half-arrowhead on the bottom of the line.

CenterCross <Number>:
A cross shaped arrowhead.

HalfLineUp <Number>:
An arrowhead that is a perpendicular line going up out of the line.

HalfLineDown <Number>:
An arrowhead that is a perpendicular line going down out of the line.

ForwardSlash <Number>:
A forward slash arrowhead.

OpenFilled <Number>:
An open arrowhead that is filled.

OpenCrowsFoot <Number>:
An open crow's foot arrowhead.

OpenDiamond <Number>:
An open diamond arrowhead.

Cross <Number>:
A cross shaped arrowhead.

IndicatorDown <Number>:
An indicator arrowhead on the bottom of the line.

IndicatorUp <Number>:
An indicator arrowhead on the top of the line.

RoundEnd <Number>:
A filled circular end.

BACK TO TOP