SasView / sasview

Code for the SasView application.
BSD 3-Clause "New" or "Revised" License
51 stars 41 forks source link

Make Slicer Parameters box non-modal and add it to the Tools menu (Trac #1150) #1191

Open pkienzle opened 5 years ago

pkienzle commented 5 years ago

The Slicer Parameters box is modal. This means that you can't interact with the help window while the Slicer Parameters box is displayed.

Making the box non-modal has some good UI benefits. E.g., you could interact with the slicer parameters from the graph as well as typing in the numbers in the box. You could put the slicer in the Tools menu where it is easy to find rather than having to select a slicer on a graph before the user even knows the slicer box exists. You could also make slicing available to data sets that are not currently plotted, which may be useful for batch slicing.

Migrated from http://trac.sasview.org/ticket/1150

{
    "status": "new",
    "changetime": "2019-03-03T15:16:25",
    "_ts": "2019-03-03 15:16:25.244918+00:00",
    "description": "The Slicer Parameters box is modal.  This means that you can't interact with the help window while the Slicer Parameters box is displayed.  \n\nMaking the box non-modal has some good UI benefits.  E.g., you could interact with the slicer parameters from the graph as well as typing in the numbers in the box.  You could put the slicer in the Tools menu where it is easy to find rather than having to select a slicer on a graph before the user even knows the slicer box exists.  You could also make slicing available to data sets that are not currently plotted, which may be useful for batch slicing.\n",
    "reporter": "pkienzle",
    "cc": "",
    "resolution": "",
    "workpackage": "SasView Bug Fixing",
    "time": "2018-08-03T14:58:42",
    "component": "SasView",
    "summary": "Make Slicer Parameters box non-modal and add it to the Tools menu",
    "priority": "major",
    "keywords": "",
    "milestone": "SasView 5.0.0",
    "owner": "",
    "type": "defect"
}
smk78 commented 5 years ago

Trac update at 2018/08/08 15:36:47:

Am raising the priority of this, as it is irritating!

rozyczko commented 5 years ago

Trac update at 2018/11/30 11:16:43: piotr commented:

The batch slicing widget looks pretty restrictive. How about two separate actions with two different widgets?

  1. The 4.1 (also current 5.0) Slicer Parameters widget accessible from the context menu of 2D plots with only slicer parameters. Basically reverting to 4.1
  2. Additional Batch Slicing widget, accessible from the Tools menu. This one would be a variation of the current (4.2) batch slicer with functionality as described above. Since the slicer is going to act on a number of datasets, we probably need to display one of them to visualize the slicer extent? Modality is a non-issue, the current Slicer Params widget in 5.0 is non-modal
butlerpd commented 5 years ago

Trac update at 2019/03/03 15:16:25: butler commented:

This seems like a reasonable approach to me. A question is whether this is a GUI function or a sascalc function that the GUI visualizes. As @kienzle suggests, there might be a reason for a script to want to use the slicer to generate 1D plots that are then fit by a model etc. As I think about it I think that is correct. The function of the slicer is not really a GUI function per se?

Second question: since the modal issue of this ticket is resolved in 5.0 should we generate a new ticket for the above issues (splitting functions, ensuring that it is all in sascalc) or are those essentially already done anyway in which case we can just close this ticket.

Will leave this open for now as a reminder we need to maybe add a new ticket. As soon as the questions are answered this ticket should be closed I think.

rozyczko commented 3 years ago

Slicer parameter widget is non-modal and paired with the batch slicer. The combined widget is available from any 2D plot context menu, regardless of whether a slicer has been applied (as opposed to 4.x where it would show up in the menu only when the plot had slicer applied)