Difference between revisions of "Drag and Drop"

From Trinity Desktop Project Wiki
Jump to navigation Jump to search
imported>Eliddell
(Created page with "== Protocols: Drag-And-Drop == Today, Drag-And-Drop (DND) is considered a requirement for commercial-quality applications. On most operating systems, support for DND is built...")
 
m (Blu256 moved page Drag-and-Drop Protocol (KDE3 Architecture) to Drag and Drop: Simpler name)
 
(2 intermediate revisions by the same user not shown)
Line 1: Line 1:
== Protocols: Drag-And-Drop ==
 
 
 
Today, Drag-And-Drop (DND) is considered a requirement for
 
Today, Drag-And-Drop (DND) is considered a requirement for
 
commercial-quality applications. On most operating systems, support
 
commercial-quality applications. On most operating systems, support
Line 15: Line 13:
 
== XDND ==
 
== XDND ==
   
Shortly before the release of KDE-1.x, a common effort was started
+
Shortly before the release of KDE 1.x, a common effort was started
 
to create a sophisticated standard drag-and-drop protocol. The result
 
to create a sophisticated standard drag-and-drop protocol. The result
of this effort is the [http://www.newplanetsoftware.com/xdnd/ XDND Standard]. In
+
of this effort is the [https://freedesktop.org/wiki/Specifications/XDND/ XDND Standard].
Version 2, KDE supports it as native drag and drop protocol throughout
+
In Version 2, KDE started supporting it as native drag and drop protocol throughout
 
the entire desktop.
 
the entire desktop.
   
Information how to program drag-and-drop in KDE applications can
+
Information how to program drag-and-drop in TDE applications can
be found in the [https://web.archive.org/web/20100923083859/http://doc.trolltech.com/3.3/draganddrop.html Qt documentation].
+
be found in the [http://trinitydesktop.org/docs/qt3/draganddrop.html TQt documentation].
   
  +
=== Some historical remarks ===
''Some historical remarks: Originally we expected XDND to be finished before the release KDE-1.0, so the temporary KDE-specific KDND protocol we were forced to create due to the lack of a reasonable standard could be replaced much ealier. But things sometimes take time in the software business.''
 
  +
Originally the KDE developers expected XDND to be finished
  +
before the release of KDE 1.0, so they were forced to create the temporary KDE-specific
  +
KDND protocol due to the lack of a reasonable standard could be replaced much ealier.
  +
But things sometimes take time in the software business.
   
 
== Motif ==
 
== Motif ==
Line 30: Line 32:
 
Motif, the former so-called "standard toolkit" on X11, also
 
Motif, the former so-called "standard toolkit" on X11, also
 
defined a drag-and-drop protocol. Some information about this effort
 
defined a drag-and-drop protocol. Some information about this effort
and why it was not widely accepted can be found on [http://www.newplanetsoftware.com/xdnd/other_protocols.html XDND's Other Protocols-page].
+
and why it was not widely accepted can be found on
  +
[http://web.archive.org/web/20110709030345/http://www.newplanetsoftware.com/xdnd/other_protocols.html this archived page].
   
The only widely-used application that supports it these days is
+
The only widely-used application that used to support it in the days
Netscape's Communicator. To make it possible to drag URLs from
+
of KDE 2.x was Netscape's Communicator. To make it possible to drag URLs from
Netscape onto KDE applications, KDE also supports Motif-drops in
+
Netscape onto KDE applications, KDE also supported Motif-drops in
 
version 2.
 
version 2.
   

Latest revision as of 15:37, 21 April 2022

Today, Drag-And-Drop (DND) is considered a requirement for commercial-quality applications. On most operating systems, support for DND is built-in, so everybody uses it and all programs can communicate with each other.

On X, however, there was no standard, so various groups have developed their own protocols, with the result that programs written for one protocol cannot talk to programs written for a different protocol. Clearly this does not satisfy the fundamental requirement that DND allow the user to drag data from any program to any other program.

XDND

Shortly before the release of KDE 1.x, a common effort was started to create a sophisticated standard drag-and-drop protocol. The result of this effort is the XDND Standard. In Version 2, KDE started supporting it as native drag and drop protocol throughout the entire desktop.

Information how to program drag-and-drop in TDE applications can be found in the TQt documentation.

Some historical remarks

Originally the KDE developers expected XDND to be finished before the release of KDE 1.0, so they were forced to create the temporary KDE-specific KDND protocol due to the lack of a reasonable standard could be replaced much ealier. But things sometimes take time in the software business.

Motif

Motif, the former so-called "standard toolkit" on X11, also defined a drag-and-drop protocol. Some information about this effort and why it was not widely accepted can be found on this archived page.

The only widely-used application that used to support it in the days of KDE 2.x was Netscape's Communicator. To make it possible to drag URLs from Netscape onto KDE applications, KDE also supported Motif-drops in version 2.


Initial Author; Matthias Ettrich