Bug 7638 - Toolbar toggle buttons are confusing
Summary: Toolbar toggle buttons are confusing
Status: RESOLVED FIXED
Alias: None
Product: JDT
Classification: Eclipse Project
Component: UI (show other bugs)
Version: 2.0   Edit
Hardware: Other other
: P2 normal (vote)
Target Milestone: ---   Edit
Assignee: Martin Aeschlimann CLA
QA Contact:
URL:
Whiteboard:
Keywords: usability
: 9853 9860 (view as bug list)
Depends on:
Blocks:
 
Reported: 2002-01-15 14:44 EST by Nick Edgar CLA
Modified: 2002-05-14 13:51 EDT (History)
2 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Nick Edgar CLA 2002-01-15 14:44:44 EST
Build 20020109

Several of the toolbar toggle buttons work in a counter-intuitive way.
For example, you select the F and S buttons in the Java outline in order to 
*hide* fields and static members.  

Also, the tooltips change depending on the state, so it's unclear whether the 
tooltip is describing the current state or what it will switch to (see Blooper 
11 in the GUI Bloopers book).

I recommend changing them so the tooltip describes the state they control and 
the button is selected when this state is active.

The tooltip should never change.

For example:
"Sort Alphabetically" (when selected, items are sorted alphabetically)
"Show Fields" (when selected, fields are shown)
"Show Static Members" (when selected, static members are shown)
"Show Only Public Members" (when selected, only public members are shown)
"Lock View and Show Members in Hierarchy" 
"Show All Inherited Members"

This is also an accessibility issue.  Screen readers read the tooltip for the 
button then its checked state.  For example, it would currently read "Show 
Fields button checked" when fields are hidden.
Comment 1 Nick Edgar CLA 2002-01-15 14:45:30 EST
The debug view should take the same approach.
See bug 6388.
Comment 2 Tod Creasey CLA 2002-03-14 13:15:29 EST
Usuability not accessibility issue
Comment 3 Jared Burns CLA 2002-04-29 12:44:49 EDT
The debugger has been updated to the intuitive toggle behavior.

The outliner should be updated to this behavior as well.

The question of the dynamic tooltips has not yet been addressed in the debugger,
but I agree with Nick's suggestion. Dynamic tooltips on toggle buttons are a bad
idea.
Comment 4 Kai-Uwe Maetzel CLA 2002-04-30 09:25:48 EDT
The approach currently taken by JDT UI is consistent: When a button is checked 
a filter is active. Following your approach means that two buttons (Show 
Fields, Show Static Members) are "inverted" filters, whereas (Show Only Public 
Members) is a filter. For the user looking at the artwork this is not plausible.

There are two alternatives:
a) We introduce buttons for private, protected, and default members -> 
overloads the toolbar.
b) Instead of "Show Only Public Members" we introduce "Show Non-Public 
Members" -> requires new artwork.
Comment 5 Nick Edgar CLA 2002-04-30 13:02:59 EDT
I agree if you mean the user's notion of filter (based on the labels, which 
state what is shown), rather than the implementation filters (which hide 
things).
If the label says "Show Static Members" then static members should be shown 
when the button is pushed in.
Likewise, I don't have a problem with the label "Show Only Public Members".
It should show only public members when pushed in.
The defaults are up to you.  I believe currently the defaults are hide statics 
and finals, and also show non-public members.  So none of the buttons would be 
pushed in.
Comment 6 Nick Edgar CLA 2002-04-30 13:03:24 EDT
Please see comments above.
Comment 7 Martin Aeschlimann CLA 2002-05-01 06:53:37 EDT
*** Bug 9853 has been marked as a duplicate of this bug. ***
Comment 8 Randy Hudson CLA 2002-05-01 10:39:32 EDT
From the ATC, the JDT was just following the UCD.  So I think the UCD needs to 
be modified ASAP to match these changes.
Comment 9 Nick Edgar CLA 2002-05-01 16:29:48 EDT
Sorry, what does UCD expand to?  Do you mean the Eclipse UI design guidelines?
Comment 10 Nick Edgar CLA 2002-05-01 16:59:01 EDT
*** Bug 9860 has been marked as a duplicate of this bug. ***
Comment 11 Erich Gamma CLA 2002-05-07 12:48:42 EDT
We will change the filter actions as follows (basically going with Kai's 
proposal b)

Field: 
     pressed = shows the fields
     unpressed = doesn't show the fields
     tooltip: Show Fields
Static: 
     pressed = shows the static members
     unpressed = doesn't show the static members
     tooltip: Show Static Members
Public: 
     pressed = filters non-public members
     unpressed = no filtering
     tooltip: Public Members Only
     we have ordered new artwork for the public filter, to
     emphasize that it is a filter, i.e., public sphere with a filter adornment.

We will also change the tooltips to have static text only.
Comment 12 Nick Edgar CLA 2002-05-07 15:30:54 EDT
Recommend using "Show Only Public Members" for tooltip instead of "Public 
Members Only".
Comment 13 Martin Aeschlimann CLA 2002-05-08 05:08:50 EDT
fixed > 20020502
Comment 14 Erich Gamma CLA 2002-05-08 20:20:33 EDT
according the latest UI guide lines we should still use dynamic tooltips.
Reopen so that we will revisit.
Comment 15 Randy Hudson CLA 2002-05-09 08:32:49 EDT
Nick, UCD = User centered design = Julian et. al.  The usability team said they 
would change the UI guidelines.  Please *don't* undo these fixes just because 
the documentation is out-of-date.  Is there a component that this can be moved 
to for "UCD"?
Comment 16 Martin Aeschlimann CLA 2002-05-14 13:51:55 EDT
The old behaviour (hide fields / statics) without dynamic tooltips is back 
again.
See bug 15946

> 20020514