Improve reset preferences dialog message

Issue #376 resolved
Robert Leach created an issue

USE CASE: WHAT DO YOU WANT TO DO?

Convey to the user why they might want to reset preferences and what will happen if they do it.

STEPS TO REPRODUCE AN ISSUE (OR TRIGGER A NEW FEATURE)

  1. Select File->Preferences->Reset Preferences
  2. Read the message in the resulting dialog window

CURRENT BEHAVIOR

The message in the reset prefs dialog only asks for confirmation, but doesn't convey why one should reset or what will happen if they do it.

EXPECTED BEHAVIOR

I think that a simple message is sufficient when the user already knows what this will do and why they want to do it, however since this may be a foreign concept to novice users, I think that the succinct message could be tweaked and that a longer message could be revealed if the user expands a hidden "|> Details:" section (where "|>" is one of those triangles for expanding content). The short message could say:

"Are you sure you want to reset the preferences? Custom changes made to label & color settings will be lost for all files."

The "Details:" message could say something like:

"Sometimes, the TreeView3 preferences can get corrupted. Resetting the application-wide preferences can frequently resolve behavior and display problems. TreeView3 keeps track of input-file-specific settings independent of the input file itself, so resetting the preferences unfortunately wipes out any custom label and color settings for all previously viewed files. These are things like, selected fonts, custom color selections, the data values associated with those colors in the chosen spectrum, minimum font size, and the selected label type to display as the row/column labels. Other things such as "last file opened", the starting directory in the open file dialog, and window size/position will also be lost. Your data in the files remains untouched. Only superficial data is lost. Clustering, trees, and data values remain intact."

DEVELOPERS ONLY SECTION

SUGGESTED CHANGE (Pseudocode optional)

See EXPECTED BEHAVIOR above.

FILES AFFECTED (where the changes will be implemented) - developers only

unknown

LEVEL OF EFFORT - developers only

minor

COMMENTS

Comments (7)

  1. Christopher Keil repo owner

    Initially this option was basically just a debug action. Agreed that we should clarify what happens here.

    Related: Also, menus that set preferences (labels, colors) should implement a restoreDefaults() function (separate issue) because if you want to reset color preferences, you will likely want to keep label settings and settings for other files should be left alone.

    During work on #213 I implemented restoreDefaults() in the ConfigNodePersistent interface so that defaults preferences are locally restored. Once that issue is merged, all we need is to add a button to the dialogs that calls the function.

  2. Robert Leach reporter

    Hey @TreeView3Dev, I could use your help figuring out how to accomplish this dialog window with an expandable details pane without setting the window size/max-size statically. Would you mind looking at the new class I created called CustomDetailsConfirmDialog in branch "issue376-explain_reset_prefs"? and see if you can point me in a direction that does not use statically set window sizes? The problem is that the details textPane (unless you set some sizes like I've done), expands the pane width to the full size of the un-wrapped line of text. I have it working with the static sizes (on my machine), as you can see here:

    https://bitbucket.org/TreeView3Dev/treeview3/downloads/reset_prefs_proof_of_concept.mov

  3. Robert Leach reporter

    Nevermind, I figured out a work-around. I just inserted hard line wraps in the long string.

  4. Log in to comment