JS: Update cached renderable scene before handling offscreen request

Signed-off-by: Matt Chudleigh <matt.chudleigh@ausenco.com>
Signed-off-by: Harvey Harrison <harvey.harrison@ausenco.com>
JS: Refactor line point selection node generation

Create a utility method

Signed-off-by: Matt Chudleigh <matt.chudleigh@ausenco.com>
Signed-off-by: Harvey Harrison <harvey.harrison@ausenco.com>
JS: Add yellow and blue nodes to line selections

Signed-off-by: Matt Chudleigh <matt.chudleigh@ausenco.com>
Signed-off-by: Harvey Harrison <harvey.harrison@ausenco.com>
JS: Read script inputs before the first Time record in earlyInit

Model restarts work with most scripts with a record at Time 0.
However, it is sometimes necessary to reset the initial value of the script inputs during earlyInit.

For example, in the following script, the first two lines are read during earlyInit:

   MakeupWaterUsers Active { TRUE }
   QBCopperMine Active { TRUE }

   QBInit Time { 0.00 h }
   MakeupWaterUsers Active { FALSE }
   QBCopperMine Active { FALSE }

   QBInit Time { 30.00 h }
   MakeupWaterUsers Active { TRUE }
   QBCopperMine Active { TRUE }

Signed-off-by: Stephen Wong <stephen.wong@ausenco.com>
Signed-off-by: Harvey Harrison <harvey.harrison@ausenco.com>
JS: change access restrictions to start/stop simulation for experimentation

Signed-off-by: Stephen Wong <stephen.wong@ausenco.com>
Signed-off-by: Harvey Harrison <harvey.harrison@ausenco.com>
JS: Have AviWriter zero out the length of a file when opening

Signed-off-by: Matt Chudleigh <matt.chudleigh@ausenco.com>
Signed-off-by: Harvey Harrison <harvey.harrison@ausenco.com>
JS: avoid wraparound in calculateEventTime for long waitLength

Signed-off-by: Geoffrey Savinkoff <Geoffrey.Savinkoff@ausenco.com>
Signed-off-by: Harvey Harrison <harvey.harrison@ausenco.com>
JS: add SetGraphics to Basic Object palette

Signed-off-by: Harry King <harry.king@ausenco.com>
Signed-off-by: Harvey Harrison <harvey.harrison@ausenco.com>
JS: Minor fixups to LinkedComponent

Signed-off-by: Harry King <harry.king@ausenco.com>
Signed-off-by: Harvey Harrison <harvey.harrison@ausenco.com>
JS: add output ReleaseTime to LinkedComponent

Signed-off-by: Harry King <harry.king@ausenco.com>
Signed-off-by: Harvey Harrison <harvey.harrison@ausenco.com>
JS: use standard code style for LinkedComponent

Signed-off-by: Harry King <harry.king@ausenco.com>
Signed-off-by: Harvey Harrison <harvey.harrison@ausenco.com>
JS: stop formatting a default string for inputs, just parse empty

Signed-off-by: Harvey Harrison <harvey.harrison@ausenco.com>
JS: add a helper for formatting a list of Points tokens, remove tonnes of dragged implementations

Signed-off-by: Harvey Harrison <harvey.harrison@ausenco.com>
JS: add a helper to apply input to a PointInput

Signed-off-by: Harvey Harrison <harvey.harrison@ausenco.com>
JS: directly pass a token list to avoid a String-parsing helper

Signed-off-by: Harvey Harrison <harvey.harrison@ausenco.com>
JS: use InputAgent.apply when we know a Group is not being used

Signed-off-by: Harvey Harrison <harvey.harrison@ausenco.com>
JS: replace a few more uses of processKeyword

Signed-off-by: Harvey Harrison <harvey.harrison@ausenco.com>
JS: new icon for SetGraphics

Signed-off-by: Harry King <harry.king@ausenco.com>
Signed-off-by: Harvey Harrison <harvey.harrison@ausenco.com>
JS: use Ausenco logo with white background

Signed-off-by: Harry King <harry.king@ausenco.com>
Signed-off-by: Harvey Harrison <harvey.harrison@ausenco.com>
JS: hide various keywords for Simulation

Signed-off-by: Harry King <harry.king@ausenco.com>
Signed-off-by: Harvey Harrison <harvey.harrison@ausenco.com>