If you have ever used a graphical file system manager to move a file from one folder to another, you have used Drag and Drop (often abbreviated DnD). The term “drag and drop” refers to a GUI action in which the end user “picks up” an object such as a file or piece of text by moving the cursor over the object, clicking the mouse button, and, without releasing the button, “dragging” the object to a particular area of the screen and releasing the mouse button to “drop” the object. This process is meant to extend the desktop metaphor. Just like your real desktop, you can rearrange things by picking them up, moving them, and dropping them in a filing cabinet, a trash can, an in-box, a shoebox, or the floor.
Some programmers have added DnD functionality to individual
components. For example, you might want to have a graphically
JTree. Even without the
DnD package, you can accomplish this with a clever bit of programming
and a good deal of time. With the DnD package, however, not only do you
not need the clever bit of programming, you are not limited to one
component. You can drag information from one component to another in the
same application, in two different Java applications (using separate
JVMs), or even between your Java application and the native windowing
SDK 1.4 introduced several new features that make minimal DnD functionality easy to program for simple cases. On the drag side, many components now have a new boolean ...