Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Review usability of settings validation - provide feedback about all invalid fields in one go? #19

Open
wettenhj opened this issue Dec 23, 2014 · 1 comment

Comments

@wettenhj
Copy link
Contributor

Anitha said "the usability of the configuration of the app the 1st time it is run could be improved by
validating all the fields and providing appropriate feedback about invalid fields at one go".

@wettenhj
Copy link
Contributor Author

The usability of the settings validation could certainly be improved, but doing so has the potential to be quite complex and time-consuming. The scope of this enhancement would need to be clearly defined before estimating how much work is involved.

Below are some issues illustrating the difficulty of the "validate all fields at once" proposal.

  1. If the MyTardis URL or the MyTardis credentials are invalid, then it is impossible for MyData to validate any fields (e.g. facility and instrument name) which require checking against the MyTardis server.
  2. In some "validate multiple fields" approaches, some red text such as "This field is compulsory" or "This field must be a valid email address" is placed nearby each invalid field. I haven't seen any nice ways to do this in wxWidgets / wxPython so far. Of course I can develop a nice way to do this, but I don't want to reinvent the wheel.
  3. There are some cases where it is simple to give feedback on multiple invalid fields at once, e.g. "The contact name and contact email fields are both compulsory", but in other cases, MyData needs to ask the user a question about a particular field to decide whether it is valid, and the answer to that question could affect whether or not another field is valid.

For example, if the user has entered an instrument name which doesn't yet exist in the facility, then MyData needs to ask the user whether they want to create a new instrument record or rename the existing record, or whether they made a mistake and meant to select an existing instrument record. Having 3 choices is probably enough information for one dialog without also telling the user that another field is missing or valid too.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant