JS: fix the BarGauge graphcis after removal of the tagset object

fixes commit:
2646155758d6c0c0b6f06ad7611418e67dd77a45 (JS: replace the TagSet object with a single hashmap of Tag objects)

Signed-off-by: Harvey Harrison <harvey.harrison@ausenco.com>
JS: Object preview render is now independent of visible views on DM

Signed-off-by: Matt Chudleigh <matt.chudleigh@ausenco.com>
Signed-off-by: Harvey Harrison <harvey.harrison@ausenco.com>
JS: remove some unused bits of Clock

Signed-off-by: Harvey Harrison <harvey.harrison@ausenco.com>
JS: Switch expression evaluation to using exceptions to indicate errors

Signed-off-by: Matt Chudleigh <matt.chudleigh@ausenco.com>
Signed-off-by: Harvey Harrison <harvey.harrison@ausenco.com>
JS: Expressions now know their location in the source string

This will allow for more useful runtime error messages

Signed-off-by: Matt Chudleigh <matt.chudleigh@ausenco.com>
Signed-off-by: Harvey Harrison <harvey.harrison@ausenco.com>
JS: Make expression unit errors usefully descriptive

Signed-off-by: Matt Chudleigh <matt.chudleigh@ausenco.com>
Signed-off-by: Harvey Harrison <harvey.harrison@ausenco.com>
JS: Consolidate all expression related errors into ExpError

Signed-off-by: Matt Chudleigh <matt.chudleigh@ausenco.com>
Signed-off-by: Harvey Harrison <harvey.harrison@ausenco.com>
JS: Expressions now keep a reference to their source string

Signed-off-by: Matt Chudleigh <matt.chudleigh@ausenco.com>
Signed-off-by: Harvey Harrison <harvey.harrison@ausenco.com>
JS: Convert ExpError to be aware of source string and error position

Signed-off-by: Matt Chudleigh <matt.chudleigh@ausenco.com>
Signed-off-by: Harvey Harrison <harvey.harrison@ausenco.com>
JS: add a second constructor for ExpError to allow passing format strings directly

Signed-off-by: Harvey Harrison <harvey.harrison@ausenco.com>
JS: pull out a helper to validate Input names

Also, use a more efficient comparision for not-allowed characters...contains()
is a bit heavyweight for this.

Signed-off-by: Harvey Harrison <harvey.harrison@ausenco.com>
JS: show pop-up message for runtime errors

Signed-off-by: Harry King <harry.king@ausenco.com>
Signed-off-by: Harvey Harrison <harvey.harrison@ausenco.com>
JS: add the default time unit to the PauseTime entry

Signed-off-by: Harry King <harry.king@ausenco.com>
Signed-off-by: Harvey Harrison <harvey.harrison@ausenco.com>
JS: directly tokenize the PauseTime text to decide if a unit should be added

Signed-off-by: Harvey Harrison <harvey.harrison@ausenco.com>
JS: select the entire PauseTime entry when focus is gained

Signed-off-by: Harry King <harry.king@ausenco.com>
Signed-off-by: Harvey Harrison <harvey.harrison@ausenco.com>
JS: the Start/Resume button should retain focus after it has been toggled

Signed-off-by: Harry King <harry.king@ausenco.com>
Signed-off-by: Harvey Harrison <harvey.harrison@ausenco.com>
JS: Have ExpError output a more detailed error string

This does output a multiline string that indicates where the error
occurred, but only works on a monospace font

Signed-off-by: Matt Chudleigh <matt.chudleigh@ausenco.com>
Signed-off-by: Harvey Harrison <harvey.harrison@ausenco.com>
JS: Remove 'obj' as a first class entity in the expression system

Signed-off-by: Matt Chudleigh <matt.chudleigh@ausenco.com>
Signed-off-by: Harvey Harrison <harvey.harrison@ausenco.com>
JS: Add switch to ExpParser allowing eager or lazy eval for conditionals

Signed-off-by: Matt Chudleigh <matt.chudleigh@ausenco.com>
Signed-off-by: Harvey Harrison <harvey.harrison@ausenco.com>
JS: Add static utility functions to OutputHandle

These will be used in expression validation

Signed-off-by: Matt Chudleigh <matt.chudleigh@ausenco.com>
Signed-off-by: Harvey Harrison <harvey.harrison@ausenco.com>