Routine Operations: Difference between revisions

From Planimate Knowledge Base
Jump to navigation Jump to search
mNo edit summary
mNo edit summary
Line 3: Line 3:
''This page is automatically created. Please do not edit it.'' __NOEDITSECTION__ __TOC__  
''This page is automatically created. Please do not edit it.'' __NOEDITSECTION__ __TOC__  


== Arithmetic ==
== Arithmetic ==


=== Add ( + ) ===
=== Add ( + ) ===


Add two values/rows/columns/tables  
Add two values/rows/columns/tables


  '''[[Add|$R = $1 + $2]]'''
  '''[[Add|$R = $1 + $2]]'''
Line 15: Line 15:
  $2 = Value 2
  $2 = Value 2


=== Clear ===
=== Clear ===


Set the target value to its initialising value  
Set the target value to its initialising value


  '''[[Clear|$R = CLEAR]]'''
  '''[[Clear|$R = CLEAR]]'''
Line 23: Line 23:
  $R = Clear
  $R = Clear


=== Dec ( -= ) ===
=== Dec ( -= ) ===


Decrement first value/row/column/table by second value  
Decrement first value/row/column/table by second value


  '''[[Dec|$R -= $1]]'''
  '''[[Dec|$R -= $1]]'''
Line 32: Line 32:
  $1 = Decr. by
  $1 = Decr. by


=== Div ( / ) ===
=== Div ( / ) ===


Divide values/rows/columns/tables  
Divide values/rows/columns/tables


  '''[[Div|$R = $1 / $2]]'''
  '''[[Div|$R = $1 / $2]]'''
Line 42: Line 42:
  $2 = Value 2
  $2 = Value 2


=== Inc ( += ) ===
=== Inc ( += ) ===


Increment first value/row/column/table by second value  
Increment first value/row/column/table by second value


  '''[[Inc|$R += $1]]'''
  '''[[Inc|$R += $1]]'''
Line 51: Line 51:
  $1 = Incr. by
  $1 = Incr. by


=== InterpolateValue ===
=== InterpolateValue ===


Interpolates a value between value1 and value2 based on ratio (0.0 gives value1, 1.0 gives value2)  
Interpolates a value between value1 and value2 based on ratio (0.0 gives value1, 1.0 gives value2)


  '''[[InterpolateValue|$R = InterpolateValue($1,$2,$3)]]'''
  '''[[InterpolateValue|$R = InterpolateValue($1,$2,$3)]]'''
Line 62: Line 62:
  $3 = Ratio
  $3 = Ratio


=== Mul ( * ) ===
=== Mul ( * ) ===


Multiply values/rows/columns/tables  
Multiply values/rows/columns/tables


  '''[[Mul|$R = $1 * $2]]'''
  '''[[Mul|$R = $1 * $2]]'''
Line 72: Line 72:
  $2 = Value 2
  $2 = Value 2


=== Scale ( *= ) ===
=== Scale ( *= ) ===


Scale first value/row/column/table by second value  
Scale first value/row/column/table by second value


  '''[[Scale|$R *= $1]]'''
  '''[[Scale|$R *= $1]]'''
Line 81: Line 81:
  $1 = Scale by
  $1 = Scale by


=== Set ( = ) ===
=== Set ( = ) ===


Assign a value/row/column/table to another of the same type and size  
Assign a value/row/column/table to another of the same type and size


  '''[[Set|$R = $1]]'''
  '''[[Set|$R = $1]]'''
Line 90: Line 90:
  $1 = Set To
  $1 = Set To


=== Sub ( - ) ===
=== Sub ( - ) ===


Subtract two values/rows/columns/tables  
Subtract two values/rows/columns/tables


  '''[[Sub|$R = $1 - $2]]'''
  '''[[Sub|$R = $1 - $2]]'''
Line 100: Line 100:
  $2 = Value 2
  $2 = Value 2


== Control ==
== Control ==


=== BREAKLOOP ===
=== BREAKLOOP ===


Immediately exits an ITERATE loop  
Immediately exits an ITERATE loop


  '''[[BREAKLOOP|BREAKLOOP]]'''
  '''[[BREAKLOOP|BREAKLOOP]]'''
   
   


=== CASE ===
=== CASE ===


Tests a condition and if true, executes the code following until another CASE or DEFAULT is reached  
Tests a condition and if true, executes the code following until another CASE or DEFAULT is reached


  '''[[CASE|CASE ($F)]]'''
  '''[[CASE|CASE ($F)]]'''
Line 117: Line 117:
  $F = CASE
  $F = CASE


=== DEFAULT ===
=== DEFAULT ===


Marks code that should be executed if no CASES match in a SELECT block  
Marks code that should be executed if no CASES match in a SELECT block


  '''[[DEFAULT|DEFAULT]]'''
  '''[[DEFAULT|DEFAULT]]'''
   
   


=== ELSE ===
=== ELSE ===


Enables an alternate block of code to execute if an IF test fails to be true  
Enables an alternate block of code to execute if an IF test fails to be true


  '''[[ELSE|ELSE]]'''
  '''[[ELSE|ELSE]]'''
   
   


=== ENDIF ===
=== ENDIF ===


Marks the end of an IF block  
Marks the end of an IF block


  '''[[ENDIF|ENDIF]]'''
  '''[[ENDIF|ENDIF]]'''
   
   


=== ENDLOOP ===
=== ENDLOOP ===


Marks the end of an ITERATE block  
Marks the end of an ITERATE block


  '''[[ENDLOOP|ENDLOOP]]'''
  '''[[ENDLOOP|ENDLOOP]]'''
   
   


=== ENDSELECT ===
=== ENDSELECT ===


Marks the end of a SELECT block  
Marks the end of a SELECT block


  '''[[ENDSELECT|ENDSELECT]]'''
  '''[[ENDSELECT|ENDSELECT]]'''
   
   


=== ENDWHILE ===
=== ENDWHILE ===


Marks the end of a WHILE block  
Marks the end of a WHILE block


  '''[[ENDWHILE|ENDWHILE]]'''
  '''[[ENDWHILE|ENDWHILE]]'''
   
   


=== IF ===
=== IF ===


Executes lines following only if the condition is true  
Executes lines following only if the condition is true


  '''[[IF|IF ($F)]]'''
  '''[[IF|IF ($F)]]'''
Line 167: Line 167:
  $F = IF
  $F = IF


=== ITERATE ===
=== ITERATE ===


Repeats a block of routine lines, incrementing an attribute over a range  
Repeats a block of routine lines, incrementing an attribute over a range


  '''[[ITERATE|ITERATE $R FROM $1 TO $2]]'''
  '''[[ITERATE|ITERATE $R FROM $1 TO $2]]'''
Line 177: Line 177:
  $2 = Last Value
  $2 = Last Value


=== ITERATEROWS ===
=== ITERATEROWS ===


Iterate Row Index over all the rows in the table  
Iterate Row Index over all the rows in the table


  '''[[ITERATEROWS|ITERATEROWS $R OVER $1]]'''
  '''[[ITERATEROWS|ITERATEROWS $R OVER $1]]'''
   
   
  $R = Row Index
  $R = Row Index  
  $1 = Table
  $1 = Table    


=== REVERSEITERATE ===
=== REVERSEITERATE ===


Iterate the result attribute over the given range in descending order  
Iterate the result attribute over the given range in descending order


  '''[[REVERSEITERATE|REVERSEITERATE $R FROM $1 TO $2]]'''
  '''[[REVERSEITERATE|REVERSEITERATE $R FROM $1 TO $2]]'''
Line 196: Line 196:
  $2 = Last Value
  $2 = Last Value


=== SELECT ===
=== SELECT ===


Starts a block where CASEs can be used to execute different code for conditions tested  
Starts a block where CASEs can be used to execute different code for conditions tested


  '''[[SELECT|SELECT]]'''
  '''[[SELECT|SELECT]]'''
   
   


=== WHILE ===
=== WHILE ===


Repeats a block of lines until the condition is false; the condition is tested first  
Repeats a block of lines until the condition is false; the condition is tested first


  '''[[WHILE|WHILE ($F)]]'''
  '''[[WHILE|WHILE ($F)]]'''
Line 211: Line 211:
  $F = WHILE
  $F = WHILE


== Display ==
== Display ==


=== Animate ===
=== Animate ===


Animate a model object to a new screen position  
Animate a model object to a new screen position


  '''[[Animate|Animate($1,$2,$3)]]'''
  '''[[Animate|Animate($1,$2,$3)]]'''
   
   
  $1 = Object
  $1 = Object
  $2 = X Pos
  $2 = X Pos  
  $3 = Y Pos
  $3 = Y Pos  


=== ChooseColor ===
=== ChooseColor ===


Shows the color palette selector dialog  
Shows the color palette selector dialog


  '''[[ChooseColor|$R = ChooseColor($1)]]'''
  '''[[ChooseColor|$R = ChooseColor($1)]]'''
Line 232: Line 232:
  $1 = Selection Color
  $1 = Selection Color


=== ColorPaletteEntry ===
=== ColorPaletteEntry ===


Returns the RGB color for a given color index in the Planimate color palette  
Returns the RGB color for a given color index in the Planimate color palette


  '''[[ColorPaletteEntry|$R = ColorPaletteEntry($1)]]'''
  '''[[ColorPaletteEntry|$R = ColorPaletteEntry($1)]]'''
   
   
  $R = Result
  $R = Result      
  $1 = Palette Index
  $1 = Palette Index


=== FitPanelToArea ===
=== FitPanelToArea ===


Fits the panel to the area of its contents with a margin  
Fits the panel to the area of its contents with a margin


  '''[[FitPanelToArea|FitPanelToArea($1,$2)]]'''
  '''[[FitPanelToArea|FitPanelToArea($1,$2)]]'''
Line 250: Line 250:
  $2 = Margin
  $2 = Margin


=== ForceRepaint ===
=== ForceRepaint ===


Repaints all windows; use with care, it can cause slowdown  
Repaints all windows; use with care, it can cause slowdown


  '''[[ForceRepaint|ForceRepaint]]'''
  '''[[ForceRepaint|ForceRepaint]]'''
   
   


=== ForceRepaintPanel ===
=== ForceRepaintPanel ===


Repaints the specified panel  
Repaints the specified panel


  '''[[ForceRepaintPanel|ForceRepaintPanel($1)]]'''
  '''[[ForceRepaintPanel|ForceRepaintPanel($1)]]'''
Line 265: Line 265:
  $1 = Panel
  $1 = Panel


=== GetSystemColorRGB ===
=== GetSystemColorRGB ===


Returns the RGB color for a given color in the Windows system color palette  
Returns the RGB color for a given color in the Windows system color palette


  '''[[GetSystemColorRGB|$R = GetSystemColorRGB($1)]]'''
  '''[[GetSystemColorRGB|$R = GetSystemColorRGB($1)]]'''
Line 274: Line 274:
  $1 = Value
  $1 = Value


=== GraphXOffset ===
=== GetViewportScrollX ===
 
Get the x scroll of a viewport on a given panel
 
  '''[[GetViewportScrollX|$R = GetViewportScrollX($1,$2)]]'''
$R = Result
$1 = Panel With Viewport 
$2 = Panel Inside Viewport
 
=== GetViewportScrollY ===


Read the offset of a graph view for a table on the given panel  
Get the y scroll of a viewport on a given panel
 
'''[[GetViewportScrollY|$R = GetViewportScrollY($1,$2)]]'''
$R = Result
$1 = Panel With Viewport 
$2 = Panel Inside Viewport
 
=== GetViewportZoom ===
 
Get the zoom factor of a viewport on a given panel
 
'''[[GetViewportZoom|$R = GetViewportZoom($1,$2)]]'''
$R = Result
$1 = Panel With Viewport 
$2 = Panel Inside Viewport
 
=== GraphXOffset ===
 
Read the offset of a graph view for a table on the given panel


  '''[[GraphXOffset|$R = GraphXOffset($1,$2)]]'''
  '''[[GraphXOffset|$R = GraphXOffset($1,$2)]]'''
Line 284: Line 314:
  $2 = Panel
  $2 = Panel


=== GraphXWidth ===
=== GraphXWidth ===


Read the width of a graph view for a table on the given panel  
Read the width of a graph view for a table on the given panel


  '''[[GraphXWidth|$R = GraphXWidth($1,$2)]]'''
  '''[[GraphXWidth|$R = GraphXWidth($1,$2)]]'''
Line 294: Line 324:
  $2 = Panel
  $2 = Panel


=== HidePanel ===
=== HidePanel ===


Hides any popup for the given panel  
Hides any popup for the given panel


  '''[[HidePanel|HidePanel($1)]]'''
  '''[[HidePanel|HidePanel($1)]]'''
Line 302: Line 332:
  $1 = Target Panel
  $1 = Target Panel


=== HideTableEditor ===
=== HideTableEditor ===


Close any open table editor for the given table  
Close any open table editor for the given table


  '''[[HideTableEditor|HideTableEditor($1)]]'''
  '''[[HideTableEditor|HideTableEditor($1)]]'''
Line 310: Line 340:
  $1 = Table
  $1 = Table


=== MakeVisible ===
=== MakeVisible ===


Makes the specified panel the active panel on the main window  
Makes the specified panel the active panel on the main window


  '''[[MakeVisible|MakeVisible($1)]]'''
  '''[[MakeVisible|MakeVisible($1)]]'''
Line 318: Line 348:
  $1 = Target Subsystem
  $1 = Target Subsystem


=== PanelWindowLeft ===
=== PanelWindowLeft ===


Returns the left window co-ordinate of a popup panel  
Returns the left window co-ordinate of a popup panel


  '''[[PanelWindowLeft|$R = PanelWindowLeft($1)]]'''
  '''[[PanelWindowLeft|$R = PanelWindowLeft($1)]]'''
   
   
  $R = Result
  $R = Result
  $1 = Panel
  $1 = Panel  


=== PanelWindowTop ===
=== PanelWindowTop ===


Returns the top window co-ordinate of a popup panel  
Returns the top window co-ordinate of a popup panel


  '''[[PanelWindowTop|$R = PanelWindowTop($1)]]'''
  '''[[PanelWindowTop|$R = PanelWindowTop($1)]]'''
   
   
  $R = Result
  $R = Result
  $1 = Panel
  $1 = Panel  


=== PrintPanel ===
=== PrintPanel ===


Queues the nominated panel for printing; additional panels can be printed by intercepting the _Panel Printed broadcast  
Queues the nominated panel for printing; additional panels can be printed by intercepting the _Panel Printed broadcast


  '''[[PrintPanel|PrintPanel($1)]]'''
  '''[[PrintPanel|PrintPanel($1)]]'''
Line 344: Line 374:
  $1 = Target Subsystem
  $1 = Target Subsystem


=== RepaintObjects ===
=== RepaintObjects ===


Forces a repaint of dynamic objects only; faster than a full force repaint  
Forces a repaint of dynamic objects only; faster than a full force repaint


  '''[[RepaintObjects|RepaintObjects]]'''
  '''[[RepaintObjects|RepaintObjects]]'''
   
   


=== SetActivityString ===
=== SetActivityString ===


Sets text in the status bar activity area  
Sets text in the status bar activity area


  '''[[SetActivityString|SetActivityString($1)]]'''
  '''[[SetActivityString|SetActivityString($1)]]'''
Line 359: Line 389:
  $1 = Activity Text
  $1 = Activity Text


=== SetColorPaletteEntry ===
=== SetColorPaletteEntry ===


Sets the RGB color for a given color in the Planimate color palette  
Sets the RGB color for a given color in the Planimate color palette


  '''[[SetColorPaletteEntry|SetColorPaletteEntry($1,$2)]]'''
  '''[[SetColorPaletteEntry|SetColorPaletteEntry($1,$2)]]'''
   
   
  $1 = Palette Index
  $1 = Palette Index
  $2 = RGB Value
  $2 = RGB Value  


=== SetGraphXOffset ===
=== SetGraphXOffset ===


Set the offset of a graph view for a table on the given panel  
Set the offset of a graph view for a table on the given panel


  '''[[SetGraphXOffset|SetGraphXOffset($1,$2,$3)]]'''
  '''[[SetGraphXOffset|SetGraphXOffset($1,$2,$3)]]'''
Line 378: Line 408:
  $3 = Value
  $3 = Value


=== SetGraphXWidth ===
=== SetGraphXWidth ===


Set the width of a graph view for a table on the given panel  
Set the width of a graph view for a table on the given panel


  '''[[SetGraphXWidth|SetGraphXWidth($1,$2,$3)]]'''
  '''[[SetGraphXWidth|SetGraphXWidth($1,$2,$3)]]'''
Line 388: Line 418:
  $3 = Value
  $3 = Value


=== SetPanelColor ===
=== SetPanelColor ===


Sets the background color of a panel  
Sets the background color of a panel


  '''[[SetPanelColor|SetPanelColor($1,$2)]]'''
  '''[[SetPanelColor|SetPanelColor($1,$2)]]'''
   
   
  $1 = Panel
  $1 = Panel  
  $2 = Color
  $2 = Color


=== SetPanelTransparency ===
=== SetPanelTransparency ===


Enables the use of transparency for a panel, value 0..254 or 255 to disable transparency  
Enables the use of transparency for a panel, value 0..254 or 255 to disable transparency


  '''[[SetPanelTransparency|SetPanelTransparency($1,$2)]]'''
  '''[[SetPanelTransparency|SetPanelTransparency($1,$2)]]'''
   
   
  $1 = Panel
  $1 = Panel  
  $2 = Transparency
  $2 = Transparency


=== SetStatusItemAreaString ===
=== SetStatusItemAreaString ===


Sets the text in the status bar area where item class names are displayed during editing  
Sets the text in the status bar area where item class names are displayed during editing


  '''[[SetStatusItemAreaString|SetStatusItemAreaString($1)]]'''
  '''[[SetStatusItemAreaString|SetStatusItemAreaString($1)]]'''
Line 414: Line 444:
  $1 = Item Area Text
  $1 = Item Area Text


=== SetViewportScroll ===
=== SetViewportScroll ===


Set the x and y scroll of a viewport on a given panel  
Set the x and y scroll of a viewport on a given panel


  '''[[SetViewportScroll|SetViewportScroll($R,$1,$2,$3)]]'''
  '''[[SetViewportScroll|SetViewportScroll($R,$1,$2,$3)]]'''
   
   
  $R = Panel With Viewport
  $R = Panel With Viewport
  $1 = Panel Inside Viewport
  $1 = Panel Inside Viewport
  $2 = X Offset
  $2 = X Offset
  $3 = Y Offset
  $3 = Y Offset


=== SetViewportTarget ===
=== SetViewportTarget ===


Set the target of a viewport. Current Panel identifies the viewport and can be zero of the containing panel only has 1 viewport. New Panel sets the new panel to display, 0 makes the viewport hidden in user mode.  
Set the target of a viewport. Current Panel identifies the viewport and can be zero of the containing panel only has 1 viewport. New Panel sets the new panel to display, 0 makes the viewport hidden in user mode.


  '''[[SetViewportTarget|SetViewportTarget($1,$2,$3)]]'''
  '''[[SetViewportTarget|SetViewportTarget($1,$2,$3)]]'''
   
   
  $1 = Panel With Viewport
  $1 = Panel With Viewport
  $2 = Current Panel Inside Viewport
  $2 = Current Panel Inside Viewport
  $3 = New Panel Inside Viewport
  $3 = New Panel Inside Viewport


=== SetViewportZoom ===
=== SetViewportZoom ===


Set the zoom factor of a viewport on a given panel  
Set the zoom factor of a viewport on a given panel


  '''[[SetViewportZoom|SetViewportZoom($R,$1,$2)]]'''
  '''[[SetViewportZoom|SetViewportZoom($R,$1,$2)]]'''
   
   
  $R = Panel With Viewport
  $R = Panel With Viewport
  $1 = Panel Inside Viewport
  $1 = Panel Inside Viewport
  $2 = Zoom Value
  $2 = Zoom Value


=== ShowPopupPanel ===
=== ShowPopupPanel ===


Opens the given panel in a separate window at the specified window co-ordinates  
Opens the given panel in a separate window at the specified window co-ordinates


  '''[[ShowPopupPanel|ShowPopupPanel($1,$2,$3)]]'''
  '''[[ShowPopupPanel|ShowPopupPanel($1,$2,$3)]]'''
Line 455: Line 485:
  $3 = Y Position
  $3 = Y Position


=== ShowTableEditor ===
=== ShowTableEditor ===


Open table editor for the given table  
Open table editor for the given table


  '''[[ShowTableEditor|ShowTableEditor($1)]]'''
  '''[[ShowTableEditor|ShowTableEditor($1)]]'''
Line 463: Line 493:
  $1 = Table
  $1 = Table


=== SwapPopupPanel ===
=== SwapPopupPanel ===


Swaps which panels are visible in a popup panel without closing/reopening it  
Swaps which panels are visible in a popup panel without closing/reopening it


  '''[[SwapPopupPanel|SwapPopupPanel($1,$2)]]'''
  '''[[SwapPopupPanel|SwapPopupPanel($1,$2)]]'''
   
   
  $1 = Target Panel
  $1 = Target Panel  
  $2 = Replace With
  $2 = Replace With  


== Label ==
== Label ==


=== AddLabelDialog ===
=== AddLabelDialog ===


Show a dialog so the user can add a label to the given label list  
Show a dialog so the user can add a label to the given label list


  '''[[AddLabelDialog|AddLabelDialog($R)]]'''
  '''[[AddLabelDialog|AddLabelDialog($R)]]'''
Line 482: Line 512:
  $R = Result
  $R = Result


=== AddSubLabel ===
=== AddSubLabel ===


Makes the new sublabel for the parent label $1 (if it doesn't exist) and returns its index as a sublabel  
Makes the new sublabel for the parent label $1 (if it doesn't exist) and returns its index as a sublabel


  '''[[AddSubLabel|AddSubLabel($R,$1)]]'''
  '''[[AddSubLabel|AddSubLabel($R,$1)]]'''
Line 491: Line 521:
  $1 = Label
  $1 = Label


=== ClearLabelList ===
=== ClearLabelList ===


Removes all labels from a label list  
Removes all labels from a label list


  '''[[ClearLabelList|ClearLabelList($1)]]'''
  '''[[ClearLabelList|ClearLabelList($1)]]'''
Line 499: Line 529:
  $1 = Clear Label List
  $1 = Clear Label List


=== CreateLabelList ===
=== CreateLabelList ===


Creates a label list with the given name and formats the result attribute to reference it  
Creates a label list with the given name and formats the result attribute to reference it


  '''[[CreateLabelList|CreateLabelList($R,$1)]]'''
  '''[[CreateLabelList|CreateLabelList($R,$1)]]'''
Line 508: Line 538:
  $1 = List Name
  $1 = List Name


=== CreateLabelListFromCol ===
=== CreateLabelListFromCol ===


Uses the provided column to provide text for creating a new label list  
Uses the provided column to provide text for creating a new label list


  '''[[CreateLabelListFromCol|CreateLabelListFromColumn($R,$1)]]'''
  '''[[CreateLabelListFromCol|CreateLabelListFromColumn($R,$1)]]'''
   
   
  $R = Target List
  $R = Target List
  $1 = Source Column
  $1 = Source Column


=== CreatePanelPortalLabel ===
=== CreatePanelPortalLabel ===


Creates a panel label for the subsystem of the given portal object label  
Creates a panel label for the subsystem of the given portal object label


  '''[[CreatePanelPortalLabel|$R = CreatePanelPortalLabel($1)]]'''
  '''[[CreatePanelPortalLabel|$R = CreatePanelPortalLabel($1)]]'''
   
   
  $R = New Panel Label
  $R = New Panel Label  
  $1 = Portal Object Label
  $1 = Portal Object Label


=== CreateSubLabelList ===
=== CreateSubLabelList ===


Creates an empty sub label list of an existing label list and formats an attribute to reference it  
Creates an empty sub label list of an existing label list and formats an attribute to reference it


  '''[[CreateSubLabelList|CreateSubLabelList($R,$1,$2)]]'''
  '''[[CreateSubLabelList|CreateSubLabelList($R,$1,$2)]]'''
Line 536: Line 566:
  $2 = Parent List
  $2 = Parent List


=== CreateSubsystemObjectLabel ===
=== CreateSubsystemObjectLabel ===
 
  '''[[CreateSubsystemObjectLabel|$R = CreateSubsystemObjectLabel()]]'''
  '''[[CreateSubsystemObjectLabel|$R = CreateSubsystemObjectLabel()]]'''
   
   
  $R = New Object Label
  $R = New Object Label


=== DeleteLabel ===
=== DeleteLabel ===


Deletes the given label from its labellist  
Deletes the given label from its labellist


  '''[[DeleteLabel|DeleteLabel($1)]]'''
  '''[[DeleteLabel|DeleteLabel($1)]]'''
Line 550: Line 579:
  $1 = Label
  $1 = Label


=== LabelCount ===
=== LabelCount ===


Returns how many labels in the given label list  
Returns how many labels in the given label list


  '''[[LabelCount|$R = LabelCount($1)]]'''
  '''[[LabelCount|$R = LabelCount($1)]]'''
Line 559: Line 588:
  $1 = Label Count
  $1 = Label Count


=== MaxLabelIndex ===
=== MaxLabelIndex ===


Returns the highest allocated label index in the given label list  
Returns the highest allocated label index in the given label list


  '''[[MaxLabelIndex|$R = MaxLabelIndex()]]'''
  '''[[MaxLabelIndex|$R = MaxLabelIndex()]]'''
Line 567: Line 596:
  $R = Result
  $R = Result


=== MinLabelIndex ===
=== MinLabelIndex ===


Returns the lowest allocated label index in the given label list  
Returns the lowest allocated label index in the given label list


  '''[[MinLabelIndex|$R = MinLabelIndex()]]'''
  '''[[MinLabelIndex|$R = MinLabelIndex()]]'''
Line 575: Line 604:
  $R = Result
  $R = Result


=== NextLabelIndex ===
=== NextLabelIndex ===


The next allocated label index for the list or -1 if none  
The next allocated label index for the list or -1 if none


  '''[[NextLabelIndex|$R = NextLabelIndex($1)]]'''
  '''[[NextLabelIndex|$R = NextLabelIndex($1)]]'''
Line 584: Line 613:
  $1 = Label Index
  $1 = Label Index


=== PrevLabelIndex ===
=== PrevLabelIndex ===


The previous allocated label index for the list or -1 if none  
The previous allocated label index for the list or -1 if none


  '''[[PrevLabelIndex|$R = PrevLabelIndex($1)]]'''
  '''[[PrevLabelIndex|$R = PrevLabelIndex($1)]]'''
Line 593: Line 622:
  $1 = Label Index
  $1 = Label Index


=== ReIndexLabelList ===
=== ReIndexLabelList ===


Re-indexes all members in a label list so they have ascending and continuous index values  
Re-indexes all members in a label list so they have ascending and continuous index values


  '''[[ReIndexLabelList|ReIndexLabelList($1)]]'''
  '''[[ReIndexLabelList|ReIndexLabelList($1)]]'''
Line 601: Line 630:
  $1 = Re-index Label List
  $1 = Re-index Label List


=== ReIndexLabels ===
=== ReIndexLabels ===


Remaps labels in the given list using 2 columns of matching from and to values  
Remaps labels in the given list using 2 columns of matching from and to values


  '''[[ReIndexLabels|ReIndexLabels($1,$2,$3)]]'''
  '''[[ReIndexLabels|ReIndexLabels($1,$2,$3)]]'''
   
   
  $1 = Re-index List
  $1 = Re-index List  
  $2 = From Values (Col)
  $2 = From Values (Col)
  $3 = To Values (Col)
  $3 = To Values (Col)


=== RemoveSubLabel ===
=== RemoveSubLabel ===


Removes the sublabel as a member of the sublabel list  
Removes the sublabel as a member of the sublabel list


  '''[[RemoveSubLabel|RemoveSubLabel($1)]]'''
  '''[[RemoveSubLabel|RemoveSubLabel($1)]]'''
Line 619: Line 648:
  $1 = Label
  $1 = Label


=== TestLabelIndex ===
=== TestLabelIndex ===


Tests whether an index has been used in a label list  
Tests whether an index has been used in a label list


  '''[[TestLabelIndex|$R = TestLabelIndex($1,$2)]]'''
  '''[[TestLabelIndex|$R = TestLabelIndex($1,$2)]]'''
Line 629: Line 658:
  $2 = Label List
  $2 = Label List


== Label String ==
== Label String ==


=== AppendToLabel ===
=== AppendToLabel ===


Append text to an existing label  
Append text to an existing label


  '''[[AppendToLabel|AppendToLabel($R,$1)]]'''
  '''[[AppendToLabel|AppendToLabel($R,$1)]]'''
Line 640: Line 669:
  $1 = Source
  $1 = Source


=== CreatePasswordHash ===
=== CreatePasswordHash ===


Uses the 3 text sources to create an unpredictable hash string  
Uses the 3 text sources to create an unpredictable hash string


  '''[[CreatePasswordHash|$R = CreatePasswordHash($1,$2,$3)]]'''
  '''[[CreatePasswordHash|$R = CreatePasswordHash($1,$2,$3)]]'''
Line 651: Line 680:
  $3 = Text-3
  $3 = Text-3


=== CropToCharacters ===
=== CropToCharacters ===


Crop a label to a subset of its text  
Crop a label to a subset of its text


  '''[[CropToCharacters|CropToCharacters($R,$1,$2)]]'''
  '''[[CropToCharacters|CropToCharacters($R,$1,$2)]]'''
Line 661: Line 690:
  $2 = To Char
  $2 = To Char


=== ExtractFileExtention ===
=== ExtractFileExtention ===


Create a label in the target label list which is the file extention of the path/file text  
Create a label in the target label list which is the file extention of the path/file text


  '''[[ExtractFileExtention|ExtractFileExtention($R,$1)]]'''
  '''[[ExtractFileExtention|ExtractFileExtention($R,$1)]]'''
   
   
  $R = Result
  $R = Result  
  $1 = Path/File
  $1 = Path/File


=== ExtractFileName ===
=== ExtractFileName ===


Create a label in the target label list which is the file name from a full path/file text  
Create a label in the target label list which is the file name from a full path/file text


  '''[[ExtractFileName|ExtractFileName($R,$1)]]'''
  '''[[ExtractFileName|ExtractFileName($R,$1)]]'''
   
   
  $R = Result
  $R = Result  
  $1 = Path/File
  $1 = Path/File


=== ExtractIntoFormat ===
=== ExtractIntoFormat ===


Extracts a substring from a formatted value/label and interprets it in the format of the target. If the target is a label list, it gets added as a label if its not already in that list.  
Extracts a substring from a formatted value/label and interprets it in the format of the target. If the target is a label list, it gets added as a label if its not already in that list.


  '''[[ExtractIntoFormat|$R = ExtractIntoFormat($1,$2,$3)]]'''
  '''[[ExtractIntoFormat|$R = ExtractIntoFormat($1,$2,$3)]]'''
Line 690: Line 719:
  $3 = To Char
  $3 = To Char


=== ExtractPathName ===
=== ExtractPathName ===


Create a label in the target label list which is the file name from a full path/file text  
Create a label in the target label list which is the file name from a full path/file text


  '''[[ExtractPathName|ExtractPathName($R,$1)]]'''
  '''[[ExtractPathName|ExtractPathName($R,$1)]]'''
   
   
  $R = Result
  $R = Result  
  $1 = Path/File
  $1 = Path/File


=== FilesInFolder ===
=== FilesInFolder ===


Returns how many files matching a wildcard in the given folder  
Returns how many files matching a wildcard in the given folder


  '''[[FilesInFolder|$R = FilesInFolder($1)]]'''
  '''[[FilesInFolder|$R = FilesInFolder($1)]]'''
   
   
  $R = Target List
  $R = Target List
  $1 = Path/File
  $1 = Path/File


=== FilesInHierarchy ===
=== FilesInHierarchy ===


Retrieve how many files in a file folder (including subfolders)  
Retrieve how many files in a file folder (including subfolders)


  '''[[FilesInHierarchy|$R = FilesInHierarchy($1)]]'''
  '''[[FilesInHierarchy|$R = FilesInHierarchy($1)]]'''
   
   
  $R = Target List
  $R = Target List
  $1 = Path/File
  $1 = Path/File


=== FormatIntoLabel ===
=== FormatIntoLabel ===


Create a new label with the formatted text of the source  
Create a new label with the formatted text of the source


  '''[[FormatIntoLabel|FormatIntoLabel($R,$1)]]'''
  '''[[FormatIntoLabel|FormatIntoLabel($R,$1)]]'''
Line 726: Line 755:
  $1 = Source
  $1 = Source


=== FormatIntoLabelIndex ===
=== FormatIntoLabelIndex ===


Creates a label from the text of source and using the provided index  
Creates a label from the text of source and using the provided index


  '''[[FormatIntoLabelIndex|$R = FormatIntoLabelIndex($1,$2)]]'''
  '''[[FormatIntoLabelIndex|$R = FormatIntoLabelIndex($1,$2)]]'''
Line 736: Line 765:
  $2 = Index
  $2 = Index


=== FormatNameIntoLabel ===
=== FormatNameIntoLabel ===


Creates a label from the name of the given object  
Creates a label from the name of the given object


  '''[[FormatNameIntoLabel|$R = FormatNameIntoLabel($1)]]'''
  '''[[FormatNameIntoLabel|$R = FormatNameIntoLabel($1)]]'''
Line 745: Line 774:
  $1 = Source
  $1 = Source


=== FormattedLabelIndex ===
=== FormattedLabelIndex ===


Determines if the source text is a label and returns its index if it is  
Determines if the source text is a label and returns its index if it is


  '''[[FormattedLabelIndex|$R = FormattedLabelIndex($1)]]'''
  '''[[FormattedLabelIndex|$R = FormattedLabelIndex($1)]]'''
Line 754: Line 783:
  $1 = Source
  $1 = Source


=== FormattedWidth ===
=== FormattedWidth ===


Returns how many characters the referenced data has when it is formatted for display  
Returns how many characters the referenced data has when it is formatted for display


  '''[[FormattedWidth|$R = FormattedWidth($1)]]'''
  '''[[FormattedWidth|$R = FormattedWidth($1)]]'''
Line 763: Line 792:
  $1 = Width Of
  $1 = Width Of


=== FormatTitleIntoLabel ===
=== FormatTitleIntoLabel ===


Creates a label from the title text of the given object  
Creates a label from the title text of the given object


  '''[[FormatTitleIntoLabel|$R = FormatTitleIntoLabel($1)]]'''
  '''[[FormatTitleIntoLabel|$R = FormatTitleIntoLabel($1)]]'''
Line 772: Line 801:
  $1 = Source
  $1 = Source


=== GetAppDataName ===
=== GetAppDataName ===


Get a full documents and settings/Application Data path/file including a subfolder and a filename. Sets s.LastAccessedDataFilePath and returns non zero if the folder was created/verified writeable.  
Get a full documents and settings/Application Data path/file including a subfolder and a filename. Sets s.LastAccessedDataFilePath and returns non zero if the folder was created/verified writeable.


  '''[[GetAppDataName|$R = GetAppDataName($1,$2)]]'''
  '''[[GetAppDataName|$R = GetAppDataName($1,$2)]]'''
Line 782: Line 811:
  $2 = Filename
  $2 = Filename


=== GetCharacter ===
=== GetCharacter ===


Extracts a character from the formatted value provided and returns the ascii code  
Extracts a character from the formatted value provided and returns the ascii code


  '''[[GetCharacter|$R = GetCharacter($1,$2)]]'''
  '''[[GetCharacter|$R = GetCharacter($1,$2)]]'''
   
   
  $R = Target
  $R = Target  
  $1 = String
  $1 = String  
  $2 = Character
  $2 = Character


=== GetMyDocumentsName ===
=== GetMyDocumentsName ===


Get a full My Documents path/file including a subfolder and a filename. Sets s.LastAccessedDataFilePath and returns non zero if the folder was created/verified writeable.  
Get a full My Documents path/file including a subfolder and a filename. Sets s.LastAccessedDataFilePath and returns non zero if the folder was created/verified writeable.


  '''[[GetMyDocumentsName|$R = GetMyDocumentsName($1,$2)]]'''
  '''[[GetMyDocumentsName|$R = GetMyDocumentsName($1,$2)]]'''
Line 802: Line 831:
  $2 = Filename
  $2 = Filename


=== GetProgramName ===
=== GetProgramName ===


Get the folder containing the running Planimate EXE and append a filename. Sets s.LastAccessedDataFilePath.  
Get the folder containing the running Planimate EXE and append a filename. Sets s.LastAccessedDataFilePath.


  '''[[GetProgramName|GetProgramName($1)]]'''
  '''[[GetProgramName|GetProgramName($1)]]'''
Line 810: Line 839:
  $1 = Filename
  $1 = Filename


=== RemoveFileExtention ===
=== RemoveFileExtention ===


Crop label to remove trailing dot and text  
Crop label to remove trailing dot and text


  '''[[RemoveFileExtention|RemoveFileExtention($R)]]'''
  '''[[RemoveFileExtention|RemoveFileExtention($R)]]'''
Line 818: Line 847:
  $R = Result
  $R = Result


=== RenameLabel ===
=== RenameLabel ===


Change the text of a label  
Change the text of a label


  '''[[RenameLabel|RenameLabel($R,$1)]]'''
  '''[[RenameLabel|RenameLabel($R,$1)]]'''
Line 827: Line 856:
  $1 = Source
  $1 = Source


=== SetFreeTextTitle ===
=== SetFreeTextTitle ===


Sets title of free text editor dialog  
Sets title of free text editor dialog


  '''[[SetFreeTextTitle|SetFreeTextTitle($1)]]'''
  '''[[SetFreeTextTitle|SetFreeTextTitle($1)]]'''
Line 835: Line 864:
  $1 = Title Text
  $1 = Title Text


== Logical ==
== Logical ==


=== BitAND ===
=== BitAND ===


Treat values as integers and bitwise AND them (limited to 14 bits of precision)  
Treat values as integers and bitwise AND them (limited to 14 bits of precision)


  '''[[BitAND|$R = BitAND($1,$2)]]'''
  '''[[BitAND|$R = BitAND($1,$2)]]'''
Line 847: Line 876:
  $2 = Value 2
  $2 = Value 2


=== BitOR ===
=== BitOR ===


Treat values as integers and bitwise OR them (limited to 14 bits of precision)  
Treat values as integers and bitwise OR them (limited to 14 bits of precision)


  '''[[BitOR|$R = BitOR($1,$2)]]'''
  '''[[BitOR|$R = BitOR($1,$2)]]'''
Line 857: Line 886:
  $2 = Value 2
  $2 = Value 2


=== BitXOR ===
=== BitXOR ===


Treat values as integers and bitwise XORs them (limited to 14 bits of precision)  
Treat values as integers and bitwise XORs them (limited to 14 bits of precision)


  '''[[BitXOR|$R = BitXOR($1,$2)]]'''
  '''[[BitXOR|$R = BitXOR($1,$2)]]'''
Line 867: Line 896:
  $2 = Value 2
  $2 = Value 2


=== Condition ===
=== Condition ===


Evaluate a condition specified in a dialog  
Evaluate a condition specified in a dialog


  '''[[Condition|$R = Condition($F)]]'''
  '''[[Condition|$R = Condition($F)]]'''
Line 876: Line 905:
  $F = Set using
  $F = Set using


=== EQ ( == ) ===
=== EQ ( == ) ===


Determines if 2 values are numerically close to each other  
Determines if 2 values are numerically close to each other


  '''[[EQ|$R = $1 == $2]]'''
  '''[[EQ|$R = $1 == $2]]'''
Line 886: Line 915:
  $2 = Value 2
  $2 = Value 2


=== GE ( >= ) ===
=== GE ( >= ) ===


Determines if the first value is greater than or equal to the second  
Determines if the first value is greater than or equal to the second


  '''[[GE|$R = $1 >= $2]]'''
  '''[[GE|$R = $1 >= $2]]'''
   
   
  $R = Result
  $R = Result
Line 896: Line 925:
  $2 = Value 2
  $2 = Value 2


=== GT ( > ) ===
=== GT ( > ) ===


Determines if the first value is significantly greater than the second value  
Determines if the first value is significantly greater than the second value


  '''[[GT|$R = $1 > $2]]'''
  '''[[GT|$R = $1 > $2]]'''
   
   
  $R = Result
  $R = Result
Line 906: Line 935:
  $2 = Value 2
  $2 = Value 2


=== LE ( <= ) ===
=== LE ( <= ) ===


Determines if the first value is less than or equal to the second  
Determines if the first value is less than or equal to the second


  '''[[LE|$R = $1 &lt;= $2]]'''
  '''[[LE|$R = $1 <= $2]]'''
   
   
  $R = Result
  $R = Result
Line 916: Line 945:
  $2 = Value 2
  $2 = Value 2


=== LT ( &lt; ) ===
=== LT ( < ) ===


Determines if the first value is significantly less than the second value  
Determines if the first value is significantly less than the second value


  '''[[LT|$R = $1 &lt; $2]]'''
  '''[[LT|$R = $1 < $2]]'''
   
   
  $R = Result
  $R = Result
Line 926: Line 955:
  $2 = Value 2
  $2 = Value 2


=== NEQ (&nbsp;!= ) ===
=== NEQ ( != ) ===


Determines if 2 values are not numerically close to each otherclose to each other  
Determines if 2 values are not numerically close to each otherclose to each other


  '''[[NEQ|$R = $1 != $2]]'''
  '''[[NEQ|$R = $1 != $2]]'''
Line 936: Line 965:
  $2 = Value 2
  $2 = Value 2


== Message ==
== Message ==


=== Broadcast ===
=== Broadcast ===


Sends a broadcast to the entire model, optionally including the item's attributes  
Sends a broadcast to the entire model, optionally including the item's attributes


  '''[[Broadcast|Broadcast($1,$2)]]'''
  '''[[Broadcast|Broadcast($1,$2)]]'''
Line 947: Line 976:
  $2 =  With Item Info
  $2 =  With Item Info


=== BroadcastScoped ===
=== BroadcastScoped ===


Sends a broadcast to a specified dynamic panel and all under it, optionally including the item's attributes  
Sends a broadcast to a specified dynamic panel and all under it, optionally including the item's attributes


  '''[[BroadcastScoped|BroadcastScoped($1,$2,$3)]]'''
  '''[[BroadcastScoped|BroadcastScoped($1,$2,$3)]]'''
Line 957: Line 986:
  $3 = Send To Subsystem
  $3 = Send To Subsystem


=== BroadcastToPanel ===
=== BroadcastToPanel ===


Sends a broadcast to a specified dynamic panel, optionally including the item's attributes  
Sends a broadcast to a specified dynamic panel, optionally including the item's attributes


  '''[[BroadcastToPanel|BroadcastToPanel($1,$2,$3)]]'''
  '''[[BroadcastToPanel|BroadcastToPanel($1,$2,$3)]]'''
Line 967: Line 996:
  $3 = Send To Subsystem
  $3 = Send To Subsystem


=== ImmediateMessage ===
=== ImmediateMessage ===


Send a message whilst the item waits at the change object  
Send a message whilst the item waits at the change object


  '''[[ImmediateMessage|ImmediateMessage($1)]]'''
  '''[[ImmediateMessage|ImmediateMessage($1)]]'''
   
   
  $1 = Message Target
  $1 = Message Target  


=== ImmediateMessageNamed ===
=== ImmediateMessageNamed ===


Send a message to a specified portal with a specific name whilst the item waits at the change object  
Send a message to a specified portal with a specific name whilst the item waits at the change object


  '''[[ImmediateMessageNamed|ImmediateMessageNamed($1,$2)]]'''
  '''[[ImmediateMessageNamed|ImmediateMessageNamed($1,$2)]]'''
   
   
  $1 = Message Target
  $1 = Message Target  
  $2 = Message Name
  $2 = Message Name  


=== ReleaseWaitingItem ===
=== ReleaseWaitingItem ===


Used to signal a waiting dispatcher on the target panel that a given item should be released  
Used to signal a waiting dispatcher on the target panel that a given item should be released


  '''[[ReleaseWaitingItem|$R = ReleaseWaitingItem($1,$2)]]'''
  '''[[ReleaseWaitingItem|$R = ReleaseWaitingItem($1,$2)]]'''
Line 994: Line 1,023:
  $2 = Scope Panel
  $2 = Scope Panel


=== ReverseItemDirection ===
=== ReverseItemDirection ===


Searches spatial links for the item and if found, reverses the direction of the item  
Searches spatial links for the item and if found, reverses the direction of the item


  '''[[ReverseItemDirection|$R = ReverseItemDirection($1,$2)]]'''
  '''[[ReverseItemDirection|$R = ReverseItemDirection($1,$2)]]'''
Line 1,004: Line 1,033:
  $2 = Scope Panel
  $2 = Scope Panel


== Numeric ==
== Numeric ==


=== abs ===
=== abs ===


Magnitude of a value, without the sign  
Magnitude of a value, without the sign


  '''[[Abs|$R = abs($1)]]'''
  '''[[abs|$R = abs($1)]]'''
   
   
  $R = Result
  $R = Result
  $1 = Value 1
  $1 = Value 1


=== max ===
=== max ===


Determines the greater of 2 values  
Determines the greater of 2 values


  '''[[Max|$R = max($1,$2)]]'''
  '''[[max|$R = max($1,$2)]]'''
   
   
  $R = Result
  $R = Result
Line 1,025: Line 1,054:
  $2 = Value 2
  $2 = Value 2


=== min ===
=== min ===


Determines the lesser of 2 values  
Determines the lesser of 2 values


  '''[[Min|$R = min($1,$2)]]'''
  '''[[min|$R = min($1,$2)]]'''
   
   
  $R = Result
  $R = Result
Line 1,035: Line 1,064:
  $2 = Value 2
  $2 = Value 2


=== mod ===
=== mod ===


Modulus of $1 over base $2  
Modulus of $1 over base $2


  '''[[Mod|$R = mod($1,$2)]]'''
  '''[[mod|$R = mod($1,$2)]]'''
   
   
  $R = Result
  $R = Result
Line 1,045: Line 1,074:
  $2 = Value 2
  $2 = Value 2


=== random ===
=== random ===


Random value between 0 and 1  
Random value between 0 and 1


  '''[[Random|$R = random($F)]]'''
  '''[[random|$R = random($F)]]'''
   
   
  $R = Result
  $R = Result
  $F = Set to
  $F = Set to


=== round ===
=== round ===


Integer closest to the value  
Integer closest to the value


  '''[[Round|$R = round($1)]]'''
  '''[[round|$R = round($1)]]'''
   
   
  $R = Result
  $R = Result
  $1 = Round Value
  $1 = Round Value


=== RoundToN ===
=== RoundToN ===


Round value to the specified number of digits of precision  
Round value to the specified number of digits of precision


  '''[[RoundToN|$R = RoundToN($1,$2)]]'''
  '''[[RoundToN|$R = RoundToN($1,$2)]]'''
Line 1,073: Line 1,102:
  $2 = Sig. Digits
  $2 = Sig. Digits


=== trunc ===
=== trunc ===


Integer equal or lower than the value  
Integer equal or lower than the value


  '''[[Trunc|$R = trunc($1)]]'''
  '''[[trunc|$R = trunc($1)]]'''
   
   
  $R = Result
  $R = Result
  $1 = Truncate
  $1 = Truncate


== Paint ==
== Paint ==


=== CopyPaintObject ===
=== CopyPaintObject ===


Enables a paint object to be copied, optionally keeping it inherited from the given master  
Enables a paint object to be copied, optionally keeping it inherited from the given master


  '''[[CopyPaintObject|$R = CopyPaintObject($1,$2,$3)]]'''
  '''[[CopyPaintObject|$R = CopyPaintObject($1,$2,$3)]]'''
   
   
  $R = New Paint Label
  $R = New Paint Label      
  $1 = Original Paint Label
  $1 = Original Paint Label
  $2 = Destination Panel
  $2 = Destination Panel  
  $3 = Inherit The Copy
  $3 = Inherit The Copy  


=== CopyPaintProperties ===
=== CopyPaintProperties ===


Copies the graphical properties between paint objects  
Copies the graphical properties between paint objects


  '''[[CopyPaintProperties|CopyPaintProperties($1,$2)]]'''
  '''[[CopyPaintProperties|CopyPaintProperties($1,$2)]]'''
   
   
  $1 = Paint Object To Update
  $1 = Paint Object To Update
  $2 = Original Paint Object
  $2 = Original Paint Object  


=== DeleteAllPaintObjects ===
=== DeleteAllPaintObjects ===


Delete all paint objects on the given panel  
Delete all paint objects on the given panel


  '''[[DeleteAllPaintObjects|DeleteAllPaintObject($1)]]'''
  '''[[DeleteAllPaintObjects|DeleteAllPaintObject($1)]]'''
Line 1,112: Line 1,141:
  $1 = Target Panel
  $1 = Target Panel


=== DeleteInheritedPaintObjects ===
=== DeleteInheritedPaintObjects ===


Removes all paint objects which inherit from a given panel  
Removes all paint objects which inherit from a given panel


  '''[[DeleteInheritedPaintObjects|DeleteInheritedPaintObjects($1,$2)]]'''
  '''[[DeleteInheritedPaintObjects|DeleteInheritedPaintObjects($1,$2)]]'''
   
   
  $1 = Target Pane
  $1 = Target Pane    
  $2 = Un Inherit Panel
  $2 = Un Inherit Panel


=== DeletePaintObject ===
=== DeletePaintObject ===


Deletes a paint object  
Deletes a paint object


  '''[[DeletePaintObject|DeletePaintObject($1,$2)]]'''
  '''[[DeletePaintObject|DeletePaintObject($1,$2)]]'''
   
   
  $1 = Paint Label
  $1 = Paint Label  
  $2 = With Inherited
  $2 = With Inherited


=== GetPaintProperty ===
=== GetPaintProperty ===


Read a property of a paint object  
Read a property of a paint object


  '''[[GetPaintProperty|$R = GetPaintProperty($1,$2)]]'''
  '''[[GetPaintProperty|$R = GetPaintProperty($1,$2)]]'''
Line 1,138: Line 1,167:
  $R = Result
  $R = Result
  $1 = Paint Object Label
  $1 = Paint Object Label
  $2 = Property Label
  $2 = Property Label  


=== InheritPaintObjects ===
=== InheritPaintObjects ===


Enables a panel to be populated with paint objects from another panel  
Enables a panel to be populated with paint objects from another panel


  '''[[InheritPaintObjects|InheritPaintObjects($1,$2)]]'''
  '''[[InheritPaintObjects|InheritPaintObjects($1,$2)]]'''
   
   
  $1 = Target Panel
  $1 = Target Panel    
  $2 = Inherit From Panel
  $2 = Inherit From Panel


=== InterpolateColor ===
=== InterpolateColor ===


Interpolates an RGB color between color1 and color2 based on ratio (0.0 gives color1, 1.0 gives color2)  
Interpolates an RGB color between color1 and color2 based on ratio (0.0 gives color1, 1.0 gives color2)


  '''[[InterpolateColor|$R = InterpolateColor($1,$2,$3)]]'''
  '''[[InterpolateColor|$R = InterpolateColor($1,$2,$3)]]'''
Line 1,160: Line 1,189:
  $3 = Ratio
  $3 = Ratio


=== SetNoteVisible ===
=== SetNoteVisible ===


Shows or hides an RTF note  
Shows or hides an RTF note


  '''[[SetNoteVisible|SetNoteVisible($1,$2)]]'''
  '''[[SetNoteVisible|SetNoteVisible($1,$2)]]'''
   
   
  $1 = Paint Object Label
  $1 = Paint Object Label
  $2 = Visibility
  $2 = Visibility      


=== SetPaintImage ===
=== SetPaintImage ===


Sets the image of a paint object  
Sets the image of a paint object


  '''[[SetPaintImage|SetPaintImage($1,$2)]]'''
  '''[[SetPaintImage|SetPaintImage($1,$2)]]'''
Line 1,178: Line 1,207:
  $2 = Set Image To
  $2 = Set Image To


=== SetPaintPosition ===
=== SetPaintPosition ===


Moves a paint object to a new position  
Moves a paint object to a new position


  '''[[SetPaintPosition|SetPaintPosition($1,$2,$3)]]'''
  '''[[SetPaintPosition|SetPaintPosition($1,$2,$3)]]'''
Line 1,188: Line 1,217:
  $3 = Y Pos (lower left)
  $3 = Y Pos (lower left)


=== SetPaintProperty ===
=== SetPaintProperty ===


Set a property of a paint object directly  
Set a property of a paint object directly


  '''[[SetPaintProperty|SetPaintProperty($1,$2,$3)]]'''
  '''[[SetPaintProperty|SetPaintProperty($1,$2,$3)]]'''
   
   
  $1 = Paint Object Label
  $1 = Paint Object Label
  $2 = Property Label
  $2 = Property Label  
  $3 = Property Value
  $3 = Property Value  


=== SetPaintText ===
=== SetPaintText ===


Sets the text of a paint object  
Sets the text of a paint object


  '''[[SetPaintText|SetPaintText($1,$2,$3)]]'''
  '''[[SetPaintText|SetPaintText($1,$2,$3)]]'''
   
   
  $1 = Paint Object Label
  $1 = Paint Object Label
  $2 = Set Text/File To
  $2 = Set Text/File To
  $3 = For All States
  $3 = For All States  


=== SetPaintTip ===
=== SetPaintTip ===


Sets the tool tip text of a paint object  
Sets the tool tip text of a paint object


  '''[[SetPaintTip|SetPaintTip($1,$2,$3)]]'''
  '''[[SetPaintTip|SetPaintTip($1,$2,$3)]]'''
   
   
  $1 = Paint Object Label
  $1 = Paint Object Label
  $2 = Set Tip To
  $2 = Set Tip To
  $3 = For All States
  $3 = For All States  


== Route ==
== Route ==


=== AssignRoute ===
=== AssignRoute ===


Sets an item's track route from a route table  
Sets an item's track route from a route table


  '''[[AssignRoute|AssignRoute($1)]]'''
  '''[[AssignRoute|AssignRoute($1)]]'''
Line 1,228: Line 1,257:
  $1 = Timetable Source
  $1 = Timetable Source


<br>
=== ClearRoute ===


=== ClearRoute  ===
Clear an item's routing database
 
Clear an item's routing database  


  '''[[ClearRoute|ClearRoute()]]'''
  '''[[ClearRoute|ClearRoute()]]'''
   
   


<br>
=== EnableTrackCheckNext ===


=== EnableTrackCheckNext  ===
Used during lookahead, this enables a modeller to signal objects downstream of a lookahead that the current lookahead is for track capacity purposes and wont be taken immediately. It automatically resets when lookahead unwinds behind the routine.
 
Used during lookahead, this enables a modeller to signal objects downstream of a lookahead that the current lookahead is for track capacity purposes and wont be taken immediately. It automatically resets when lookahead unwinds behind the routine.  


  '''[[EnableTrackCheckNext|EnableTrackCheckNext()]]'''
  '''[[EnableTrackCheckNext|EnableTrackCheckNext()]]'''
   
   


=== FillRouteSteps ===
=== FillRouteSteps ===


Fills in all intermediate portals and loops in an item's track route  
Fills in all intermediate portals and loops in an item's track route


  '''[[FillRouteSteps|FillRouteSteps($1)]]'''
  '''[[FillRouteSteps|FillRouteSteps($1)]]'''
Line 1,254: Line 1,279:
  $1 = Include Loops (1=yes)
  $1 = Include Loops (1=yes)


=== InsertRouteStep ===
=== InsertRouteStep ===


Insert a track route step into an item's internal routing database  
Insert a track route step into an item's internal routing database


  '''[[InsertRouteStep|InsertRouteStep($1,$2)]]'''
  '''[[InsertRouteStep|InsertRouteStep($1,$2)]]'''
Line 1,263: Line 1,288:
  $2 = Route Location
  $2 = Route Location


<br>
=== ReadRoute ===
 
=== ReadRoute ===


Reads an item's track route into a table  
Reads an item's track route into a table


  '''[[ReadRoute|ReadRoute($R)]]'''
  '''[[ReadRoute|ReadRoute($R)]]'''
Line 1,273: Line 1,296:
  $R = Timetable Target
  $R = Timetable Target


<br>
=== RegisterBlockedTrain ===
 
=== RegisterBlockedTrain ===


Register the item (train) into the track blocked list  
Register the item (train) into the track blocked list


  '''[[RegisterBlockedTrain|RegisterBlockedTrain()]]'''
  '''[[RegisterBlockedTrain|RegisterBlockedTrain()]]'''
   
   


=== RoadsInTrackSection ===
=== RoadsInTrackSection ===


Returns how many roads a given track section has been configured for  
Returns how many roads a given track section has been configured for


  '''[[RoadsInTrackSection|$R = RoadsInTrackSection($1)]]'''
  '''[[RoadsInTrackSection|$R = RoadsInTrackSection($1)]]'''
Line 1,291: Line 1,312:
  $1 = Section
  $1 = Section


=== SetActAsJunction  ===
=== TrackSectionType ===


Enables the Act As Junction flag to be set or cleared for a given portal on a track network
Returns the type of a track section (_section_types label list)
 
'''[[SetActAsJunction|SetActAsJunction($1,$2)]]'''
$1 = Portal On Track
$2 = Act As Junction
 
=== SetOncomingCheck  ===
 
Enables the Oncoming Train Check flag to be set or cleared for a given portal on a track network
 
'''[[SetOncomingCheck|SetOncomingCheck($1,$2)]]'''
$1 = Portal On Track
$2 = Oncoming Check
 
=== TrackSectionType  ===
 
Returns the type of a track section (_section_types label list)  


  '''[[TrackSectionType|$R = TrackSectionType($1)]]'''
  '''[[TrackSectionType|$R = TrackSectionType($1)]]'''
Line 1,318: Line 1,321:
  $1 = Section
  $1 = Section


=== UnblockTrain ===
=== UnblockTrain ===
 
Attempt unblock of specific train id or all blocked trains if id is 0
 
'''[[UnblockTrain|UnblockTrain($1)]]'''
 
$1 Item ID


Attempt unblock of specific train id or all blocked trains if id is 0


'''[[UnblockTrain|UnblockTrain($1)]]'''
$1 = Item ID


== Row/Column ==
== Row/Column ==


=== Average ===
=== Average ===


Determines the average of values in a row or column  
Determines the average of values in a row or column


  '''[[Average|$R = Average($1,$2,$3)]]'''
  '''[[Average|$R = Average($1,$2,$3)]]'''
Line 1,341: Line 1,342:
  $3 = To
  $3 = To


=== MaxIndex ===
=== MaxIndex ===


Determines the index of the highest value in a row or column  
Determines the index of the highest value in a row or column


  '''[[MaxIndex|$R = MaxIndex($1,$2,$3)]]'''
  '''[[MaxIndex|$R = MaxIndex($1,$2,$3)]]'''
Line 1,352: Line 1,353:
  $3 = To
  $3 = To


=== MinIndex ===
=== MinIndex ===


Determines the index of the lowest value in a row or column  
Determines the index of the lowest value in a row or column


  '''[[MinIndex|$R = MinIndex($1,$2,$3)]]'''
  '''[[MinIndex|$R = MinIndex($1,$2,$3)]]'''
Line 1,363: Line 1,364:
  $3 = To
  $3 = To


=== StdDev ===
=== StdDev ===


Determines the Standard Deviation of values in a row or column  
Determines the Standard Deviation of values in a row or column


  '''[[StdDev|$R = StdDev($1,$2,$3)]]'''
  '''[[StdDev|$R = StdDev($1,$2,$3)]]'''
Line 1,374: Line 1,375:
  $3 = To
  $3 = To


=== Sum ===
=== Sum ===


Determines the sum of values in a row or column  
Determines the sum of values in a row or column


  '''[[Sum|$R = Sum($1,$2,$3)]]'''
  '''[[Sum|$R = Sum($1,$2,$3)]]'''
Line 1,385: Line 1,386:
  $3 = To
  $3 = To


=== SumSquared ===
=== SumSquared ===


Determines the sum of squares of values in a row or column  
Determines the sum of squares of values in a row or column


  '''[[SumSquared|$R = SumSquared($1,$2,$3)]]'''
  '''[[SumSquared|$R = SumSquared($1,$2,$3)]]'''
Line 1,396: Line 1,397:
  $3 = To
  $3 = To


== Scientific ==
== Scientific ==


=== arccos ===
=== arccos ===


Inverse cosine function, returns radians  
Inverse cosine function, returns radians


  '''[[Arccos|$R = arccos($1)]]'''
  '''[[arccos|$R = arccos($1)]]'''
   
   
  $R = Result
  $R = Result
  $1 = Value
  $1 = Value


=== arcsin ===
=== arcsin ===


Inverse sine function, returns radians  
Inverse sine function, returns radians


  '''[[Arcsin|$R = arcsin($1)]]'''
  '''[[arcsin|$R = arcsin($1)]]'''
   
   
  $R = Result
  $R = Result
  $1 = Value
  $1 = Value


=== arctan ===
=== arctan ===


Inverse tan function, returns radians  
Inverse tan function, returns radians


  '''[[Arctan|$R = arctan($1)]]'''
  '''[[arctan|$R = arctan($1)]]'''
   
   
  $R = Result
  $R = Result
  $1 = Value
  $1 = Value


=== atan2 ===
=== atan2 ===


Determines angle (in radians) given x and y displacement  
Determines angle (in radians) given x and y displacement


  '''[[Atan2|$R = atan2($1,$2)]]'''
  '''[[atan2|$R = atan2($1,$2)]]'''
   
   
  $R = Result
  $R = Result
Line 1,435: Line 1,436:
  $2 = Denominator (X)
  $2 = Denominator (X)


=== cos ===
=== cos ===


Cosine function, value in radians  
Cosine function, value in radians


  '''[[Cos|$R = cos($1)]]'''
  '''[[cos|$R = cos($1)]]'''
   
   
  $R = Result
  $R = Result
  $1 = Value
  $1 = Value


=== DegToRad ===
=== DegToRad ===


Converts degrees to radians  
Converts degrees to radians


  '''[[DegToRad|$R = DegToRad($1)]]'''
  '''[[DegToRad|$R = DegToRad($1)]]'''
Line 1,453: Line 1,454:
  $1 = Value
  $1 = Value


=== exp ===
=== exp ===


Calculates $1 to the power of E  
Calculates $1 to the power of E


  '''[[Exp|$R = exp($1)]]'''
  '''[[exp|$R = exp($1)]]'''
   
   
  $R = Result
  $R = Result
  $1 = Value
  $1 = Value


=== hypot ===
=== hypot ===


Hypotenuse of right angled triangle with given sides  
Hypotenuse of right angled triangle with given sides


  '''[[Hypot|$R = hypot($1,$2)]]'''
  '''[[hypot|$R = hypot($1,$2)]]'''
   
   
  $R = Result
  $R = Result
Line 1,472: Line 1,473:
  $2 = Y Value
  $2 = Y Value


=== log10 ===
=== log10 ===


Calculates the decimal logarithm of the value  
Calculates the decimal logarithm of the value


  '''[[Log10|$R = log10($1)]]'''
  '''[[log10|$R = log10($1)]]'''
   
   
  $R = Result
  $R = Result
  $1 = Value
  $1 = Value


=== logN ===
=== logN ===


Calculates the natural logarithm of the value  
Calculates the natural logarithm of the value


  '''[[LogN|$R = logN($1)]]'''
  '''[[logN|$R = logN($1)]]'''
   
   
  $R = Result
  $R = Result
  $1 = Value
  $1 = Value


=== pow ===
=== pow ===


Calculates $1 to the power of $2  
Calculates $1 to the power of $2


  '''[[Pow|$R = pow($1,$2)]]'''
  '''[[pow|$R = pow($1,$2)]]'''
   
   
  $R = Result
  $R = Result
Line 1,500: Line 1,501:
  $2 = Power
  $2 = Power


=== RadToDeg ===
=== RadToDeg ===


Converts radians to degrees  
Converts radians to degrees


  '''[[RadToDeg|$R = RadToDeg($1)]]'''
  '''[[RadToDeg|$R = RadToDeg($1)]]'''
Line 1,509: Line 1,510:
  $1 = Value
  $1 = Value


=== sin ===
=== sin ===


Sine function, value in radians  
Sine function, value in radians


  '''[[Sin|$R = sin($1)]]'''
  '''[[sin|$R = sin($1)]]'''
   
   
  $R = Result
  $R = Result
  $1 = Value
  $1 = Value


=== sqr ===
=== sqr ===


Value multiplied by itself  
Value multiplied by itself


  '''[[Sqr|$R = sqr($1)]]'''
  '''[[sqr|$R = sqr($1)]]'''
   
   
  $R = Result
  $R = Result
  $1 = Value
  $1 = Value


=== sqrt ===
=== sqrt ===


Square root of value  
Square root of value


  '''[[Sqrt|$R = sqrt($1)]]'''
  '''[[sqrt|$R = sqrt($1)]]'''
   
   
  $R = Result
  $R = Result
  $1 = Value
  $1 = Value


=== tan ===
=== tan ===


Tan function, value in radians  
Tan function, value in radians


  '''[[Tan|$R = tan($1)]]'''
  '''[[tan|$R = tan($1)]]'''
   
   
  $R = Result
  $R = Result
  $1 = Value
  $1 = Value


== Spatial Link ==
== Spatial Link ==


=== AddBendPoint ===
=== AddBendPoint ===


Adds a bend point to a spatial link between the two objects specified  
Adds a bend point to a spatial link between the two objects specified


  '''[[AddBendPoint|AddBendPoint($R,$1,$2,$3)]]'''
  '''[[AddBendPoint|AddBendPoint($R,$1,$2,$3)]]'''
   
   
  $R = From Object
  $R = From Object
  $1 = To Object
  $1 = To Object  
  $2 = X Position
  $2 = X Position
  $3 = Y Position
  $3 = Y Position


=== AddDirectionalLink ===
=== AddDirectionalLink ===


Adds a spatial link between objects which can only be traversed in the forward direction  
Adds a spatial link between objects which can only be traversed in the forward direction


  '''[[AddDirectionalLink|AddDirectionalLink($1,$2)]]'''
  '''[[AddDirectionalLink|AddDirectionalLink($1,$2)]]'''
   
   
  $1 = From Object
  $1 = From Object
  $2 = To Object
  $2 = To Object  


=== AddSpatialLink ===
=== AddSpatialLink ===


Add a spatial link between the two objects labels specified  
Add a spatial link between the two objects labels specified


  '''[[AddSpatialLink|AddSpatialLink($1,$2)]]'''
  '''[[AddSpatialLink|AddSpatialLink($1,$2)]]'''
   
   
  $1 = From Object
  $1 = From Object
  $2 = To Object
  $2 = To Object  


=== ClearSpatialCache ===
=== ClearSpatialCache ===


Instructs Planimate to update spatial link information after links are created or objects are moved  
Instructs Planimate to update spatial link information after links are created or objects are moved


  '''[[ClearSpatialCache|ClearSpatialCache()]]'''
  '''[[ClearSpatialCache|ClearSpatialCache()]]'''
   
   


=== CopySpatialLink ===
=== CopySpatialLink ===


Creates a spatial link between objects, copying an existing link's properties  
Creates a spatial link between objects, copying an existing link's properties


  '''[[CopySpatialLink|CopySpatialLink($1,$2,$3)]]'''
  '''[[CopySpatialLink|CopySpatialLink($1,$2,$3)]]'''
   
   
  $1 = From Object
  $1 = From Object
  $2 = To Object
  $2 = To Object  
  $3 = Copy Link
  $3 = Copy Link  


=== DeletePanelSpatialLinks ===
=== DeletePanelSpatialLinks ===


Deletes all spatial links on a given panel  
Deletes all spatial links on a given panel


  '''[[DeletePanelSpatialLinks|DeletePanelSpatialLinks($1)]]'''
  '''[[DeletePanelSpatialLinks|DeletePanelSpatialLinks($1)]]'''
Line 1,601: Line 1,602:
  $1 = Panel
  $1 = Panel


=== RemoveSpatialLink ===
=== RemoveSpatialLink ===


Removes any spatial links from and to the specified object labels (directional)  
Removes any spatial links from and to the specified object labels (directional)


  '''[[RemoveSpatialLink|RemoveSpatialLink($1,$2)]]'''
  '''[[RemoveSpatialLink|RemoveSpatialLink($1,$2)]]'''
   
   
  $1 = From Object
  $1 = From Object
  $2 = To Object
  $2 = To Object  


=== SetItemTransitTarget ===
=== SetItemTransitTarget ===


Sets the destination an item will look for once it enters a spatial link  
Sets the destination an item will look for once it enters a spatial link


  '''[[SetItemTransitTarget|SetItemTransitTarget($1)]]'''
  '''[[SetItemTransitTarget|SetItemTransitTarget($1)]]'''
Line 1,618: Line 1,619:
  $1 = To Target
  $1 = To Target


=== SetItemTransitTime ===
=== SetItemTransitTime ===


Sets the time an item will take to reach its destination once it enters a spatial link  
Sets the time an item will take to reach its destination once it enters a spatial link


  '''[[SetItemTransitTime|SetItemTransitTime($1)]]'''
  '''[[SetItemTransitTime|SetItemTransitTime($1)]]'''
Line 1,626: Line 1,627:
  $1 = To Time
  $1 = To Time


=== SetLinkColor ===
=== SetLinkColor ===


Sets the color of a spatial link between 2 given objects  
Sets the color of a spatial link between 2 given objects


  '''[[SetLinkColor|SetLinkColor($1,$2,$3)]]'''
  '''[[SetLinkColor|SetLinkColor($1,$2,$3)]]'''
   
   
  $1 = From Object
  $1 = From Object
  $2 = To Object
  $2 = To Object  
  $3 = Color
  $3 = Color    


=== SetLinkCost ===
=== SetLinkCost ===


Sets the link cost of a spatial link (normally computed from the link's distance)  
Sets the link cost of a spatial link (normally computed from the link's distance)


  '''[[SetLinkCost|SetLinkCost($1,$2,$3)]]'''
  '''[[SetLinkCost|SetLinkCost($1,$2,$3)]]'''
   
   
  $1 = From Object
  $1 = From Object
  $2 = To Object
  $2 = To Object  
  $3 = Cost
  $3 = Cost    


=== SetSpatialLinkWidth ===
=== SetSpatialLinkWidth ===


Sets the width of a spatial link between two objects  
Sets the width of a spatial link between two objects


  '''[[SetSpatialLinkWidth|SetSpatialLinkWidth($1,$2,$3)]]'''
  '''[[SetSpatialLinkWidth|SetSpatialLinkWidth($1,$2,$3)]]'''
   
   
  $1 = From Object
  $1 = From Object
  $2 = To Object
  $2 = To Object  
  $3 = Width
  $3 = Width    


== Special ==
== Special ==


=== ---| Only During Move |--- ===
=== ---| Only During Move |--- ===


Enables the modeller to specifically mark that the following routine lines do not execute during lookahead  
Enables the modeller to specifically mark that the following routine lines do not execute during lookahead


  '''[[---| Only During Move |---||----- Following Only During Move -----|]]'''
  '''[[---| Only During Move |---||----- Following Only During Move -----|]]'''
   
   


=== BREAKPOINTIF ===
=== BREAKPOINTIF ===


If the parameter is true, this interrupts the routine and displays a debugging dialog enabling inspection of the models state  
If the parameter is true, this interrupts the routine and displays a debugging dialog enabling inspection of the models state


  '''[[BREAKPOINTIF|BREAKPOINTIF ($1)]]'''
  '''[[BREAKPOINTIF|BREAKPOINTIF ($1)]]'''
   
   
  $1 = Enable Break
  $1 = Enable Break  


=== CallDLL ===
=== CallDLL ===


Enables a Planimate compatible DLL to be called  
Enables a Planimate compatible DLL to be called


  '''[[CallDLL|$R = CallDLL($F)]]'''
  '''[[CallDLL|$R = CallDLL($F)]]'''
Line 1,682: Line 1,683:
  $F = Set to
  $F = Set to


=== CallRoutine ===
=== CallRoutine ===


Calls a subroutine  
Calls a subroutine


  '''[[CallRoutine|CallRoutine($F)]]'''
  '''[[CallRoutine|CallRoutine($F)]]'''
Line 1,690: Line 1,691:
  $F = Call
  $F = Call


=== Comment (//) ===
=== Comment (//) ===


A comment line  
A comment line


  '''[[Comment|Comment]]'''
  '''[[Comment|Comment]]'''
   
   


=== CopyFont ===
=== CopyFont ===


Copies the font properties between cells and columns  
Copies the font properties between cells and columns


  '''[[CopyFont|CopyFont($R,$1)]]'''
  '''[[CopyFont|CopyFont($R,$1)]]'''
Line 1,706: Line 1,707:
  $1 = Format From
  $1 = Format From


=== CopyFormat ===
=== CopyFormat ===


Copies the format/unit type/label reference between cells, columns and attributes  
Copies the format/unit type/label reference between cells, columns and attributes


  '''[[CopyFormat|CopyFormat($R,$1)]]'''
  '''[[CopyFormat|CopyFormat($R,$1)]]'''
Line 1,715: Line 1,716:
  $1 = Format From
  $1 = Format From


=== DescribeRoutineData ===
=== DescribeRoutineData ===


Describe the data accessed by a change object routine  
Describe the data accessed by a change object routine


  '''[[DescribeRoutineData|DescribeRoutineData($1,$2,$3)]]'''
  '''[[DescribeRoutineData|DescribeRoutineData($1,$2,$3)]]'''
Line 1,725: Line 1,726:
  $3 = Output Filename
  $3 = Output Filename


=== EncodeRGB ===
=== EncodeRGB ===


Encodes red, green and blue components (0..255) into a single value used to specify any color  
Encodes red, green and blue components (0..255) into a single value used to specify any color


  '''[[EncodeRGB|$R = EncodeRGB($1,$2,$3)]]'''
  '''[[EncodeRGB|$R = EncodeRGB($1,$2,$3)]]'''
Line 1,736: Line 1,737:
  $3 = Blue Value
  $3 = Blue Value


=== FormatForList ===
=== FormatForList ===


Formats the result object to reference a label list with the given name  
Formats the result object to reference a label list with the given name


  '''[[FormatForList|FormatForList($R,$1)]]'''
  '''[[FormatForList|FormatForList($R,$1)]]'''
Line 1,745: Line 1,746:
  $1 = List Name
  $1 = List Name


=== GetFormat ===
=== GetFormat ===


Returns the value format of the data  
Returns the value format of the data


  '''[[GetFormat|$R = GetFormat($1)]]'''
  '''[[GetFormat|$R = GetFormat($1)]]'''
Line 1,754: Line 1,755:
  $1 = Data To Test
  $1 = Data To Test


=== GetFormatListName ===
=== GetFormatListName ===


Creates a new label with the name of the label list the target is formatted to. If no list, no change to the target is made  
Creates a new label with the name of the label list the target is formatted to. If no list, no change to the target is made


  '''[[GetFormatListName|GetFormatListName($R,$1)]]'''
  '''[[GetFormatListName|GetFormatListName($R,$1)]]'''
Line 1,763: Line 1,764:
  $1 = Data To Test
  $1 = Data To Test


=== ListRoutineCode ===
=== ListRoutineCode ===


Write a change object routine code to a file  
Write a change object routine code to a file


  '''[[ListRoutineCode|ListRoutineCode($1,$2,$3)]]'''
  '''[[ListRoutineCode|ListRoutineCode($1,$2,$3)]]'''
Line 1,773: Line 1,774:
  $3 = Output Filename
  $3 = Output Filename


=== LoadDataSet ===
=== LoadDataSet ===


Initiates loading of a given data set from a file name specified by a label  
Initiates loading of a given data set from a file name specified by a label


  '''[[LoadDataSet|LoadDataSet($1,$2)]]'''
  '''[[LoadDataSet|LoadDataSet($1,$2)]]'''
   
   
  $1 = Data Set #
  $1 = Data Set #
  $2 = File Name
  $2 = File Name  


=== LoadDataSet2 ===
=== LoadDataSet2 ===


Load a version 2 dataset  
Load a version 2 dataset


  '''[[LoadDataSet2|$R = LoadDataSet2($1,$2,$3)]]'''
  '''[[LoadDataSet2|$R = LoadDataSet2($1,$2,$3)]]'''
Line 1,790: Line 1,791:
  $R = Result
  $R = Result
  $1 = Definition Table
  $1 = Definition Table
  $2 = File Name
  $2 = File Name  
  $3 = Pass Phrase
  $3 = Pass Phrase


=== ObjectType ===
=== ObjectType ===


Returns the type of the object that the object label refers to  
Returns the type of the object that the object label refers to  
Line 1,802: Line 1,803:
  $1 = Object
  $1 = Object


=== SaveDataSet ===
=== SaveDataSet ===


Initiates saving of a given data set to a file name specified as a label  
Initiates saving of a given data set to a file name specified as a label


  '''[[SaveDataSet|SaveDataSet($1,$2)]]'''
  '''[[SaveDataSet|SaveDataSet($1,$2)]]'''
   
   
  $1 = Data Set #
  $1 = Data Set #
  $2 = File Name
  $2 = File Name  


=== SaveDataSet2 ===
=== SaveDataSet2 ===


Save a version 2 dataset  
Save a version 2 dataset


  '''[[SaveDataSet2|$R = SaveDataSet2($1,$2,$3)]]'''
  '''[[SaveDataSet2|$R = SaveDataSet2($1,$2,$3)]]'''
Line 1,819: Line 1,820:
  $R = Result
  $R = Result
  $1 = Definition Table
  $1 = Definition Table
  $2 = File Name
  $2 = File Name  
  $3 = Pass Phrase
  $3 = Pass Phrase


=== SetFormat ===
=== SetFormat ===


Sets format of $1 to mode $2, with $3 being the label list name if its a label format  
Sets format of $1 to mode $2, with $3 being the label list name if its a label format


  '''[[SetFormat|SetFormat($1,$2,$3)]]'''
  '''[[SetFormat|SetFormat($1,$2,$3)]]'''
Line 1,832: Line 1,833:
  $3 = List Name
  $3 = List Name


=== SetLastDataFile ===
=== SetLastDataFile ===


Sets the last data filename, optionally visible in the titlebar  
Sets the last data filename, optionally visible in the titlebar


  '''[[SetLastDataFile|SetLastDataFile($1)]]'''
  '''[[SetLastDataFile|SetLastDataFile($1)]]'''
Line 1,840: Line 1,841:
  $1 = Name
  $1 = Name


=== StartScheduledEntries ===
=== StartScheduledEntries ===


Signals that scheduled entries should start (if options deferred them starting when the model was run)  
Signals that scheduled entries should start (if options deferred them starting when the model was run)


  '''[[StartScheduledEntries|StartScheduledEntries]]'''
  '''[[StartScheduledEntries|StartScheduledEntries]]'''
   
   


== Table ==
== Table ==


=== AdvancedSort ===
=== AdvancedSort ===


Performs a sort on a table using another table to define the sort criteria  
Performs a sort on a table using another table to define the sort criteria


  '''[[AdvancedSort|AdvancedSort($R,$1)]]'''
  '''[[AdvancedSort|AdvancedSort($R,$1)]]'''
   
   
  $R = Target
  $R = Target  
  $1 = Sort Info
  $1 = Sort Info


=== AllocateTableRowMemory ===
=== AllocateTableRowMemory ===


Enables memory to be reserved for a table which is expected to grow to a large number of rows  
Enables memory to be reserved for a table which is expected to grow to a large number of rows


  '''[[AllocateTableRowMemory|AllocateTableRowMemory($R,$1)]]'''
  '''[[AllocateTableRowMemory|AllocateTableRowMemory($R,$1)]]'''
   
   
  $R = Target Table
  $R = Target Table  
  $1 = Allocate Rows
  $1 = Allocate Rows


=== AppendCol ===
=== AppendCol ===


Append a column to a table  
Append a column to a table


  '''[[AppendCol|AppendColumn($R)]]'''
  '''[[AppendCol|AppendColumn($R)]]'''
Line 1,875: Line 1,876:
  $R = Target
  $R = Target


=== AppendRow ===
=== AppendRow ===


Append a row to the table  
Append a row to the table


  '''[[AppendRow|AppendRow($R)]]'''
  '''[[AppendRow|AppendRow($R)]]'''
Line 1,883: Line 1,884:
  $R = Target
  $R = Target


=== BlockMove ===
=== BlockMove ===


Block copy a range of cells to another table  
Block copy a range of cells to another table


  '''[[BlockMove|BlockMove($R,$1,Range[$2][$3])]]'''
  '''[[BlockMove|BlockMove($R,$1,Range[$2][$3])]]'''
Line 1,894: Line 1,895:
  $3 = # of Cols
  $3 = # of Cols


=== CopyToClipboard ===
=== CopyToClipboard ===


Copy table to clipboard using its clipboard settings and the option modifiers  
Copy table to clipboard using its clipboard settings and the option modifiers


  '''[[CopyToClipboard|CopyToClipboard($R,$1)]]'''
  '''[[CopyToClipboard|CopyToClipboard($R,$1)]]'''
Line 1,903: Line 1,904:
  $1 = Options
  $1 = Options


=== CreateSortIndex ===
=== CreateSortIndex ===


Creates an ordered list of row numbers if the given column was sorted alphabetically  
Creates an ordered list of row numbers if the given column was sorted alphabetically


  '''[[CreateSortIndex|CreateSortIndex($R,$1)]]'''
  '''[[CreateSortIndex|CreateSortIndex($R,$1)]]'''
   
   
  $R = Target Column
  $R = Target Column  
  $1 = Column To Sort
  $1 = Column To Sort


=== DeleteCol ===
=== DeleteCol ===


Delete a range of columns from a table  
Delete a range of columns from a table


  '''[[DeleteCol|DeleteColumn($R,$1,$2)]]'''
  '''[[DeleteCol|DeleteColumn($R,$1,$2)]]'''
Line 1,922: Line 1,923:
  $2 = Col Count
  $2 = Col Count


=== DeleteRow ===
=== DeleteRow ===


Delete a number of rows starting at a given row in a table  
Delete a number of rows starting at a given row in a table


  '''[[DeleteRow|DeleteRow($R,$1,$2)]]'''
  '''[[DeleteRow|DeleteRow($R,$1,$2)]]'''
Line 1,932: Line 1,933:
  $2 = Row Count
  $2 = Row Count


=== EnableColumnEditing ===
=== EnableColumnEditing ===


Controls whether a given table column can be edited  
Controls whether a given table column can be edited


  '''[[EnableColumnEditing|EnableColumnEditing($R,$1)]]'''
  '''[[EnableColumnEditing|EnableColumnEditing($R,$1)]]'''
   
   
  $R = Target Column
  $R = Target Column
  $1 = Edit Control
  $1 = Edit Control  


=== GetColumnProperty ===
=== GetColumnProperty ===


Read a property of a table column  
Read a property of a table column


  '''[[GetColumnProperty|$R = GetColumnProperty($1,$2)]]'''
  '''[[GetColumnProperty|$R = GetColumnProperty($1,$2)]]'''
Line 1,949: Line 1,950:
  $R = Result
  $R = Result
  $1 = Table Column
  $1 = Table Column
  $2 = Property Label
  $2 = Property Label  


=== InsertCol ===
=== InsertCol ===


Insert columns into a table with the option of copying formatting from another column  
Insert columns into a table with the option of copying formatting from another column


  '''[[InsertCol|InsertColumn($R,$1,$2,$3)]]'''
  '''[[InsertCol|InsertColumn($R,$1,$2,$3)]]'''
Line 1,962: Line 1,963:
  $3 = Copy Format
  $3 = Copy Format


=== InsertRow ===
=== InsertRow ===


Insert a number of rows at a given row in a table  
Insert a number of rows at a given row in a table


  '''[[InsertRow|InsertRow($R,$1,$2)]]'''
  '''[[InsertRow|InsertRow($R,$1,$2)]]'''
Line 1,972: Line 1,973:
  $2 = Row Count
  $2 = Row Count


=== OutOfScopeWrite ===
=== OutOfScopeWrite ===


Enable writing to item table reference $1 even if it is not in scope  
Enable writing to item table reference $1 even if it is not in scope


  '''[[OutOfScopeWrite|OutOfScopeWrite($1)]]'''
  '''[[OutOfScopeWrite|OutOfScopeWrite($1)]]'''
Line 1,980: Line 1,981:
  $1 = Item Table Ref
  $1 = Item Table Ref


=== PasteFromClipboard ===
=== PasteFromClipboard ===


Paste the clipboard into the table using its clipboard options and the modifiers  
Paste the clipboard into the table using its clipboard options and the modifiers


  '''[[PasteFromClipboard|PasteFromClipboard($R,$1)]]'''
  '''[[PasteFromClipboard|PasteFromClipboard($R,$1)]]'''
   
   
  $R = Target Table
  $R = Target Table
  $1 = Configure
  $1 = Configure  


=== PurgeDuplicateRows ===
=== PurgeDuplicateRows ===


Removes any identical rows from the given table  
Removes any identical rows from the given table


  '''[[PurgeDuplicateRows|PurgeDuplicateRows($R)]]'''
  '''[[PurgeDuplicateRows|PurgeDuplicateRows($R)]]'''
Line 1,997: Line 1,998:
  $R = Target
  $R = Target


<br>
=== RegenerateBillboardTable ===
 
Regenerate a billboard table to reflect changes in the model
 
'''[[RegenerateBillboardTable|RegenerateBillboardTable($R)]]'''
$R = Billboard Table


=== Search ===
=== Search ===


Search table until a condition is true  
Search table until a condition is true


  '''[[Search|$R = Search($F)]]'''
  '''[[Search|$R = Search($F)]]'''
Line 2,008: Line 2,015:
  $F = Set to
  $F = Set to


=== SetCellFreeText ===
=== SetCellFreeText ===


Sets the free text (not bound by label text rules) for a table cell  
Sets the free text (not bound by label text rules) for a table cell


  '''[[SetCellFreeText|SetCellFreeText($R,$1)]]'''
  '''[[SetCellFreeText|SetCellFreeText($R,$1)]]'''
Line 2,017: Line 2,024:
  $1 = Source Cell
  $1 = Source Cell


=== SetColAlignment ===
=== SetColAlignment ===


Enables a column's text alignment to be changed  
Enables a column's text alignment to be changed


  '''[[SetColAlignment|SetColumnAlignment($R,$1)]]'''
  '''[[SetColAlignment|SetColumnAlignment($R,$1)]]'''
   
   
  $R = Target Column
  $R = Target Column
  $1 = Align Mode
  $1 = Align Mode  


=== SetColSecondTitle ===
=== SetColSecondTitle ===


Sets the text of the second title row for the given column  
Sets the text of the second title row for the given column


  '''[[SetColSecondTitle|SetColumnSecondTitle($R,$1)]]'''
  '''[[SetColSecondTitle|SetColumnSecondTitle($R,$1)]]'''
Line 2,035: Line 2,042:
  $1 = Title Text
  $1 = Title Text


=== SetColTitle ===
=== SetColTitle ===


Set the title text of a table column  
Set the title text of a table column


  '''[[SetColTitle|SetColumnTitle($R,$1)]]'''
  '''[[SetColTitle|SetColumnTitle($R,$1)]]'''
Line 2,044: Line 2,051:
  $1 = Title Text
  $1 = Title Text


=== SetColTupleName ===
=== SetColTupleName ===


Sets the name used to internally identify a column  
Sets the name used to internally identify a column


  '''[[SetColTupleName|SetColumnTupleName($R,$1)]]'''
  '''[[SetColTupleName|SetColumnTupleName($R,$1)]]'''
Line 2,053: Line 2,060:
  $1 = Tuple Text
  $1 = Tuple Text


=== SetColumnProperty ===
=== SetColumnProperty ===


Set a property of a table column  
Set a property of a table column


  '''[[SetColumnProperty|SetColumnProperty($1,$2,$3)]]'''
  '''[[SetColumnProperty|SetColumnProperty($1,$2,$3)]]'''
   
   
  $1 = Table Column
  $1 = Table Column
  $2 = Property Label
  $2 = Property Label  
  $3 = Property Value
  $3 = Property Value  


=== SetColWidth ===
=== SetColWidth ===


Sets the formatting width of a table column  
Sets the formatting width of a table column


  '''[[SetColWidth|SetColWidth($R,$1)]]'''
  '''[[SetColWidth|SetColWidth($R,$1)]]'''
Line 2,072: Line 2,079:
  $1 = Column Width
  $1 = Column Width


=== SetTableRowHeight ===
=== SetTableRowHeight ===


Sets the height of table rows  
Sets the height of table rows


  '''[[SetTableRowHeight|SetTableRowHeight($1,$2)]]'''
  '''[[SetTableRowHeight|SetTableRowHeight($1,$2)]]'''
Line 2,081: Line 2,088:
  $2 = Row Height
  $2 = Row Height


=== SetTableTitle ===
=== SetTableTitle ===


Set the title text of the table from the label  
Set the title text of the table from the label


  '''[[SetTableTitle|SetTableTitle($R,$1)]]'''
  '''[[SetTableTitle|SetTableTitle($R,$1)]]'''
Line 2,090: Line 2,097:
  $1 = Title Text
  $1 = Title Text


=== ShiftCol ===
=== ShiftCol ===


Shift the columns in a table  
Shift the columns in a table


  '''[[ShiftCol|ShiftColumn($R,$1,$2)]]'''
  '''[[ShiftCol|ShiftColumn($R,$1,$2)]]'''
Line 2,098: Line 2,105:
  $R = Result
  $R = Result
  $1 = Source
  $1 = Source
  $2 = Shift &lt;+ -&gt;
  $2 = Shift <+ ->


=== ShiftRow ===
=== ShiftRow ===


Shift the rows in a table  
Shift the rows in a table


  '''[[ShiftRow|ShiftRow($R,$1,$2)]]'''
  '''[[ShiftRow|ShiftRow($R,$1,$2)]]'''
Line 2,110: Line 2,117:
  $2 = Shift ^+ -v
  $2 = Shift ^+ -v


=== Sort ===
=== Sort ===


Sort table by up to 3 columns  
Sort table by up to 3 columns


  '''[[Sort|Sort($R,$1,$2,$3)]]'''
  '''[[Sort|Sort($R,$1,$2,$3)]]'''
Line 2,121: Line 2,128:
  $3 = Third Col.
  $3 = Third Col.


=== TableReferenceSet ===
=== TableReferenceSet ===


Returns non zero if the reference resolves to a table  
Returns non zero if the reference resolves to a table


  '''[[TableReferenceSet|$R = TableReferenceSet($1)]]'''
  '''[[TableReferenceSet|$R = TableReferenceSet($1)]]'''
Line 2,130: Line 2,137:
  $1 = Item Table Ref
  $1 = Item Table Ref


=== TableSortDialog ===
=== TableSortDialog ===


Enables the user to set up and perform a sort using the table sort dialog  
Enables the user to set up and perform a sort using the table sort dialog


  '''[[TableSortDialog|TableSortDialog($R)]]'''
  '''[[TableSortDialog|TableSortDialog($R)]]'''
Line 2,138: Line 2,145:
  $R = Target
  $R = Target


== Table View ==
== Table View ==


=== GetFilteredRows  ===
=== ClearFilter ===


Retrieves the filter mapping of view rows to actual rows into the list table  
Clear filter settings for a table view
 
'''[[ClearFilter|ClearFilter($1,$2)]]'''
$1 = Table
$2 = Panel
 
=== CopyFromView ===
 
Copies the current cell or selection from a specified table view just as if CTRL-C was pressed
 
'''[[CopyFromView|CopyFromView($1,$2)]]'''
$1 = Table
$2 = Panel
 
=== GetFilteredRows ===
 
Retrieves the filter mapping of view rows to actual rows into the list table


  '''[[GetFilteredRows|GetFilteredRows($1,$2,$3)]]'''
  '''[[GetFilteredRows|GetFilteredRows($1,$2,$3)]]'''
Line 2,150: Line 2,175:
  $3 = Panel
  $3 = Panel


=== GetTableView ===
=== GetTableView ===


Read columns of a table view into another table  
Read columns of a table view into another table


  '''[[GetTableView|GetTableView($1,$2,$3)]]'''
  '''[[GetTableView|GetTableView($1,$2,$3)]]'''
Line 2,160: Line 2,185:
  $3 = Config Table
  $3 = Config Table


=== ImportIntoView  ===
=== PasteIntoView ===


Imports the system clipboard into a table view starting at the specified Top Left cell. Returns zero on success  
Pastes the system clipboard into a table view starting at the specified Top Left cell. Returns zero on success


  '''[[ImportIntoView|$R = ImportIntoView($1,$2,$3,$4,$5,$6,$7)]]'''
  '''[[PasteIntoView|$R = PasteIntoView($1,$2,$3,$4,$5,$6,$7)]]'''
   
   
  $R = Error Result
  $R = Error Result
Line 2,175: Line 2,200:
  $7 = Cols Read
  $7 = Cols Read


=== ReFilterTableView ===
=== ReFilterTableView ===


Reapply any active filters to the current data in the table  
Reapply any active filters to the current data in the table


  '''[[ReFilterTableView|ReFilterTableView($1,$2)]]'''
  '''[[ReFilterTableView|ReFilterTableView($1,$2)]]'''
Line 2,184: Line 2,209:
  $2 = Panel
  $2 = Panel


=== SetTableView ===
=== SetTableView ===


Set columns that a table view will display  
Set columns that a table view will display


  '''[[SetTableView|SetTableView($1,$2,$3)]]'''
  '''[[SetTableView|SetTableView($1,$2,$3)]]'''
Line 2,194: Line 2,219:
  $3 = Config Table
  $3 = Config Table


=== SetTableViewColScroll ===
=== SetTableViewColScroll ===


Sets the column scroll of a view for a table on a given panel  
Sets the column scroll of a view for a table on a given panel


  '''[[SetTableViewColScroll|SetTableViewColScroll($1,$2,$3)]]'''
  '''[[SetTableViewColScroll|SetTableViewColScroll($1,$2,$3)]]'''
Line 2,204: Line 2,229:
  $3 = Value
  $3 = Value


=== SetTableViewRowScroll ===
=== SetTableViewRowScroll ===


Sets the row scroll of a view for a table on a given panel  
Sets the row scroll of a view for a table on a given panel


  '''[[SetTableViewRowScroll|SetTableViewRowScroll($1,$2,$3)]]'''
  '''[[SetTableViewRowScroll|SetTableViewRowScroll($1,$2,$3)]]'''
Line 2,214: Line 2,239:
  $3 = Value
  $3 = Value


=== TableViewColScroll ===
=== TableViewColScroll ===


Reads the column scroll of a view for a table on a given panel  
Reads the column scroll of a view for a table on a given panel


  '''[[TableViewColScroll|$R = TableViewColScroll($1,$2)]]'''
  '''[[TableViewColScroll|$R = TableViewColScroll($1,$2)]]'''
Line 2,224: Line 2,249:
  $2 = Panel
  $2 = Panel


=== TableViewRows ===
=== TableViewRows ===


Reads the number of rows in a table view. If a filter is set, this may differ from the number of rows in the table  
Reads the number of rows in a table view. If a filter is set, this may differ from the number of rows in the table


  '''[[TableViewRows|$R = TableViewRows($1,$2)]]'''
  '''[[TableViewRows|$R = TableViewRows($1,$2)]]'''
Line 2,234: Line 2,259:
  $2 = Panel
  $2 = Panel


=== TableViewRowScroll ===
=== TableViewRowScroll ===


Reads the row scroll of a view for a table on a given panel  
Reads the row scroll of a view for a table on a given panel


  '''[[TableViewRowScroll|$R = TableViewRowScroll($1,$2)]]'''
  '''[[TableViewRowScroll|$R = TableViewRowScroll($1,$2)]]'''
Line 2,244: Line 2,269:
  $2 = Panel
  $2 = Panel


=== TableViewVisibleCols ===
=== TableViewVisibleCols ===


Reads the number of visible columns in a table view  
Reads the number of visible columns in a table view


  '''[[TableViewVisibleCols|$R = TableViewVisibleCols($1,$2)]]'''
  '''[[TableViewVisibleCols|$R = TableViewVisibleCols($1,$2)]]'''
Line 2,254: Line 2,279:
  $2 = Panel
  $2 = Panel


=== TableViewVisibleRows ===
=== TableViewVisibleRows ===


Reads the number of visible rows in a table view  
Reads the number of visible rows in a table view


  '''[[TableViewVisibleRows|$R = TableViewVisibleRows($1,$2)]]'''
  '''[[TableViewVisibleRows|$R = TableViewVisibleRows($1,$2)]]'''
Line 2,264: Line 2,289:
  $2 = Panel
  $2 = Panel


== Time ==
== Time ==


=== DayOfMonth ===
=== DayOfMonth ===


Returns the day of the month, starting at 1  
Returns the day of the month, starting at 1


  '''[[DayOfMonth|$R = DayOfMonth($1)]]'''
  '''[[DayOfMonth|$R = DayOfMonth($1)]]'''
Line 2,275: Line 2,300:
  $1 = Time
  $1 = Time


=== DayOfWeek ===
=== DayOfWeek ===


Returns the day of the week, starting at 1 for Sunday  
Returns the day of the week, starting at 1 for Sunday


  '''[[DayOfWeek|$R = DayOfWeek($1)]]'''
  '''[[DayOfWeek|$R = DayOfWeek($1)]]'''
Line 2,284: Line 2,309:
  $1 = Time
  $1 = Time


=== DaysInDateMonth ===
=== DaysInDateMonth ===


Returns how many days in the month of the absolute time  
Returns how many days in the month of the absolute time


  '''[[DaysInDateMonth|$R = DaysInDateMonth($1)]]'''
  '''[[DaysInDateMonth|$R = DaysInDateMonth($1)]]'''
Line 2,293: Line 2,318:
  $1 = Time
  $1 = Time


=== FormDate ===
=== FormDate ===


Computes the absolute time representing midnight on the given date  
Computes the absolute time representing midnight on the given date


  '''[[FormDate|$R = FormDate($1,$2,$3)]]'''
  '''[[FormDate|$R = FormDate($1,$2,$3)]]'''
Line 2,304: Line 2,329:
  $3 = Year
  $3 = Year


=== HourOfDay ===
=== HourOfDay ===


Returns the hour into the current day of the time, starting at 0  
Returns the hour into the current day of the time, starting at 0


  '''[[HourOfDay|$R = HourOfDay($1)]]'''
  '''[[HourOfDay|$R = HourOfDay($1)]]'''
Line 2,313: Line 2,338:
  $1 = Time
  $1 = Time


=== HourOfDay+1 ===
=== HourOfDay+1 ===


Returns the hour into the current day of the time, starting at 1 instead of 0  
Returns the hour into the current day of the time, starting at 1 instead of 0


  '''[[HourOfDay+1|$R = HourOfDay_1($1)]]'''
  '''[[HourOfDay+1|$R = HourOfDay_1($1)]]'''
Line 2,322: Line 2,347:
  $1 = Time
  $1 = Time


=== IncrementByMonths ===
=== IncrementByMonths ===


Increments the date by one or more months, attempting to keep the same day of month  
Increments the date by one or more months, attempting to keep the same day of month


  '''[[IncrementByMonths|IncrementByMonths($R,$1)]]'''
  '''[[IncrementByMonths|IncrementByMonths($R,$1)]]'''
Line 2,331: Line 2,356:
  $1 = # of months
  $1 = # of months


=== MonthOfYear ===
=== MonthOfYear ===


Returns the month of the year, starting at 1 for January  
Returns the month of the year, starting at 1 for January


  '''[[MonthOfYear|$R = MonthOfYear($1)]]'''
  '''[[MonthOfYear|$R = MonthOfYear($1)]]'''
Line 2,340: Line 2,365:
  $1 = Time
  $1 = Time


=== TimeOfDay ===
=== TimeOfDay ===


Returns the number of seconds into the current day of the time  
Returns the number of seconds into the current day of the time  
Line 2,349: Line 2,374:
  $1 = Time
  $1 = Time


=== WeekOfYear ===
=== WeekOfYear ===


Returns the week of the year, starting at 1  
Returns the week of the year, starting at 1


  '''[[WeekOfYear|$R = WeekOfYear($1)]]'''
  '''[[WeekOfYear|$R = WeekOfYear($1)]]'''
Line 2,358: Line 2,383:
  $1 = Time
  $1 = Time


=== YearOfDate ===
=== YearOfDate ===


Returns the year of the given calendar time  
Returns the year of the given calendar time


  '''[[YearOfDate|$R = YearOfDate($1)]]'''
  '''[[YearOfDate|$R = YearOfDate($1)]]'''
Line 2,367: Line 2,392:
  $1 = Time
  $1 = Time


== Tuple ==
== Tuple ==


=== DecodeMultiLabelToTuple ===
=== DecodeMultiLabelToTuple ===


Extracts the fields of a multi-label to item attributes with names matching the label lists in the multi-label  
Extracts the fields of a multi-label to item attributes with names matching the label lists in the multi-label


  '''[[DecodeMultiLabelToTuple|DecodeMultiLabelToItem($R)]]'''
  '''[[DecodeMultiLabelToTuple|DecodeMultiLabelToItem($R)]]'''
Line 2,377: Line 2,402:
  $R = Target
  $R = Target


=== EncodeItemToMultiLabel ===
=== EncodeItemToMultiLabel ===


Combines item attributes to form a multi-label, for item attributes with names matching the label lists in the multi-label  
Combines item attributes to form a multi-label, for item attributes with names matching the label lists in the multi-label


  '''[[EncodeItemToMultiLabel|EncodeItemToMultiLabel($R)]]'''
  '''[[EncodeItemToMultiLabel|EncodeItemToMultiLabel($R)]]'''
Line 2,385: Line 2,410:
  $R = Target
  $R = Target


=== MatchedCopyRow ===
=== MatchedCopyRow ===


Copy rows between tables where the column names match  
Copy rows between tables where the column names match


  '''[[MatchedCopyRow|MatchedCopyRow($R,$1)]]'''
  '''[[MatchedCopyRow|MatchedCopyRow($R,$1)]]'''
Line 2,394: Line 2,419:
  $1 = Set To
  $1 = Set To


=== TupleAppendFromCarried ===
=== TupleAppendFromCarried ===


Append a row to the table and for it, set table columns from a carried item's attributes with the same name  
Append a row to the table and for it, set table columns from a carried item's attributes with the same name


  '''[[TupleAppendFromCarried|TupleAppendFromCarried($R,$1)]]'''
  '''[[TupleAppendFromCarried|TupleAppendFromCarried($R,$1)]]'''
Line 2,403: Line 2,428:
  $1 = Carried Index
  $1 = Carried Index


=== TupleAppendFromItem ===
=== TupleAppendFromItem ===


Append a row into the table and for it, set table columns from item attributes with the same name  
Append a row into the table and for it, set table columns from item attributes with the same name


  '''[[TupleAppendFromItem|TupleAppendFromItem($R)]]'''
  '''[[TupleAppendFromItem|TupleAppendFromItem($R)]]'''
Line 2,411: Line 2,436:
  $R = Table
  $R = Table


=== TupleCarriedToRow ===
=== TupleCarriedToRow ===


For the specified row, set table columns from a carried item's attributes with the same name  
For the specified row, set table columns from a carried item's attributes with the same name


  '''[[TupleCarriedToRow|TupleCarriedToRow($R,$1)]]'''
  '''[[TupleCarriedToRow|TupleCarriedToRow($R,$1)]]'''
Line 2,420: Line 2,445:
  $1 = Carried Index
  $1 = Carried Index


=== TupleDecrementToRow ===
=== TupleDecrementToRow ===


For the specified row, decrement cells with the values of item attributes with matching names  
For the specified row, decrement cells with the values of item attributes with matching names


  '''[[TupleDecrementToRow|TupleDecrementFromRow($R)]]'''
  '''[[TupleDecrementToRow|TupleDecrementFromRow($R)]]'''
Line 2,428: Line 2,453:
  $R = Row
  $R = Row


=== TupleExtractToCarried ===
=== TupleExtractToCarried ===


For the specified row, set a carried item's attributes from table columns with the same name then delete the row  
For the specified row, set a carried item's attributes from table columns with the same name then delete the row


  '''[[TupleExtractToCarried|TupleExtractToCarried($R,$1)]]'''
  '''[[TupleExtractToCarried|TupleExtractToCarried($R,$1)]]'''
Line 2,437: Line 2,462:
  $1 = Carried Index
  $1 = Carried Index


=== TupleExtractToItem ===
=== TupleExtractToItem ===


For the specified row, set item attributes from table columns with the same name then delete the row  
For the specified row, set item attributes from table columns with the same name then delete the row


  '''[[TupleExtractToItem|TupleExtractToItem($R)]]'''
  '''[[TupleExtractToItem|TupleExtractToItem($R)]]'''
Line 2,445: Line 2,470:
  $R = Row
  $R = Row


=== TupleIncrementToRow ===
=== TupleIncrementToRow ===


For the specified row, increment cells with the values of item attributes with matching names  
For the specified row, increment cells with the values of item attributes with matching names


  '''[[TupleIncrementToRow|TupleIncrementToRow($R)]]'''
  '''[[TupleIncrementToRow|TupleIncrementToRow($R)]]'''
Line 2,453: Line 2,478:
  $R = Row
  $R = Row


=== TupleInsertFromCarried ===
=== TupleInsertFromCarried ===


Insert a row into the table and for it, set table columns from a carried item's attributes with the same name  
Insert a row into the table and for it, set table columns from a carried item's attributes with the same name


  '''[[TupleInsertFromCarried|TupleInsertFromCarried($R,$1)]]'''
  '''[[TupleInsertFromCarried|TupleInsertFromCarried($R,$1)]]'''
Line 2,462: Line 2,487:
  $1 = Carried Index
  $1 = Carried Index


=== TupleInsertFromItem ===
=== TupleInsertFromItem ===


Insert a row into the table and for it, set table columns from item attributes with the same name  
Insert a row into the table and for it, set table columns from item attributes with the same name


  '''[[TupleInsertFromItem|TupleInsertFromItem($R)]]'''
  '''[[TupleInsertFromItem|TupleInsertFromItem($R)]]'''
Line 2,470: Line 2,495:
  $R = Row
  $R = Row


=== TupleItemToRow ===
=== TupleItemToRow ===


For the specified row, set table columns from item attributes with the same name  
For the specified row, set table columns from item attributes with the same name


  '''[[TupleItemToRow|TupleItemToRow($R)]]'''
  '''[[TupleItemToRow|TupleItemToRow($R)]]'''
Line 2,478: Line 2,503:
  $R = Row
  $R = Row


=== TupleRowToCarried ===
=== TupleRowToCarried ===


For the specified row, set a carried item's attributes from table columns with the same name  
For the specified row, set a carried item's attributes from table columns with the same name


  '''[[TupleRowToCarried|TupleRowToCarried($R,$1)]]'''
  '''[[TupleRowToCarried|TupleRowToCarried($R,$1)]]'''
Line 2,487: Line 2,512:
  $1 = Carried Index
  $1 = Carried Index


=== TupleRowToItem ===
=== TupleRowToItem ===


For the specified row, set item attributes from table columns with the same name  
For the specified row, set item attributes from table columns with the same name


  '''[[TupleRowToItem|TupleRowToItem($R)]]'''
  '''[[TupleRowToItem|TupleRowToItem($R)]]'''
Line 2,495: Line 2,520:
  $R = Row
  $R = Row


== UI ==
== UI ==


=== AddListToMenu ===
=== AddListToMenu ===


Appends a new menu to the modeller custom menu bar  
Appends a new menu to the modeller custom menu bar


  '''[[AddListToMenu|AddListToMenu($1,$2)]]'''
  '''[[AddListToMenu|AddListToMenu($1,$2)]]'''
Line 2,506: Line 2,531:
  $2 = Item List
  $2 = Item List


=== BrowseFile ===
=== BrowseFile ===


Browse for a file. Returns non zero if one chosen. $1 sets an initial file, $2 enables a save-style dialog. Use s.LastAccessedDataFile and s.LastAccessedDataFilePath to access the file and full path spec of the file selected.  
Browse for a file. Returns non zero if one chosen. $1 sets an initial file, $2 enables a save-style dialog. Use s.LastAccessedDataFile and s.LastAccessedDataFilePath to access the file and full path spec of the file selected.


  '''[[BrowseFile|$R = BrowseFile($1,$2)]]'''
  '''[[BrowseFile|$R = BrowseFile($1,$2)]]'''
Line 2,516: Line 2,541:
  $2 = Save Mode
  $2 = Save Mode


=== ClearCustomMenubar ===
=== ClearCustomMenubar ===


Removes all menu items from the modeller custom menu bar  
Removes all menu items from the modeller custom menu bar


  '''[[ClearCustomMenubar|ClearCustomMenubar]]'''
  '''[[ClearCustomMenubar|ClearCustomMenubar]]'''
   
   


=== Dialog ===
=== Dialog ===


Show a dialog box for the user to interact with  
Show a dialog box for the user to interact with


  '''[[Dialog|$R = Dialog($F)]]'''
  '''[[Dialog|$R = Dialog($F)]]'''
Line 2,532: Line 2,557:
  $F = Dialog
  $F = Dialog


=== HandlePopupMenu ===
=== HandlePopupMenu ===


Interprets columns in table as depth/name/index and generates a popup menu. Returns index of selected item or 0 if cancelled  
Interprets columns in table as depth/name/index and generates a popup menu. Returns index of selected item or 0 if cancelled


  '''[[HandlePopupMenu|$R = HandlePopupMenu($1)]]'''
  '''[[HandlePopupMenu|$R = HandlePopupMenu($1)]]'''
Line 2,541: Line 2,566:
  $1 = Table
  $1 = Table


=== InitiateFieldEdit ===
=== InitiateFieldEdit ===


Starts editing attribute/cell views on a panel, as if the user clicked on the first one  
Starts editing attribute/cell views on a panel, as if the user clicked on the first one


  '''[[InitiateFieldEdit|InitiateFieldEdit($1)]]'''
  '''[[InitiateFieldEdit|InitiateFieldEdit($1)]]'''
Line 2,549: Line 2,574:
  $1 = Target Panel
  $1 = Target Panel


=== SetMenuBar ===
=== SetMenuBar ===


Interprets columns in table as depth/name/index and builds a custom menu bar  
Interprets columns in table as depth/name/index and builds a custom menu bar


  '''[[SetMenuBar|SetMenuBar($1)]]'''
  '''[[SetMenuBar|SetMenuBar($1)]]'''
   
   
  $1 = Table
  $1 = Table


[[Category:Routine]] [[Category:Data]]
[[Category:Routine]] [[Category:Data]]

Revision as of 19:06, 6 December 2008

This page lists all of the routine operations available in Planimate as of 5.09m. The operations all link to pages with their name but most of these pages will not exist. Where an operation warrants further discussion, these links can be followed and the pages created.

This page is automatically created. Please do not edit it.

Arithmetic

Add ( + )

Add two values/rows/columns/tables

$R = $1 + $2

$R = Result
$1 = Value 1
$2 = Value 2

Clear

Set the target value to its initialising value

$R = CLEAR

$R = Clear

Dec ( -= )

Decrement first value/row/column/table by second value

$R -= $1

$R = Result
$1 = Decr. by

Div ( / )

Divide values/rows/columns/tables

$R = $1 / $2

$R = Result
$1 = Value 1
$2 = Value 2

Inc ( += )

Increment first value/row/column/table by second value

$R += $1

$R = Result
$1 = Incr. by

InterpolateValue

Interpolates a value between value1 and value2 based on ratio (0.0 gives value1, 1.0 gives value2)

$R = InterpolateValue($1,$2,$3)

$R = Result
$1 = Value1
$2 = Value2
$3 = Ratio

Mul ( * )

Multiply values/rows/columns/tables

$R = $1 * $2

$R = Result
$1 = Value 1
$2 = Value 2

Scale ( *= )

Scale first value/row/column/table by second value

$R *= $1

$R = Result
$1 = Scale by

Set ( = )

Assign a value/row/column/table to another of the same type and size

$R = $1

$R = Result
$1 = Set To

Sub ( - )

Subtract two values/rows/columns/tables

$R = $1 - $2

$R = Result
$1 = Value 1
$2 = Value 2

Control

BREAKLOOP

Immediately exits an ITERATE loop

BREAKLOOP

CASE

Tests a condition and if true, executes the code following until another CASE or DEFAULT is reached

CASE ($F)

$F = CASE

DEFAULT

Marks code that should be executed if no CASES match in a SELECT block

DEFAULT

ELSE

Enables an alternate block of code to execute if an IF test fails to be true

ELSE

ENDIF

Marks the end of an IF block

ENDIF

ENDLOOP

Marks the end of an ITERATE block

ENDLOOP

ENDSELECT

Marks the end of a SELECT block

ENDSELECT

ENDWHILE

Marks the end of a WHILE block

ENDWHILE

IF

Executes lines following only if the condition is true

IF ($F)

$F = IF

ITERATE

Repeats a block of routine lines, incrementing an attribute over a range

ITERATE $R FROM $1 TO $2

$R = Index Using
$1 = First Value
$2 = Last Value

ITERATEROWS

Iterate Row Index over all the rows in the table

ITERATEROWS $R OVER $1

$R = Row Index 
$1 = Table     

REVERSEITERATE

Iterate the result attribute over the given range in descending order

REVERSEITERATE $R FROM $1 TO $2

$R = Index Using
$1 = First Value
$2 = Last Value

SELECT

Starts a block where CASEs can be used to execute different code for conditions tested

SELECT

WHILE

Repeats a block of lines until the condition is false; the condition is tested first

WHILE ($F)

$F = WHILE

Display

Animate

Animate a model object to a new screen position

Animate($1,$2,$3)

$1 = Object
$2 = X Pos 
$3 = Y Pos 

ChooseColor

Shows the color palette selector dialog

$R = ChooseColor($1)

$R = Result
$1 = Selection Color

ColorPaletteEntry

Returns the RGB color for a given color index in the Planimate color palette

$R = ColorPaletteEntry($1)

$R = Result       
$1 = Palette Index

FitPanelToArea

Fits the panel to the area of its contents with a margin

FitPanelToArea($1,$2)

$1 = Target Panel
$2 = Margin

ForceRepaint

Repaints all windows; use with care, it can cause slowdown

ForceRepaint

ForceRepaintPanel

Repaints the specified panel

ForceRepaintPanel($1)

$1 = Panel

GetSystemColorRGB

Returns the RGB color for a given color in the Windows system color palette

$R = GetSystemColorRGB($1)

$R = Result
$1 = Value

GetViewportScrollX

Get the x scroll of a viewport on a given panel

$R = GetViewportScrollX($1,$2)

$R = Result
$1 = Panel With Viewport  
$2 = Panel Inside Viewport

GetViewportScrollY

Get the y scroll of a viewport on a given panel

$R = GetViewportScrollY($1,$2)

$R = Result
$1 = Panel With Viewport  
$2 = Panel Inside Viewport

GetViewportZoom

Get the zoom factor of a viewport on a given panel

$R = GetViewportZoom($1,$2)

$R = Result
$1 = Panel With Viewport  
$2 = Panel Inside Viewport

GraphXOffset

Read the offset of a graph view for a table on the given panel

$R = GraphXOffset($1,$2)

$R = Target
$1 = Table
$2 = Panel

GraphXWidth

Read the width of a graph view for a table on the given panel

$R = GraphXWidth($1,$2)

$R = Target
$1 = Table
$2 = Panel

HidePanel

Hides any popup for the given panel

HidePanel($1)

$1 = Target Panel

HideTableEditor

Close any open table editor for the given table

HideTableEditor($1)

$1 = Table

MakeVisible

Makes the specified panel the active panel on the main window

MakeVisible($1)

$1 = Target Subsystem

PanelWindowLeft

Returns the left window co-ordinate of a popup panel

$R = PanelWindowLeft($1)

$R = Result
$1 = Panel 

PanelWindowTop

Returns the top window co-ordinate of a popup panel

$R = PanelWindowTop($1)

$R = Result
$1 = Panel 

PrintPanel

Queues the nominated panel for printing; additional panels can be printed by intercepting the _Panel Printed broadcast

PrintPanel($1)

$1 = Target Subsystem

RepaintObjects

Forces a repaint of dynamic objects only; faster than a full force repaint

RepaintObjects

SetActivityString

Sets text in the status bar activity area

SetActivityString($1)

$1 = Activity Text

SetColorPaletteEntry

Sets the RGB color for a given color in the Planimate color palette

SetColorPaletteEntry($1,$2)

$1 = Palette Index
$2 = RGB Value    

SetGraphXOffset

Set the offset of a graph view for a table on the given panel

SetGraphXOffset($1,$2,$3)

$1 = Table
$2 = Panel
$3 = Value

SetGraphXWidth

Set the width of a graph view for a table on the given panel

SetGraphXWidth($1,$2,$3)

$1 = Table
$2 = Panel
$3 = Value

SetPanelColor

Sets the background color of a panel

SetPanelColor($1,$2)

$1 = Panel 
$2 = Color

SetPanelTransparency

Enables the use of transparency for a panel, value 0..254 or 255 to disable transparency

SetPanelTransparency($1,$2)

$1 = Panel 
$2 = Transparency

SetStatusItemAreaString

Sets the text in the status bar area where item class names are displayed during editing

SetStatusItemAreaString($1)

$1 = Item Area Text

SetViewportScroll

Set the x and y scroll of a viewport on a given panel

SetViewportScroll($R,$1,$2,$3)

$R = Panel With Viewport  
$1 = Panel Inside Viewport
$2 = X Offset
$3 = Y Offset

SetViewportTarget

Set the target of a viewport. Current Panel identifies the viewport and can be zero of the containing panel only has 1 viewport. New Panel sets the new panel to display, 0 makes the viewport hidden in user mode.

SetViewportTarget($1,$2,$3)

$1 = Panel With Viewport  
$2 = Current Panel Inside Viewport
$3 = New Panel Inside Viewport

SetViewportZoom

Set the zoom factor of a viewport on a given panel

SetViewportZoom($R,$1,$2)

$R = Panel With Viewport  
$1 = Panel Inside Viewport
$2 = Zoom Value

ShowPopupPanel

Opens the given panel in a separate window at the specified window co-ordinates

ShowPopupPanel($1,$2,$3)

$1 = Target Panel
$2 = X Position
$3 = Y Position

ShowTableEditor

Open table editor for the given table

ShowTableEditor($1)

$1 = Table

SwapPopupPanel

Swaps which panels are visible in a popup panel without closing/reopening it

SwapPopupPanel($1,$2)

$1 = Target Panel 
$2 = Replace With 

Label

AddLabelDialog

Show a dialog so the user can add a label to the given label list

AddLabelDialog($R)

$R = Result

AddSubLabel

Makes the new sublabel for the parent label $1 (if it doesn't exist) and returns its index as a sublabel

AddSubLabel($R,$1)

$R = Result
$1 = Label

ClearLabelList

Removes all labels from a label list

ClearLabelList($1)

$1 = Clear Label List

CreateLabelList

Creates a label list with the given name and formats the result attribute to reference it

CreateLabelList($R,$1)

$R = Format Result
$1 = List Name

CreateLabelListFromCol

Uses the provided column to provide text for creating a new label list

CreateLabelListFromColumn($R,$1)

$R = Target List  
$1 = Source Column

CreatePanelPortalLabel

Creates a panel label for the subsystem of the given portal object label

$R = CreatePanelPortalLabel($1)

$R = New Panel Label    
$1 = Portal Object Label

CreateSubLabelList

Creates an empty sub label list of an existing label list and formats an attribute to reference it

CreateSubLabelList($R,$1,$2)

$R = Format Result
$1 = List Name
$2 = Parent List

CreateSubsystemObjectLabel

$R = CreateSubsystemObjectLabel()

$R = New Object Label

DeleteLabel

Deletes the given label from its labellist

DeleteLabel($1)

$1 = Label

LabelCount

Returns how many labels in the given label list

$R = LabelCount($1)

$R = Result
$1 = Label Count

MaxLabelIndex

Returns the highest allocated label index in the given label list

$R = MaxLabelIndex()

$R = Result

MinLabelIndex

Returns the lowest allocated label index in the given label list

$R = MinLabelIndex()

$R = Result

NextLabelIndex

The next allocated label index for the list or -1 if none

$R = NextLabelIndex($1)

$R = Result
$1 = Label Index

PrevLabelIndex

The previous allocated label index for the list or -1 if none

$R = PrevLabelIndex($1)

$R = Result
$1 = Label Index

ReIndexLabelList

Re-indexes all members in a label list so they have ascending and continuous index values

ReIndexLabelList($1)

$1 = Re-index Label List

ReIndexLabels

Remaps labels in the given list using 2 columns of matching from and to values

ReIndexLabels($1,$2,$3)

$1 = Re-index List    
$2 = From Values (Col)
$3 = To Values (Col)  

RemoveSubLabel

Removes the sublabel as a member of the sublabel list

RemoveSubLabel($1)

$1 = Label

TestLabelIndex

Tests whether an index has been used in a label list

$R = TestLabelIndex($1,$2)

$R = Result
$1 = Index Value
$2 = Label List

Label String

AppendToLabel

Append text to an existing label

AppendToLabel($R,$1)

$R = Result
$1 = Source

CreatePasswordHash

Uses the 3 text sources to create an unpredictable hash string

$R = CreatePasswordHash($1,$2,$3)

$R = Result
$1 = Text-1
$2 = Text-2
$3 = Text-3

CropToCharacters

Crop a label to a subset of its text

CropToCharacters($R,$1,$2)

$R = Result
$1 = From Char
$2 = To Char

ExtractFileExtention

Create a label in the target label list which is the file extention of the path/file text

ExtractFileExtention($R,$1)

$R = Result   
$1 = Path/File

ExtractFileName

Create a label in the target label list which is the file name from a full path/file text

ExtractFileName($R,$1)

$R = Result   
$1 = Path/File

ExtractIntoFormat

Extracts a substring from a formatted value/label and interprets it in the format of the target. If the target is a label list, it gets added as a label if its not already in that list.

$R = ExtractIntoFormat($1,$2,$3)

$R = Result
$1 = Label
$2 = From Char
$3 = To Char

ExtractPathName

Create a label in the target label list which is the file name from a full path/file text

ExtractPathName($R,$1)

$R = Result   
$1 = Path/File

FilesInFolder

Returns how many files matching a wildcard in the given folder

$R = FilesInFolder($1)

$R = Target List
$1 = Path/File  

FilesInHierarchy

Retrieve how many files in a file folder (including subfolders)

$R = FilesInHierarchy($1)

$R = Target List
$1 = Path/File  

FormatIntoLabel

Create a new label with the formatted text of the source

FormatIntoLabel($R,$1)

$R = Result
$1 = Source

FormatIntoLabelIndex

Creates a label from the text of source and using the provided index

$R = FormatIntoLabelIndex($1,$2)

$R = Result
$1 = Source
$2 = Index

FormatNameIntoLabel

Creates a label from the name of the given object

$R = FormatNameIntoLabel($1)

$R = Result
$1 = Source

FormattedLabelIndex

Determines if the source text is a label and returns its index if it is

$R = FormattedLabelIndex($1)

$R = Result
$1 = Source

FormattedWidth

Returns how many characters the referenced data has when it is formatted for display

$R = FormattedWidth($1)

$R = Target
$1 = Width Of

FormatTitleIntoLabel

Creates a label from the title text of the given object

$R = FormatTitleIntoLabel($1)

$R = Result
$1 = Source

GetAppDataName

Get a full documents and settings/Application Data path/file including a subfolder and a filename. Sets s.LastAccessedDataFilePath and returns non zero if the folder was created/verified writeable.

$R = GetAppDataName($1,$2)

$R = Result
$1 = Folder
$2 = Filename

GetCharacter

Extracts a character from the formatted value provided and returns the ascii code

$R = GetCharacter($1,$2)

$R = Target   
$1 = String   
$2 = Character

GetMyDocumentsName

Get a full My Documents path/file including a subfolder and a filename. Sets s.LastAccessedDataFilePath and returns non zero if the folder was created/verified writeable.

$R = GetMyDocumentsName($1,$2)

$R = Result
$1 = Folder
$2 = Filename

GetProgramName

Get the folder containing the running Planimate EXE and append a filename. Sets s.LastAccessedDataFilePath.

GetProgramName($1)

$1 = Filename

RemoveFileExtention

Crop label to remove trailing dot and text

RemoveFileExtention($R)

$R = Result

RenameLabel

Change the text of a label

RenameLabel($R,$1)

$R = Result
$1 = Source

SetFreeTextTitle

Sets title of free text editor dialog

SetFreeTextTitle($1)

$1 = Title Text

Logical

BitAND

Treat values as integers and bitwise AND them (limited to 14 bits of precision)

$R = BitAND($1,$2)

$R = Result
$1 = Value 1
$2 = Value 2

BitOR

Treat values as integers and bitwise OR them (limited to 14 bits of precision)

$R = BitOR($1,$2)

$R = Result
$1 = Value 1
$2 = Value 2

BitXOR

Treat values as integers and bitwise XORs them (limited to 14 bits of precision)

$R = BitXOR($1,$2)

$R = Result
$1 = Value 1
$2 = Value 2

Condition

Evaluate a condition specified in a dialog

$R = Condition($F)

$R = Result
$F = Set using

EQ ( == )

Determines if 2 values are numerically close to each other

$R = $1 == $2

$R = Result
$1 = Value 1
$2 = Value 2

GE ( >= )

Determines if the first value is greater than or equal to the second

$R = $1 >= $2

$R = Result
$1 = Value 1
$2 = Value 2

GT ( > )

Determines if the first value is significantly greater than the second value

$R = $1 > $2

$R = Result
$1 = Value 1
$2 = Value 2

LE ( <= )

Determines if the first value is less than or equal to the second

$R = $1 <= $2

$R = Result
$1 = Value 1
$2 = Value 2

LT ( < )

Determines if the first value is significantly less than the second value

$R = $1 < $2

$R = Result
$1 = Value 1
$2 = Value 2

NEQ ( != )

Determines if 2 values are not numerically close to each otherclose to each other

$R = $1 != $2

$R = Result
$1 = Value 1
$2 = Value 2

Message

Broadcast

Sends a broadcast to the entire model, optionally including the item's attributes

Broadcast($1,$2)

$1 = Broadcast Index
$2 =  With Item Info

BroadcastScoped

Sends a broadcast to a specified dynamic panel and all under it, optionally including the item's attributes

BroadcastScoped($1,$2,$3)

$1 = Broadcast Index
$2 =  With Item Info
$3 = Send To Subsystem

BroadcastToPanel

Sends a broadcast to a specified dynamic panel, optionally including the item's attributes

BroadcastToPanel($1,$2,$3)

$1 = Broadcast Index
$2 =  With Item Info
$3 = Send To Subsystem

ImmediateMessage

Send a message whilst the item waits at the change object

ImmediateMessage($1)

$1 = Message Target 

ImmediateMessageNamed

Send a message to a specified portal with a specific name whilst the item waits at the change object

ImmediateMessageNamed($1,$2)

$1 = Message Target 
$2 = Message Name   

ReleaseWaitingItem

Used to signal a waiting dispatcher on the target panel that a given item should be released

$R = ReleaseWaitingItem($1,$2)

$R = Result
$1 = Item Index
$2 = Scope Panel

ReverseItemDirection

Searches spatial links for the item and if found, reverses the direction of the item

$R = ReverseItemDirection($1,$2)

$R = Result
$1 = Item Index
$2 = Scope Panel

Numeric

abs

Magnitude of a value, without the sign

$R = abs($1)

$R = Result
$1 = Value 1

max

Determines the greater of 2 values

$R = max($1,$2)

$R = Result
$1 = Value 1
$2 = Value 2

min

Determines the lesser of 2 values

$R = min($1,$2)

$R = Result
$1 = Value 1
$2 = Value 2

mod

Modulus of $1 over base $2

$R = mod($1,$2)

$R = Result
$1 = Value 1
$2 = Value 2

random

Random value between 0 and 1

$R = random($F)

$R = Result
$F = Set to

round

Integer closest to the value

$R = round($1)

$R = Result
$1 = Round Value

RoundToN

Round value to the specified number of digits of precision

$R = RoundToN($1,$2)

$R = Result
$1 = Round Value
$2 = Sig. Digits

trunc

Integer equal or lower than the value

$R = trunc($1)

$R = Result
$1 = Truncate

Paint

CopyPaintObject

Enables a paint object to be copied, optionally keeping it inherited from the given master

$R = CopyPaintObject($1,$2,$3)

$R = New Paint Label       
$1 = Original Paint Label
$2 = Destination Panel   
$3 = Inherit The Copy    

CopyPaintProperties

Copies the graphical properties between paint objects

CopyPaintProperties($1,$2)

$1 = Paint Object To Update
$2 = Original Paint Object 

DeleteAllPaintObjects

Delete all paint objects on the given panel

DeleteAllPaintObject($1)

$1 = Target Panel

DeleteInheritedPaintObjects

Removes all paint objects which inherit from a given panel

DeleteInheritedPaintObjects($1,$2)

$1 = Target Pane     
$2 = Un Inherit Panel

DeletePaintObject

Deletes a paint object

DeletePaintObject($1,$2)

$1 = Paint Label   
$2 = With Inherited

GetPaintProperty

Read a property of a paint object

$R = GetPaintProperty($1,$2)

$R = Result
$1 = Paint Object Label
$2 = Property Label    

InheritPaintObjects

Enables a panel to be populated with paint objects from another panel

InheritPaintObjects($1,$2)

$1 = Target Panel      
$2 = Inherit From Panel

InterpolateColor

Interpolates an RGB color between color1 and color2 based on ratio (0.0 gives color1, 1.0 gives color2)

$R = InterpolateColor($1,$2,$3)

$R = Result
$1 = Color1
$2 = Color2
$3 = Ratio

SetNoteVisible

Shows or hides an RTF note

SetNoteVisible($1,$2)

$1 = Paint Object Label
$2 = Visibility        

SetPaintImage

Sets the image of a paint object

SetPaintImage($1,$2)

$1 = Paint Object Label
$2 = Set Image To

SetPaintPosition

Moves a paint object to a new position

SetPaintPosition($1,$2,$3)

$1 = Paint Object Label
$2 = X Pos (lower left)
$3 = Y Pos (lower left)

SetPaintProperty

Set a property of a paint object directly

SetPaintProperty($1,$2,$3)

$1 = Paint Object Label
$2 = Property Label    
$3 = Property Value    

SetPaintText

Sets the text of a paint object

SetPaintText($1,$2,$3)

$1 = Paint Object Label
$2 = Set Text/File To  
$3 = For All States    

SetPaintTip

Sets the tool tip text of a paint object

SetPaintTip($1,$2,$3)

$1 = Paint Object Label
$2 = Set Tip To  
$3 = For All States    

Route

AssignRoute

Sets an item's track route from a route table

AssignRoute($1)

$1 = Timetable Source

ClearRoute

Clear an item's routing database

ClearRoute()

EnableTrackCheckNext

Used during lookahead, this enables a modeller to signal objects downstream of a lookahead that the current lookahead is for track capacity purposes and wont be taken immediately. It automatically resets when lookahead unwinds behind the routine.

EnableTrackCheckNext()

FillRouteSteps

Fills in all intermediate portals and loops in an item's track route

FillRouteSteps($1)

$1 = Include Loops (1=yes)

InsertRouteStep

Insert a track route step into an item's internal routing database

InsertRouteStep($1,$2)

$1 = Route Step
$2 = Route Location

ReadRoute

Reads an item's track route into a table

ReadRoute($R)

$R = Timetable Target

RegisterBlockedTrain

Register the item (train) into the track blocked list

RegisterBlockedTrain()

RoadsInTrackSection

Returns how many roads a given track section has been configured for

$R = RoadsInTrackSection($1)

$R = Target
$1 = Section

TrackSectionType

Returns the type of a track section (_section_types label list)

$R = TrackSectionType($1)

$R = Target
$1 = Section

UnblockTrain

Attempt unblock of specific train id or all blocked trains if id is 0

UnblockTrain($1)

$1 = Item ID

Row/Column

Average

Determines the average of values in a row or column

$R = Average($1,$2,$3)

$R = Result
$1 = Average of
$2 = From
$3 = To

MaxIndex

Determines the index of the highest value in a row or column

$R = MaxIndex($1,$2,$3)

$R = Result
$1 = Max of
$2 = From
$3 = To

MinIndex

Determines the index of the lowest value in a row or column

$R = MinIndex($1,$2,$3)

$R = Result
$1 = Min of
$2 = From
$3 = To

StdDev

Determines the Standard Deviation of values in a row or column

$R = StdDev($1,$2,$3)

$R = Result
$1 = StdDev of
$2 = From
$3 = To

Sum

Determines the sum of values in a row or column

$R = Sum($1,$2,$3)

$R = Result
$1 = Sum of
$2 = From
$3 = To

SumSquared

Determines the sum of squares of values in a row or column

$R = SumSquared($1,$2,$3)

$R = Result
$1 = Sum/Sqr of
$2 = From
$3 = To

Scientific

arccos

Inverse cosine function, returns radians

$R = arccos($1)

$R = Result
$1 = Value

arcsin

Inverse sine function, returns radians

$R = arcsin($1)

$R = Result
$1 = Value

arctan

Inverse tan function, returns radians

$R = arctan($1)

$R = Result
$1 = Value

atan2

Determines angle (in radians) given x and y displacement

$R = atan2($1,$2)

$R = Result
$1 = Numerator (Y)
$2 = Denominator (X)

cos

Cosine function, value in radians

$R = cos($1)

$R = Result
$1 = Value

DegToRad

Converts degrees to radians

$R = DegToRad($1)

$R = Result
$1 = Value

exp

Calculates $1 to the power of E

$R = exp($1)

$R = Result
$1 = Value

hypot

Hypotenuse of right angled triangle with given sides

$R = hypot($1,$2)

$R = Result
$1 = X Value
$2 = Y Value

log10

Calculates the decimal logarithm of the value

$R = log10($1)

$R = Result
$1 = Value

logN

Calculates the natural logarithm of the value

$R = logN($1)

$R = Result
$1 = Value

pow

Calculates $1 to the power of $2

$R = pow($1,$2)

$R = Result
$1 = Value
$2 = Power

RadToDeg

Converts radians to degrees

$R = RadToDeg($1)

$R = Result
$1 = Value

sin

Sine function, value in radians

$R = sin($1)

$R = Result
$1 = Value

sqr

Value multiplied by itself

$R = sqr($1)

$R = Result
$1 = Value

sqrt

Square root of value

$R = sqrt($1)

$R = Result
$1 = Value

tan

Tan function, value in radians

$R = tan($1)

$R = Result
$1 = Value

Spatial Link

AddBendPoint

Adds a bend point to a spatial link between the two objects specified

AddBendPoint($R,$1,$2,$3)

$R = From Object
$1 = To Object 
$2 = X Position
$3 = Y Position

AddDirectionalLink

Adds a spatial link between objects which can only be traversed in the forward direction

AddDirectionalLink($1,$2)

$1 = From Object
$2 = To Object 

AddSpatialLink

Add a spatial link between the two objects labels specified

AddSpatialLink($1,$2)

$1 = From Object
$2 = To Object 

ClearSpatialCache

Instructs Planimate to update spatial link information after links are created or objects are moved

ClearSpatialCache()

CopySpatialLink

Creates a spatial link between objects, copying an existing link's properties

CopySpatialLink($1,$2,$3)

$1 = From Object
$2 = To Object 
$3 = Copy Link 

DeletePanelSpatialLinks

Deletes all spatial links on a given panel

DeletePanelSpatialLinks($1)

$1 = Panel

RemoveSpatialLink

Removes any spatial links from and to the specified object labels (directional)

RemoveSpatialLink($1,$2)

$1 = From Object
$2 = To Object 

SetItemTransitTarget

Sets the destination an item will look for once it enters a spatial link

SetItemTransitTarget($1)

$1 = To Target

SetItemTransitTime

Sets the time an item will take to reach its destination once it enters a spatial link

SetItemTransitTime($1)

$1 = To Time

SetLinkColor

Sets the color of a spatial link between 2 given objects

SetLinkColor($1,$2,$3)

$1 = From Object
$2 = To Object 
$3 = Color     

SetLinkCost

Sets the link cost of a spatial link (normally computed from the link's distance)

SetLinkCost($1,$2,$3)

$1 = From Object
$2 = To Object 
$3 = Cost      

SetSpatialLinkWidth

Sets the width of a spatial link between two objects

SetSpatialLinkWidth($1,$2,$3)

$1 = From Object
$2 = To Object 
$3 = Width     

Special

---| Only During Move |---

Enables the modeller to specifically mark that the following routine lines do not execute during lookahead

 Only During Move |---||----- Following Only During Move -----|

BREAKPOINTIF

If the parameter is true, this interrupts the routine and displays a debugging dialog enabling inspection of the models state

BREAKPOINTIF ($1)

$1 = Enable Break 

CallDLL

Enables a Planimate compatible DLL to be called

$R = CallDLL($F)

$R = Result
$F = Set to

CallRoutine

Calls a subroutine

CallRoutine($F)

$F = Call

Comment (//)

A comment line

Comment

CopyFont

Copies the font properties between cells and columns

CopyFont($R,$1)

$R = Format Result
$1 = Format From

CopyFormat

Copies the format/unit type/label reference between cells, columns and attributes

CopyFormat($R,$1)

$R = Format Result
$1 = Format From

DescribeRoutineData

Describe the data accessed by a change object routine

DescribeRoutineData($1,$2,$3)

$1 = Routine Panel
$2 = Object Name
$3 = Output Filename

EncodeRGB

Encodes red, green and blue components (0..255) into a single value used to specify any color

$R = EncodeRGB($1,$2,$3)

$R = Result
$1 = Red Value
$2 = Green Value
$3 = Blue Value

FormatForList

Formats the result object to reference a label list with the given name

FormatForList($R,$1)

$R = Format Result
$1 = List Name

GetFormat

Returns the value format of the data

$R = GetFormat($1)

$R = Result
$1 = Data To Test

GetFormatListName

Creates a new label with the name of the label list the target is formatted to. If no list, no change to the target is made

GetFormatListName($R,$1)

$R = Result
$1 = Data To Test

ListRoutineCode

Write a change object routine code to a file

ListRoutineCode($1,$2,$3)

$1 = Routine Panel
$2 = Object Name
$3 = Output Filename

LoadDataSet

Initiates loading of a given data set from a file name specified by a label

LoadDataSet($1,$2)

$1 = Data Set #
$2 = File Name 

LoadDataSet2

Load a version 2 dataset

$R = LoadDataSet2($1,$2,$3)

$R = Result
$1 = Definition Table
$2 = File Name 
$3 = Pass Phrase

ObjectType

Returns the type of the object that the object label refers to

$R = ObjectType($1)

$R = Result
$1 = Object

SaveDataSet

Initiates saving of a given data set to a file name specified as a label

SaveDataSet($1,$2)

$1 = Data Set #
$2 = File Name 

SaveDataSet2

Save a version 2 dataset

$R = SaveDataSet2($1,$2,$3)

$R = Result
$1 = Definition Table
$2 = File Name 
$3 = Pass Phrase

SetFormat

Sets format of $1 to mode $2, with $3 being the label list name if its a label format

SetFormat($1,$2,$3)

$1 = Data To Set
$2 = Format
$3 = List Name

SetLastDataFile

Sets the last data filename, optionally visible in the titlebar

SetLastDataFile($1)

$1 = Name

StartScheduledEntries

Signals that scheduled entries should start (if options deferred them starting when the model was run)

StartScheduledEntries

Table

AdvancedSort

Performs a sort on a table using another table to define the sort criteria

AdvancedSort($R,$1)

$R = Target   
$1 = Sort Info

AllocateTableRowMemory

Enables memory to be reserved for a table which is expected to grow to a large number of rows

AllocateTableRowMemory($R,$1)

$R = Target Table 
$1 = Allocate Rows

AppendCol

Append a column to a table

AppendColumn($R)

$R = Target

AppendRow

Append a row to the table

AppendRow($R)

$R = Target

BlockMove

Block copy a range of cells to another table

BlockMove($R,$1,Range[$2][$3])

$R = Result
$1 = Source
$2 = # of Rows
$3 = # of Cols

CopyToClipboard

Copy table to clipboard using its clipboard settings and the option modifiers

CopyToClipboard($R,$1)

$R = From Table
$1 = Options

CreateSortIndex

Creates an ordered list of row numbers if the given column was sorted alphabetically

CreateSortIndex($R,$1)

$R = Target Column 
$1 = Column To Sort

DeleteCol

Delete a range of columns from a table

DeleteColumn($R,$1,$2)

$R = Target Table
$1 = First Col
$2 = Col Count

DeleteRow

Delete a number of rows starting at a given row in a table

DeleteRow($R,$1,$2)

$R = Target Table
$1 = First Row
$2 = Row Count

EnableColumnEditing

Controls whether a given table column can be edited

EnableColumnEditing($R,$1)

$R = Target Column
$1 = Edit Control 

GetColumnProperty

Read a property of a table column

$R = GetColumnProperty($1,$2)

$R = Result
$1 = Table Column
$2 = Property Label    

InsertCol

Insert columns into a table with the option of copying formatting from another column

InsertColumn($R,$1,$2,$3)

$R = Target Table
$1 = Insert Pos.
$2 = Col Count
$3 = Copy Format

InsertRow

Insert a number of rows at a given row in a table

InsertRow($R,$1,$2)

$R = Target Table
$1 = Insert Pos.
$2 = Row Count

OutOfScopeWrite

Enable writing to item table reference $1 even if it is not in scope

OutOfScopeWrite($1)

$1 = Item Table Ref

PasteFromClipboard

Paste the clipboard into the table using its clipboard options and the modifiers

PasteFromClipboard($R,$1)

$R = Target Table
$1 = Configure   

PurgeDuplicateRows

Removes any identical rows from the given table

PurgeDuplicateRows($R)

$R = Target

RegenerateBillboardTable

Regenerate a billboard table to reflect changes in the model

RegenerateBillboardTable($R)

$R = Billboard Table

Search

Search table until a condition is true

$R = Search($F)

$R = Result
$F = Set to

SetCellFreeText

Sets the free text (not bound by label text rules) for a table cell

SetCellFreeText($R,$1)

$R = Target Cell
$1 = Source Cell

SetColAlignment

Enables a column's text alignment to be changed

SetColumnAlignment($R,$1)

$R = Target Column
$1 = Align Mode   

SetColSecondTitle

Sets the text of the second title row for the given column

SetColumnSecondTitle($R,$1)

$R = Target Column
$1 = Title Text

SetColTitle

Set the title text of a table column

SetColumnTitle($R,$1)

$R = Target Column
$1 = Title Text

SetColTupleName

Sets the name used to internally identify a column

SetColumnTupleName($R,$1)

$R = Target Column
$1 = Tuple Text

SetColumnProperty

Set a property of a table column

SetColumnProperty($1,$2,$3)

$1 = Table Column
$2 = Property Label    
$3 = Property Value    

SetColWidth

Sets the formatting width of a table column

SetColWidth($R,$1)

$R = Target Column
$1 = Column Width

SetTableRowHeight

Sets the height of table rows

SetTableRowHeight($1,$2)

$1 = Target Table
$2 = Row Height

SetTableTitle

Set the title text of the table from the label

SetTableTitle($R,$1)

$R = Target Table
$1 = Title Text

ShiftCol

Shift the columns in a table

ShiftColumn($R,$1,$2)

$R = Result
$1 = Source
$2 = Shift <+ ->

ShiftRow

Shift the rows in a table

ShiftRow($R,$1,$2)

$R = Result
$1 = Source
$2 = Shift ^+ -v

Sort

Sort table by up to 3 columns

Sort($R,$1,$2,$3)

$R = Target
$1 = Primary Col.
$2 = Second Col.
$3 = Third Col.

TableReferenceSet

Returns non zero if the reference resolves to a table

$R = TableReferenceSet($1)

$R = Result
$1 = Item Table Ref

TableSortDialog

Enables the user to set up and perform a sort using the table sort dialog

TableSortDialog($R)

$R = Target

Table View

ClearFilter

Clear filter settings for a table view

ClearFilter($1,$2)

$1 = Table
$2 = Panel

CopyFromView

Copies the current cell or selection from a specified table view just as if CTRL-C was pressed

CopyFromView($1,$2)

$1 = Table
$2 = Panel

GetFilteredRows

Retrieves the filter mapping of view rows to actual rows into the list table

GetFilteredRows($1,$2,$3)

$1 = Filter List
$2 = Table
$3 = Panel

GetTableView

Read columns of a table view into another table

GetTableView($1,$2,$3)

$1 = View Table
$2 = View Panel
$3 = Config Table

PasteIntoView

Pastes the system clipboard into a table view starting at the specified Top Left cell. Returns zero on success

$R = PasteIntoView($1,$2,$3,$4,$5,$6,$7)

$R = Error Result
$1 = Table
$2 = Panel
$3 = TL Row
$4 = TL Col
$5 = Options
$6 = Rows Read
$7 = Cols Read

ReFilterTableView

Reapply any active filters to the current data in the table

ReFilterTableView($1,$2)

$1 = Table
$2 = Panel

SetTableView

Set columns that a table view will display

SetTableView($1,$2,$3)

$1 = View Table
$2 = View Panel
$3 = Config Table

SetTableViewColScroll

Sets the column scroll of a view for a table on a given panel

SetTableViewColScroll($1,$2,$3)

$1 = Table
$2 = Panel
$3 = Value

SetTableViewRowScroll

Sets the row scroll of a view for a table on a given panel

SetTableViewRowScroll($1,$2,$3)

$1 = Table
$2 = Panel
$3 = Value

TableViewColScroll

Reads the column scroll of a view for a table on a given panel

$R = TableViewColScroll($1,$2)

$R = Target
$1 = Table
$2 = Panel

TableViewRows

Reads the number of rows in a table view. If a filter is set, this may differ from the number of rows in the table

$R = TableViewRows($1,$2)

$R = Target
$1 = Table
$2 = Panel

TableViewRowScroll

Reads the row scroll of a view for a table on a given panel

$R = TableViewRowScroll($1,$2)

$R = Target
$1 = Table
$2 = Panel

TableViewVisibleCols

Reads the number of visible columns in a table view

$R = TableViewVisibleCols($1,$2)

$R = Target
$1 = Table
$2 = Panel

TableViewVisibleRows

Reads the number of visible rows in a table view

$R = TableViewVisibleRows($1,$2)

$R = Target
$1 = Table
$2 = Panel

Time

DayOfMonth

Returns the day of the month, starting at 1

$R = DayOfMonth($1)

$R = Result
$1 = Time

DayOfWeek

Returns the day of the week, starting at 1 for Sunday

$R = DayOfWeek($1)

$R = Result
$1 = Time

DaysInDateMonth

Returns how many days in the month of the absolute time

$R = DaysInDateMonth($1)

$R = Result
$1 = Time

FormDate

Computes the absolute time representing midnight on the given date

$R = FormDate($1,$2,$3)

$R = Result
$1 = Date
$2 = Month
$3 = Year

HourOfDay

Returns the hour into the current day of the time, starting at 0

$R = HourOfDay($1)

$R = Result
$1 = Time

HourOfDay+1

Returns the hour into the current day of the time, starting at 1 instead of 0

$R = HourOfDay_1($1)

$R = Result
$1 = Time

IncrementByMonths

Increments the date by one or more months, attempting to keep the same day of month

IncrementByMonths($R,$1)

$R = Result
$1 = # of months

MonthOfYear

Returns the month of the year, starting at 1 for January

$R = MonthOfYear($1)

$R = Result
$1 = Time

TimeOfDay

Returns the number of seconds into the current day of the time

$R = TImeOfDay($1)

$R = Result
$1 = Time

WeekOfYear

Returns the week of the year, starting at 1

$R = WeekOfYear($1)

$R = Result
$1 = Time

YearOfDate

Returns the year of the given calendar time

$R = YearOfDate($1)

$R = Result
$1 = Time

Tuple

DecodeMultiLabelToTuple

Extracts the fields of a multi-label to item attributes with names matching the label lists in the multi-label

DecodeMultiLabelToItem($R)

$R = Target

EncodeItemToMultiLabel

Combines item attributes to form a multi-label, for item attributes with names matching the label lists in the multi-label

EncodeItemToMultiLabel($R)

$R = Target

MatchedCopyRow

Copy rows between tables where the column names match

MatchedCopyRow($R,$1)

$R = Result
$1 = Set To

TupleAppendFromCarried

Append a row to the table and for it, set table columns from a carried item's attributes with the same name

TupleAppendFromCarried($R,$1)

$R = Table
$1 = Carried Index

TupleAppendFromItem

Append a row into the table and for it, set table columns from item attributes with the same name

TupleAppendFromItem($R)

$R = Table

TupleCarriedToRow

For the specified row, set table columns from a carried item's attributes with the same name

TupleCarriedToRow($R,$1)

$R = Row
$1 = Carried Index

TupleDecrementToRow

For the specified row, decrement cells with the values of item attributes with matching names

TupleDecrementFromRow($R)

$R = Row

TupleExtractToCarried

For the specified row, set a carried item's attributes from table columns with the same name then delete the row

TupleExtractToCarried($R,$1)

$R = Row
$1 = Carried Index

TupleExtractToItem

For the specified row, set item attributes from table columns with the same name then delete the row

TupleExtractToItem($R)

$R = Row

TupleIncrementToRow

For the specified row, increment cells with the values of item attributes with matching names

TupleIncrementToRow($R)

$R = Row

TupleInsertFromCarried

Insert a row into the table and for it, set table columns from a carried item's attributes with the same name

TupleInsertFromCarried($R,$1)

$R = Row
$1 = Carried Index

TupleInsertFromItem

Insert a row into the table and for it, set table columns from item attributes with the same name

TupleInsertFromItem($R)

$R = Row

TupleItemToRow

For the specified row, set table columns from item attributes with the same name

TupleItemToRow($R)

$R = Row

TupleRowToCarried

For the specified row, set a carried item's attributes from table columns with the same name

TupleRowToCarried($R,$1)

$R = Row
$1 = Carried Index

TupleRowToItem

For the specified row, set item attributes from table columns with the same name

TupleRowToItem($R)

$R = Row

UI

AddListToMenu

Appends a new menu to the modeller custom menu bar

AddListToMenu($1,$2)

$1 = Menu Name
$2 = Item List

BrowseFile

Browse for a file. Returns non zero if one chosen. $1 sets an initial file, $2 enables a save-style dialog. Use s.LastAccessedDataFile and s.LastAccessedDataFilePath to access the file and full path spec of the file selected.

$R = BrowseFile($1,$2)

$R = File Chosen
$1 = File Spec
$2 = Save Mode

ClearCustomMenubar

Removes all menu items from the modeller custom menu bar

ClearCustomMenubar

Dialog

Show a dialog box for the user to interact with

$R = Dialog($F)

$R = Result
$F = Dialog

HandlePopupMenu

Interprets columns in table as depth/name/index and generates a popup menu. Returns index of selected item or 0 if cancelled

$R = HandlePopupMenu($1)

$R = Result
$1 = Table

InitiateFieldEdit

Starts editing attribute/cell views on a panel, as if the user clicked on the first one

InitiateFieldEdit($1)

$1 = Target Panel

SetMenuBar

Interprets columns in table as depth/name/index and builds a custom menu bar

SetMenuBar($1)

$1 = Table