BaRatin-tools / BaRatinAGE

BaRatin Advanced Graphical Environment
GNU General Public License v3.0
4 stars 0 forks source link

Review ergonomics of the 'Apply' Button #23

Closed benRenard closed 5 months ago

benRenard commented 1 year ago

There are probably some links with ticket #17 about out-of-date objects.

Examples of issues / suggestions:

Il y a quelque chose de pas intuitif dans la succession du bouton appliquer central, avec le bouton exécuter de la partie droite. Je ne sais pas comment le dire, mais il n'y a rien d'évident visuellement dans le fait qu'appliquer ne suffit pas et qu'il faut aller lancer le calcul avec Exécuter.

Ce que j'imagine de plus élégant est simplement un petit encart qui apparaît quand tu fais "appliquer" et qui t’avertit que les paramètres ont changé et que l'affichage actuel n'est pas représentatif des changements réalisés et qu'il ne le sera qu'après avoir fait "exécuter", un truc comme ça.

Afficher un message d'erreur genre "some value(s) missing" quand Apply ne fonctionne pas parce que toutes les cases ne sont pas renseignées. Ca aiderait à voir que le paramètre c, caché car trop bas, n'a pas été renseigné... Indiquer par un code (couleur?) que les valeurs ont été "applied" ou pas. Faire "entrée" en fin de saisie d'un paramètre devrait faire "apply".

La difficulté est qu'il faudrait distinguer les infos qui une fois modifiées rendent le graphique caduque et réclament donc un "Exécuter" (par ex. pour le graphique de la CT: les a priori ou les jaugeages) et les infos qui ne réclament pas une mise à jour du graphique après modification (par ex. toutes les descriptions). Pas trivial à implémenter proprement, d'autant que ces infos sont dispatchées dans plusieurs objets et plusieurs onglets.

La solution la plus élégante que j'imagine consisterait en 2 petites loupiotes:

  1. la loupiote 1 serait à côté du bouton "appliquer", rouge s'il y a des changements non sauvegardés dans l'onglet courant, vert sinon.
  2. la loupiote 2 serait dans la partie graphique, rouge si le graphique n'est pas à jour par rapport aux infos actuellement sauvegardées dans BaRatinAGE, vert sinon. Encore une fois c'est pas trivial car par exemple un changement d'apriori va rendre caduque non seulement le graphique de la CT a priori, mais aussi celui de toutes les CT a posteriori qui utilisent cet a priori, ainsi que tous les hydrogrammes qui utilisent ces CTs a posteriori!
JeromeLeCoz commented 1 year ago

Oui, c'est lié. L'idéal serait sans doute que dès que tu as saisi une nouvelle valeur, ça fait appliquer directement, et les résultats fils sont détruits. Plus de bouton Appliquer dans ce cas!

benRenard commented 1 year ago

Linked to this: A warning when changing the tab without pressing "apply" would be nice.

IvanHeriver commented 1 year ago

The clearest solution would maybe be to remove the "Apply" button. It would look like the following (example with a rating curve element):

  1. when you create a new rating curve, you can edit the configuration (as it is the case today)
  2. when you click "Execute"
    • the rating curve is computed
    • the configuration options are greyed out and cannot be modified
    • a button "Edit" is added where the current "Apply" button is. When clicked, the user is asked to confirm his/her action. If confirmed: deletes the current rating curve result and go back to step 1
IvanHeriver commented 5 months ago

I think this issue is no longer relevant for BaRatinAGE v3 since there's no longer any Apply button.

I think we should close this issue and open new ones to handle issues related to the new approach followed to handle synchronization between configurations and results, and between components.