Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 322096

Summary: [Usability] Problems with 'Manage Links' dialog
Product: [Technology] Tigerstripe Reporter: Navid Mehregani <nmehrega>
Component: UIAssignee: Daniel Johnson <danijoh2>
Status: RESOLVED FIXED QA Contact:
Severity: enhancement    
Priority: P3 CC: chrhartl, erdillon
Version: unspecified   
Target Milestone: 0.5M0   
Hardware: PC   
OS: Mac OS X - Carbon (unsup.)   
Whiteboard:
Attachments:
Description Flags
Screenshot (manage links dialog)
none
patch_322096.txt
none
patch_322096.txt none

Description Navid Mehregani CLA 2010-08-08 20:13:20 EDT
Build Identifier: 

This enhancement is a general placeholder for all the issues and enhancements to 'Manage Links' dialog.  This is the dialog invoked by right clicking on a class diagram and selecting 'Manage Links'.  These issues have been reported by our users:

1) [enhancement-usability]: There should be a checkbox in the dialog allowing the user to display shortened name.  Something along the lines of "Display fully qualified name".

2) [defect]: List doesn't grab excess horizontal/vertical space when dialog is resized (see attached screenshot).

3) [enhancement-usability]: This list can be quite large for big models.  Hence it should have scroll bars.

4) [enhancement-usability]: Title of dialog and action should be changed to 'Manage Associations' as opposed to 'Manage Links'.  

5) [enhancement-usability]: Title of 'Source' and 'Target' headings should be changed to 'A End' and 'Z End'.  Title of 'Relationship Name' should be changed to 'Association Name'.

Reproducible: Always
Comment 1 Navid Mehregani CLA 2010-08-08 20:14:25 EDT
Created attachment 176121 [details]
Screenshot (manage links dialog)
Comment 2 Daniel Johnson CLA 2010-08-13 17:22:03 EDT
Created attachment 176590 [details]
patch_322096.txt

patch to fix all of the issues.

Classes Changed in workbench.ui.visualeditor.diagram:
ManageLinksDialog.java
ManageLinksAction.java
plugin.xml

I think that ManageLinksDialog should be renamed to ManageAssociationsDialog, and ManageLinksAction to ManageAssociationsAction

The option to show the class names or the fully qualified names worked as advertised, and the option is saved when the window is closed and re-opened, but not when the environment is quit and re-opened. Should this option be serialized to disk on quit?
Comment 3 Chris Hartley CLA 2010-08-13 18:31:08 EDT
I have no issue with the java file and class name staying as they are.

It is sufficient for the dialog box name option to persist per session, let's focus on more important stuff.
Comment 4 Navid Mehregani CLA 2010-08-14 03:12:24 EDT
(In reply to comment #2)
> The option to show the class names or the fully qualified names worked as
> advertised, and the option is saved when the window is closed and re-opened,
> but not when the environment is quit and re-opened. Should this option be
> serialized to disk on quit?

Thanks Dan!
The standard way of doing this is through Eclipse preferences.  I'd suggest storing it as a preference option under Tigerstripe>General.  That way the option will be presereved between sessions.
This will be a good exercise for you to familiarize yourself with Eclipse preferences, which is a vital feature of the framework.  See http://www.eclipse.org/articles/Article-Preferences/preferences.htm for more details.

Please attach the updated patch when you finished completing your changes.
Comment 5 Daniel Johnson CLA 2010-08-16 18:59:52 EDT
Created attachment 176743 [details]
patch_322096.txt

Patch to fix all of the issues. Same as before but now writes the "Show fully qualified names" preference value to the preference store on selection so it will be remembered between sessions. I also made some changes to how I was implementing the option before, now uses less memory and is faster ;)

Classes Changed in workbench.ui.visualeditor.diagram:
ManageLinksDialog.java
plugin.xml
Comment 6 Navid Mehregani CLA 2010-08-17 13:10:01 EDT
(In reply to comment #5)
> Created an attachment (id=176743) [details]
> patch_322096.txt
> 
> Patch to fix all of the issues. Same as before but now writes the "Show fully
> qualified names" preference value to the preference store on selection so it
> will be remembered between sessions. I also made some changes to how I was
> implementing the option before, now uses less memory and is faster ;)
> 
> Classes Changed in workbench.ui.visualeditor.diagram:
> ManageLinksDialog.java
> plugin.xml

+1
Great job Dan!  I just tested this and reviewed the code.  Everything looks good.  You're getting up2speed pretty fast :) 
One minor point: I'm not a big fan of commenting out old code.  It makes the code messy after a while.  Don't be afraid to remove code if you know it won't be of any use.  We can always check the CVS history for it if need be.  
Richard, no need to review this patch (unless you want to :).  It looks good to me and we can apply it as soon as our "code freeze" is over.
Comment 7 Navid Mehregani CLA 2010-08-17 13:10:53 EDT
BTW, I don't think it's necessary to rename the Java files.
Comment 8 Navid Mehregani CLA 2010-08-24 13:14:07 EDT
Patch has been reviewed and submitted.