mdsplus icon indicating copy to clipboard operation
mdsplus copied to clipboard

The Motif `traverser` application throws an error when entering an expression into newly created non-text nodes

Open mwinkel-dev opened this issue 1 year ago • 0 comments

Affiliation MIT PSFC @mwinkel-dev filed on behalf of Evan L. of MIT PSFC.

Version(s) Affected Found on alpha-7.139.20. Reproduced on alpha-7.139.66

Platform Found on Ubuntu 18.04. Reproduced on Ubuntu 20.04.

Describe the bug The old Motif traverser has a confusing user interface for setting expressions in newly created non-text nodes. Displays an Error Writing Record to Tree pop-up.

NOTE: It is possible to cajole traverser to write to the new nodes, so perhaps this is not a bug (i.e., might be the way traverser has always worked). Regardless, new users will stumble into the error pop-up.

To Reproduce Steps to reproduce the behavior:

  1. Use jTraverser2 for the following steps:
  2. Create a new scratch tree
  3. Add three nodes: TEXT1, NUM1 and SIGNAL1
  4. Write expressions in the three nodes: "hello", 55 and SET_RANGE(5, 1 : 6)
  5. Display the data in the three nodes
  6. Write the tree
  7. Close
  8. And quit jTraverser2
  9. Use traverser for the following steps
  10. Add three nodes: TEXT2, NUM2 and SIGNAL2
  11. Write expression hello in the TEXT2 node -- this works fine
  12. Write expression 55 in the NUM2 node -- the error pop-up appears when saving the expression
  13. Same happens if write an expression to SIGNAL2

Note however that with traverser, if click on the " button, then quotes appear inside the expression box. If delete those quotes when writing 55 to the num2 node, it works fine. That approach works on all non-text nodes.

Expected behavior The " button is easily overlooked. And the error message is misleading, because it can be interpreted as claiming that the user does not have write permission to the tree (which is false because the user created the tree). A better error message would explain that the expression cannot be parsed and thus can't be saved to the node.

Screenshots In these screenshots, NUM1 and SIG1 were created with jTraverser2 which also successfully wrote expressions to those nodes. The SIG2 node was created with mdstcl which also write an expression to the node. The SIG3 node was created with traverser, but the " button (left of the expression box) was not clicked and quotes deleted, thus clicking on the Ok button caused the Error pop-up to appear.
traverser_error

Additional context Is this a bug? Or just the way traverser was designed?

As Evan noticed, after an expression is written into a node, traverser apparently knows whether to use quotes or not (i.e., the user doesn't have to worry about quotes). And thus editing existing expressions goes smoothly. The same user workflow though fails on a newly created node (because the user must explicitly manage the quotes to avoid the error pop-up). The difference between the two workflows is confusing and not intuitive.

mwinkel-dev avatar Feb 21 '24 23:02 mwinkel-dev