JS3D: Removed OneOrTwoKeyInput method containsKey and simplified calls to getValueFor(k1,k2)

Signed-off-by: Stephen Wong <stephen.wong@ausencosandwell.com>
Signed-off-by: Harvey Harrison <harvey.harrison@ausencosandwell.com>
JS3D: Removed TwoKeyInput method containsKey

Signed-off-by: Stephen Wong <stephen.wong@ausencosandwell.com>
Signed-off-by: Harvey Harrison <harvey.harrison@ausencosandwell.com>
JS3D: Removed TwoOrThreeKeyInput method containsKey and simplified call to getValueFor(k1,k2,k3)

Signed-off-by: Stephen Wong <stephen.wong@ausencosandwell.com>
Signed-off-by: Harvey Harrison <harvey.harrison@ausencosandwell.com>
JS3D: Removed OneKeyInput method containsKey

Signed-off-by: Stephen Wong <stephen.wong@ausencosandwell.com>
Signed-off-by: Harvey Harrison <harvey.harrison@ausencosandwell.com>
JS3D: Format default value string for Vector3d

Print:

0.000 0.000 0.000 m

instead of:

(0.0, 0.0, 0.0) m

Signed-off-by: Stephen Wong <stephen.wong@ausencosandwell.com>
Signed-off-by: Harvey Harrison <harvey.harrison@ausencosandwell.com>
JS3D: Replaced call to EditBox updateGraphics with setting GraphicsUpdateBehavior forceUpdate to true

This change causes graphics to update when editting any keyword (not just keywords in the Graphics category).
There are many keywords that are not in the Graphics category which require the object to update graphics.
For example, Graph keyword Title.

Signed-off-by: Stephen Wong <stephen.wong@ausencosandwell.com>
Signed-off-by: Harvey Harrison <harvey.harrison@ausencosandwell.com>
JS3D: Moved script keywords from GraphicSimulation to ScriptEntity

The user may now define multiple ScriptEntities as follows:

Define ScriptEntity { ScriptEntity1 ScriptEntity2 }
ScriptEntity1 Script { test1.scr }
ScriptEntity2 Script { test2.scr }

Within each script file, the Time keyword belongs to the ScriptEntity.
For example:

ScriptEntity1 Time { 24.0 h }
Object1  Keyword1 { value1 }

ScriptEntity1 Time { 25.0 h }
Object2  Keyword2 { value2 }
...

Signed-off-by: Stephen Wong <stephen.wong@ausencosandwell.com>
Signed-off-by: Harvey Harrison <harvey.harrison@ausencosandwell.com>
JS: restore event tracing and event verification code

Need to finish all initialization _before_ we are in a model thread.

Signed-off-by: Harvey Harrison <harvey.harrison@ausencosandwell.com>
JS3D: move hasAddedRecords to the input parameter

Signed-off-by: Ali Marandi <ali.marandi@ausencosandwell.com>
Signed-off-by: Harvey Harrison <harvey.harrison@ausencosandwell.com>
JS3D: create a single CellRenderer and reuse it for all cells in column 0

This is the renderer which makes the first cell in the active row bold if
the editbox has the focus.

It used to define a brand new renderer each time it wanted to make the
first cell bold or clear the bold.

Signed-off-by: Ali Marandi <ali.marandi@ausencosandwell.com>
Signed-off-by: Harvey Harrison <harvey.harrison@ausencosandwell.com>
JS3D: make help key listener and how being used more efficient

remove global selectedKeyword and obtain it from prop table when needed.

Signed-off-by: Ali Marandi <ali.marandi@ausencosandwell.com>
Signed-off-by: Harvey Harrison <harvey.harrison@ausencosandwell.com>
JS3D: fix not picking the right option in doHelp method

Signed-off-by: Ali Marandi <ali.marandi@ausencosandwell.com>
Signed-off-by: Harvey Harrison <harvey.harrison@ausencosandwell.com>
JS3D: have dropdown box in "Input Editor" when input overrides getValidOptions

which returns the choices which will be shown in the drop down box.

getCellEditor returns the right editor for value column which could be a
JComboBox or a HTextField which comes from the defalult editor.

Signed-off-by: Ali Marandi <ali.marandi@ausencosandwell.com>
Signed-off-by: Harvey Harrison <harvey.harrison@ausencosandwell.com>
JS3D: add helpKeyListener to the dropdown box

helpKeyListener has to be added to the text box inside the JComboBox, so it
would be responsive.

Signed-off-by: Ali Marandi <ali.marandi@ausencosandwell.com>
Signed-off-by: Harvey Harrison <harvey.harrison@ausencosandwell.com>
JS: show dropdown menu for BooleanInput, EntityInput and StringChoiceInput

in value column of the "Input Editor"

Signed-off-by: Ali Marandi <ali.marandi@ausencosandwell.com>
Signed-off-by: Harvey Harrison <harvey.harrison@ausencosandwell.com>
JS3D: prevented a null pointer exception

Example of the exception:
Calling EditBox.getInstance() while creating JTable triggered by a
drag-and-drop caused a null pointer exception because it reset EditBox
currentEntity to null(for ObjectSelector.currentEntity was still null)

Signed-off-by: Ali Marandi <ali.marandi@ausencosandwell.com>
Signed-off-by: Harvey Harrison <harvey.harrison@ausencosandwell.com>
JS3D: set the current entity from ObjectSelector for Viewers

if they are opened from View main menu, so they do not open up with empty
table.

Signed-off-by: Ali Marandi <ali.marandi@ausencosandwell.com>
Signed-off-by: Harvey Harrison <harvey.harrison@ausencosandwell.com>
JS3D: make HTextField static

Signed-off-by: Ali Marandi <ali.marandi@ausencosandwell.com>
Signed-off-by: Harvey Harrison <harvey.harrison@ausencosandwell.com>
JS3D: remove the text border in the Input Editor

Signed-off-by: Ali Marandi <ali.marandi@ausencosandwell.com>
Signed-off-by: Harvey Harrison <harvey.harrison@ausencosandwell.com>
JS3D: add ColorEditor for ColourInput in the "Input Editor"

Color could be entered either manually or by JColorChooser after pressing
the colour button.

Signed-off-by: Ali Marandi <ali.marandi@ausencosandwell.com>
Signed-off-by: Harvey Harrison <harvey.harrison@ausencosandwell.com>