Fundamentally, you can drag-and-drop something from one place to another inside your program, or you can drag-and-drop something from inside your program into some other program. These variants are called interior drag-and-drop and exterior drag-and-drop, respectively.
Interior drag-and-drop is fairly simple, both from a conceptual and from a coding point-of-view. Exterior drag-and-drop demands significantly more sophisticated support because both the programs involved must subscribe to the same concepts, and they must be implemented in compatible ways.
Critical to both variants of the drag-and-drop idiom is an understanding of the source-and-target paradigm.
|
|