Amendment to 7b59c78. This should prevent spurious NOS character sets from
appearing in the widgets, and should also prevent the G0 and G2 character
sets from getting mixed up in the widgets when those triplets are within
object definitions.
The G0 and G2 character set in the widgets may still be incorrect in corner
cases of objects invoked within areas of the page where the character set
has been changed either with the ESC/Switch spacing attribute or with the
"modified G0/G2 character set designation" triplet.
The "insert before" and "insert after" buttons will drop a menu to
select the new triplet mode, allowing triplets with different modes to
be inserted with one less mouse click.
The "insert copy" button still does the old behaviour of inserting a
copy of the currently selected triplet.
Attempts to move the Active Position upwards to a lesser numbered row,
or leftwards within the same row to a lesser numbered column, are now
highlighted red within the triplet list so the user can see which
triplets are being ignored due to these errors.
Detection for other triplet errors such as reserved bits/values or
object related errors will be added later on.
This is a part of moving the Active Position logic from the renderer
to the triplet list, so a renderer won't be needed if the ability to
editing (G)POP pages is added in the future.
The knowledge of how colour, character etc parameters fit within the
address and data triplets is no longer required. We now present
widgets that explicitly refer to colour, character that are more
user friendly.