PR# 3987 Suggestion - Drag-and-drop classes within the Clusters pane

Problem Report Summary
Submitter: peter_gummer
Category: EiffelStudio
Priority: Medium
Date: 2004/08/24
Class: Feature Request
Severity: Non-critical
Number: 3987
Release: 5.4.0907
Confidential: No
Status: Open
Responsible:
Environment: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.7) Gecko/20040626 Firefox/0.9.1
Synopsis: Suggestion - Drag-and-drop classes within the Clusters pane

Description
Whenever I want to move an existing class to a different cluster, I always find myself using the standard technique that you would use in any other Windows or Macintosh program: drag-and-drop.

It always takes me a couple of attempts before I remember EiffelStudio's arrogant disregard of user interface standards, and that I am using the wrong technique.

So I switch to the Diagram tool, target it to a suitable cluster, find that I can't get to the new cluster because of one of the bugs in the Diagram tool (the cluster has shrunk to 0x0 dimensions), go to Windows Explorer, delete the ead file, can't delete it because it's in use, go back to EiffelStudio, target the Diagram tool at another cluster, go back to Windows Explorer, delete the ead file successfully, go back to EiffelStudio, find the class bubble amongst the jumble of classes, find the cluster, resize it so that it's big enough for the class bubble, and drag the class into the cluster. Whew!

That's about five minutes of frustration in order to do something that would have taken a couple of seconds, if only this simple user interface standard had been respected in the Cluster tool.

By the way, having just finished writing the above, it occurred to me that maybe pick-and-drop works in the Cluster tree. It does!

PLEASE, WHEREVER POSSIBLE, SUPPLY DRAG-AND-DROP. I know you love pick-and-drop, and I agree it's sometimes easier than drag-and-drop, but NEW USERS EXPECT DRAG-AND-DROP TO WORK. EiffelStudio commits user interface sins that are analogous to the things that OOSC2 criticises in programming languages like C. It's not good that C changes the mathematical meaning of the '=' symbol to mean assignment, when we all learned at school that it was an assertion of equality, then invents a new symbol '==' to assert equality. Likewise, it's not good that EiffelStudio changes the meaning of a right-click to mean 'pick', when we've all been using it for over a decade to pop up a context menu, and then refuses in most cases to provide normal drag-and-drop functionality.
To Reproduce

										
Problem Report Interactions
From:peter_gummer    Date:2004/08/24    Download