Thanks everyone for taking the time to review this UI and to provide the
feedback. Unfortunately, I only found out about this meeting a couple of
hours before it was supposed to happen, so I was not able to attend. See
my comments inline...

 

- Konstantin

 

PS: For broader visibility, I changed wtp-pmc list on this e-mail thread
to wtp-dev.

 

 

-----Original Message-----
From: Raev, Kaloyan [mailto:[EMAIL PROTECTED] 
Sent: Friday, May 30, 2008 2:16 AM
To: Konstantin Komissarchik; User Interface Architecture Working Group;
WTP PMC communications (including coordination, announcements,and Group
discussions)
Subject: WTP Facets Framework UI Walkthrough Notes

 

Hello, 

 

Here are the notes I have taken during the WTP Facets Framework UI

walkthrough that we did on Wednesday. 

There are some screenshot uploaded on the wiki that can be used for a

quick reference while reading the notes:

http://wiki.eclipse.org/UI_Walkthrough_Facets

 

I am sending these notes to Konstantin, who develops the Facets

Framework, WTP PMC list and UI Working Group list. 

Konstantin, I assume you will have questions. You can discuss them in

the UI Working Group list. We may make another walkthrough on facets in

a few weeks if needed. 

 

Notes follow...

 

 

 

The first wizard page of the Project Creation wizards looks OK and

complies with the Eclipse UI guildelines. 

http://wiki.eclipse.org/Image:Screenshot_facets_1.png

The idea for choosing the version of the primary facet on the first

wizard page is accepted well. 

 

When looking at the Project Facets dialog

(http://wiki.eclipse.org/Image:Screenshot_facets_2.png) and the Project

Facets property page

(http://wiki.eclipse.org/Image:Screenshot_facets_3.png) there are lot of

recommendations suggested. 

 

* the checkbox in front of each facet

  - the current situation is that if the facet cannot be uninstalled,

the checkbox cannot be unchecked. Instead a tooltip pops up explaining

why it cannot be unchecked. This tooltip is quite a strange idea and

does not comply with the Eclipse UI guidelines

 

[kosta] This is a third iteration at this UI element and one that has
been best-received by users. We've tried simply not allowing the
operation (users are confused by lack of visual feedback). We've tried a
msg box popup (users don't like because it's too jarring).

 

  - checkboxes that should not be unchecked should be grayed

 

[kosta] There is no such thing as a disabled checkbox in a checkbox
tree. "Gray" checkboxes are used for showing partially-selected parent
nodes and are not even gray on some platforms (such as WinXP with
default theme).

 

  - even better all checkboxes should be allowed to be unchecked, but if

the user unchecks a facet that cannot be uninstall, then an validation

error should appear. 

 

[kosta] I personally think that if an operation is not allowed, good UI
should prevent that operation. Unfortunately, the checkbox tree control
simply does not handle this scenario, so we had to think outside of the
box. It would not be an improvement to show a validation message in this
situation if the only corrective action is to reverse what the user just
did. Much better to not allow the user to do it in the first place.

 

* locking/unlocking

  - locking of facets is very weird and it seems that nobody (except

Konstantin) knows what exactly it does. It seems like it filters facets

depending on their constraints. 

 

[kosta] The concept of locked facets has existed in the framework from
the start, but Lock/Unlock UI was only made available in 3.0 as part of
providing the generic Faceted Project Wizard feature. This feature was
introduced at the request of power users who wanted to be able to create
any faceted project (as allowed by facet constraints). Vast majority of
users will never use this feature as they interact with the framework
via specialized project creation wizards (such as Dynamic Web Project or
EJB) that pre-configure the locked facets in a manner that's consistent
with those project types.

 

  - if it is about filtering of facets, it would be much clearer for the

user if there is a global checkbox for showing/hiding the appropriate

facets for the current use case. 

 

[kosta] It is about filtering facets. By combining information about
locked facets with declared facet constraints, we are able to present to
the user only the facets that are applicable in that context. I don't
understand the specific suggestion mention here, so I will not comment
on that.

 

* validation

  - the idea of showing validation errors is very much liked

  - validation error entries should not be selectable. Currently, they

are and it this implies that the user can do something with this error

(like quick fix), but actually he has no options for actions. 

 

[kosta] This is left open to enable future support for things like quick
fixes and context sensitive help. This is also important for
accessibility.

 

  - validation errors should not appear in the special widget below the

facets list view, but in the dialog box title, or the property page

title. This is according to the Eclipse UI guidelines. 

 

[kosta] This comment comes up often. Unfortunately, the banner support
for messages is not capable of dealing with requirements of this UI. The
guidelines say that you are supposed to pick one error at a time to
present to the user. Once the user fixes that problem, you are supposed
to present the next one. That works ok when problems are not
inter-related. In this case, most of the problems that are displayed are
facet constraint validation issues. By their nature they are very
inter-related. Without seeing the whole picture (all validation
problems), it would be very difficult for the user to figure out the
appropriate corrective action. Think of it as trying to fix 100 compile
errors in java in a tool that presents you with one random compiler
error at a time until you fixed them all. It's not quite that bad, but
in downstream products where you have dozens of facets to deal with, it
is not uncommon to have half a dozen validation messages to present to
the user.

 

[kosta] It is also worth noting that the same UI panel appears in a
banner dialog as well as inside of a project properties page. Any
problems display solution needs to be able to work in both cases.

 

* Configurations drop-down

  - The Save button should have ellipsis :-)

 

[kosta] Good catch. I opened
https://bugs.eclipse.org/bugs/show_bug.cgi?id=234885
<https://bugs.eclipse.org/bugs/show_bug.cgi?id=234885> 

 

  - It would be better that the Save/Delete buttons are replaced with

Edit/Remove/New/Import buttons like in the Java > Code Style > Formatter

preferences page. 

  - Save/Delete seems to be rarely used, even never by the ordinary

users. So, it is better to remove them at all.

  - Creating and Deleting of facet configurations should be moved in a

Preferences page. A link ("Configure") to this preferences page could

replace the Save/Delete buttons. 

 

[kosta] The suggestion to put management of configurations into
preferences has come up before. There is an enhancement request to track
that possibility. Some UI mockups are available on a wiki linked from
one of the comments.

 

https://bugs.eclipse.org/bugs/show_bug.cgi?id=191715
<https://bugs.eclipse.org/bugs/show_bug.cgi?id=191715> 

 

* Runtime view

  - again validation errors are better than filtering. The user should

see all available runtimes, otherwise it may be frustrating why a

certain runtime is not available. When selecting invalid runtime, a

validation error should appear. 

 

[kosta] Yes, filtering of runtimes and lack of feedback regarding why a
runtime is not available has been reported as a problem by users in the
past. Some work was done to try to improve the situation, but I agree
that the current state is still not optimal. I have opened an
enhancement request to track taking another pass at this issue. More
details there.

 

https://bugs.eclipse.org/bugs/show_bug.cgi?id=234892
<https://bugs.eclipse.org/bugs/show_bug.cgi?id=234892> 

 

 

Greetings,

Kaloyan Raev

Eclipse WTP Committer

<http://www.eclipse.org/webtools/people/person.php?name=raev> 

Senior Developer

NW C JS TOOLS JEE (BG)

SAP Labs Bulgaria

T +359/2/9157-416

mailto:[EMAIL PROTECTED]

www.sap.com

 

P Save a tree - please do not print this email unless you really need

to! 

 


Notice:  This email message, together with any attachments, may contain 
information  of  BEA Systems,  Inc.,  its subsidiaries  and  affiliated 
entities,  that may be confidential,  proprietary,  copyrighted  and/or legally 
privileged, and is intended solely for the use of the individual or entity 
named in this message. If you are not the intended recipient, and have received 
this message in error, please immediately return this by email and then delete 
it.
_______________________________________________
wtp-dev mailing list
[email protected]
https://dev.eclipse.org/mailman/listinfo/wtp-dev

Reply via email to