Version: 1.3.2_devel (using KDE 3.4.0, compiled sources) Compiler: gcc version 3.4.3 OS: SunOS (sun4u) release 5.8 As announced on the list, this is the first of a few improvement suggestions coming from extensive discussions with users as to what they find cumbersome in the current UI. This suggestion aims at streamlining one of the most common operations: adding one or more curve(s) to a given (or new) plot. Sure, the datawizard can do it and it is also possible to do it by creating a new vector, then a new curve. But all these processes take many clicks, and require the user to know which plot name corresponds to what contents (which is already a showstopper in many cases). And that's not all: as I described in bug #124942, adding curves from more than one datafile (e.g. when comparing two similar files) is very painful. Now imagine you can right-click on a plot, call a "quick curve" entry, and get the dialog attached to this report. You select the var(s) to add, click "Add to current plot" and you're done. Very easy :-) And the best is you can add curves from more than one source easily (for a more thorough discussion on this issue see bug #124942 as I won't repeat the whole argument here). In fact, this proposal is mostly a stripped-down datawizard, with a multi-file extension (and some ideas from gaiw). From the user feedback I get here, it would be a very useful addition usability-wise ! Some points are worth noting: - computing the intersection of variable names should be done intelligently as it can take very long (remember, we routinely use files with tens of thousands of vars). Probably with QDict or QMap (I never know) ? - to speed things up we should cache the common variable list as it is likely that users will not change selected datasources so often - selected (checked) datasources should be remembered - the X vector combobox should contain the list of X vectors currently in use in the selected plot, provided that the corresponding field exists in all selected datasources. The X vectors should be reused.
Created attachment 18382 [details] JPEG mockup of the UI What it could look like, does it look somewhat familiar :-) ?
Created attachment 18383 [details] Qt Designer mockup file The designer file it was created from. Yes, I cheated for the checkboxes :-)
How are the following decided: -Frame ranges -Line/point/colour properties -plot addition policy (regrid, etc) These are the things which complicate the new curve/new vector dialogs and what make the wizard several pages.... so if we get rid of them, we have to have a good idea of what the correct defaults are.
> How are the following decided: > -Frame ranges Reuse the last values entered in the datawizard, or "Change sample ranges" dialog (are they actually synchronized in some way ?) > -Line/point/colour properties Use default settings as they would be used in the data wizard. My experience is that people don't change them so often. The only very useful thing here would be a sticky "color per file" setting, as reported in bug #124558, especially when dealing with multiple datasources > -plot addition policy (regrid, etc) As I imagine it, the dialog would be called from a plot context menu, so the curves would just be added to that plot. If you need a new one, you can create it with the Plots->New plot... entry (which by the way should not have an ellipsis, and possibly be added to the RMB menu in zoom/layout modes ?) > These are the things which complicate the new curve/new vector dialogs and > what make the wizard several pages.... so if we get rid of them, we have to > have a good idea of what the correct defaults are. Sure, but I believe the above suggestions are reasonable answers. Thoughts ?
Could be still open in Kst 1.
Git commit bcde7de620256fe950fec290400779802012c945 by Barth Netterfield. Committed on 30/09/2018 at 21:55. Pushed by netterfield into branch 'master'. Add create curve to right click menu in plots. M +18 -0 src/libkstapp/curvedialog.cpp M +3 -0 src/libkstapp/curvedialog.h M +4 -1 src/libkstapp/dialoglaunchergui.cpp M +1 -1 src/libkstapp/dialoglaunchergui.h M +11 -1 src/libkstapp/plotitem.cpp M +2 -0 src/libkstapp/plotitem.h M +2 -1 src/libkstmath/dialoglauncher.cpp M +1 -1 src/libkstmath/dialoglauncher.h https://commits.kde.org/kst-plot/bcde7de620256fe950fec290400779802012c945