IDEMSInternational / R-Instat

A statistics software package powered by R
http://r-instat.org/
GNU General Public License v3.0
38 stars 102 forks source link

Add options to some controls, including - Script, and Ok #7180

Open rdstern opened 2 years ago

rdstern commented 2 years ago

Currently when you press Ok it executes the dialogue and closes the dialogue. The To Script button leaves the dialogue open.
I understand the logic of the difference. However, I use To Script often and have always then pressed Close to then move to the script window. Genstat has a little funny drawing pin sort of arrow at the side of the control that is upright when you want the control to leave the dialogue open and sideways when you want it to be closed. If you change it, then it switches, and has its new setting for all future dialogues. I suggest a slightly different "system" for us. a) Change the default for To Script so it closes the dialogue - just like Ok and Close. b) But have a small split in the button - as for the Help which splits into a smaller Help and Lan in other languages. This is reasonably small and has perhaps an up-arrow. as a small part. If you press the up-arrow instead of the main To Script button, then it doesn't close. c) Consider the same facility for the Ok and Close. Sometimes you do want to return to the last dialogue and I will still usually use the control on the keyboard. But if I know I am going to need it repeatedly, then why not keep it open? And, if I use it on Close, then it will temporarily disable the dialogue and I can do some temporary operations (e.g. make variables into factors, and then return.

This is not to be started yet. I first need reactions from others, including @shadrackkibet @volloholic and @dannyparsons.

rdstern commented 2 years ago

I have had a reaction from David. a) He is very happy with the idea for the Script and Ok buttons. b) In this case I suggest the default be changes, to be consistent. So the main To Script button closes and the "up arrow" would execute the operation and leave the dialogue open. c) He is not convinced by the up-arrow. Neither am I, so choosing a good symbol needs some discussion. I like the idea of something pointing upwards as that is back to the dialogue. Perhaps it could be at an angle, so it points to the middle of the dialogue and so would slope differently for Ok and To Script. d) He also supports the idea for the Close button, but says that the current system would make this a much more major re-writing task. I'll check with @dannyparsons. If so, then we separate it off from this issue.

rdstern commented 2 years ago

And a useful discussion with Danny. Also positive about the idea. Not keen about making the alternative action too visible. His idea is that perhaps the button could offer a pull-down, as we have for some of the items in the toolbar?
On the Close control he was of the view that we could look at allowing access to the grids when a dialogue is open. So let's concentrate on the Ok and To Script. So far: a) We make them consistent, so To Script, by default, now closes the dialogue. b) We have a drop-down with the option Keep on each. c) Now - assuming b) is possible I am liking this a lot, because I can use it to solve another problem I have. So I propose to build on this idea.

I give an example of the Model > Fit Model > Fit Model Keyboard dialogue.

This issues a command to fit a model.
Now usually we will develop towards a sequence of commands, so what's next? a) We may wish to examine the results and think. So then press Ok normally b) We may wish to fit a different model. Then use the Keep option on the ok (or To Script) button c) We may wish to Use the Model, i.e. Model Use Model > Use Model Keyboard.

So, there may be obvious successor dialogues as we build up a script, which is a sequence of commands for us. So could we have an option - on some dialogues - of the pull down, giving the obvious successor dialogues! So Keep is there always. And some dialogues have obvious successors.

Another example is the search for non-numeric values. This is for a single variable, so we often use it multiple times. Then we would often filter to see which observations are non-numeric.

The Prepare > Data Frame > Rename is slightly different. There we will have a Rename Multiple on the dialogue. But it is a bit more complicated to use than the Rename Single. So, if we just have 2 or 3 variables to rename we may prefer the simpler dialogue, which we choose to Keep. I can't think of an obvious successor dialogue, so that just has the Keep.

rdstern commented 2 years ago

Here is the Start control in Visual Studio image

I assume we will add the down triangle to the Ok and To Script buttons. So: a) The default for To Script is to close the dialogue - it is then consistent with the Ok button. b) Each has this down arrow c) The 2 main options are Close and Keep. d) I suggest a 3rd option called Keep-keep.

If you use the little down-arrow and Keep, then it Keeps it, but just the once.
If you use Keep-Keep then it keeps it open as many times as you like. You can then use the down-arror and Close for the last time, or just the Close button. I also suggest that Close is always the default on the Down-Arrow stuff. So any Keep-Keep setting is lost whenever you reopen a dialogue and does not carry-over to other dialogues. (That's consistent with our use of the down-arrows on the toolbar - they don't have any memory!

While this is considered, I'd like to propose the down arrow for 2 further controls. a) Data Options This currently takes you to the dialogue where you can now choose to: 1) Use filter 2) Define Filter 3) Use Select 4) Define Select

I propose a down-arrow here also with the above options

The third has been proposed before and is the sub-dialogues for our ggplots. We currently have Plot Options, and then one special case - so Boxplot options when we are doing boxplots. But many of our plots have multiple geoms and we have suggested before that we should add a down-arrow here as a quick route to the options for those geoms.

We will, almost certainly, execute these in 3 different pull requests.
@shadrackkibet or @dannyparsons or @lloyddewit may also like to comment?

lloyddewit commented 2 years ago

@rdstern I personally find 'Keep' and 'Keep-Keep' confusing for the user. Would it be simpler to have just 2 options?

(2nd option has the functionality you described for 'keep-keep')

dannyparsons commented 2 years ago

I thought the functionality would be different.

There would just be one item in the dropdown for "Ok and keep". If you click this it runs the command and keeps the dialog open. If you just click Ok it runs the command and closes the dialog.

I don't see these as options that you select and then click again. They are just clicks directly, hence I didn't see a need for more than one extra button, unless I've missed something in the suggest?

rdstern commented 2 years ago

Ok, let's follow @dannyparsons.
a) There is a little down-arrow, as shown above, for the Ok button and also the To Script. b) the main To Script button now closes the dialogue (consistent with Ok) c) The down arrow (for now) has a single option, namely Ok and Keep and To Script and Keep.

I hope this can be done soon, because we are capturing many screen for the help. This is only minor, but it does affect all dialogues.

Once done, please keep this issue open so we can discuss the other suggestions.

Patowhiz commented 2 years ago

@dannyparsons let me know if you want this to be in my priority list for R-Instat.

Patowhiz commented 2 years ago

Looking into this now.

Patowhiz commented 2 years ago

@rdstern @dannyparsons I would like to add, we may want to also be careful with "Ok and Keep", especially for dialogs that produce new columns. For instance, as a user I would expect the newly created column to be available in the dialog that I'm keeping, especially if I'm doing operations that apply on results of each other.