annotate tests/Dnd/README @ 282:c42ec1d1cded r21-0b39

Import from CVS: tag r21-0b39
author cvs
date Mon, 13 Aug 2007 10:33:18 +0200
parents
children 558f606b08ae
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
282
c42ec1d1cded Import from CVS: tag r21-0b39
cvs
parents:
diff changeset
1 * Sun May 3 1998 Oliver Graf <ograf@fga.de>
c42ec1d1cded Import from CVS: tag r21-0b39
cvs
parents:
diff changeset
2
c42ec1d1cded Import from CVS: tag r21-0b39
cvs
parents:
diff changeset
3 This path contains test code for the new XEmacs
c42ec1d1cded Import from CVS: tag r21-0b39
cvs
parents:
diff changeset
4 Drag'n'Drop code.
c42ec1d1cded Import from CVS: tag r21-0b39
cvs
parents:
diff changeset
5
c42ec1d1cded Import from CVS: tag r21-0b39
cvs
parents:
diff changeset
6 Currently only drags are of interest. The internal
c42ec1d1cded Import from CVS: tag r21-0b39
cvs
parents:
diff changeset
7 functions only work for OffiX. MSWindows and CDE
c42ec1d1cded Import from CVS: tag r21-0b39
cvs
parents:
diff changeset
8 are broken with this patch.
c42ec1d1cded Import from CVS: tag r21-0b39
cvs
parents:
diff changeset
9
c42ec1d1cded Import from CVS: tag r21-0b39
cvs
parents:
diff changeset
10 The OffiX functions in mouse.el also work no longer,
c42ec1d1cded Import from CVS: tag r21-0b39
cvs
parents:
diff changeset
11 because drags are now misc-user-events.
c42ec1d1cded Import from CVS: tag r21-0b39
cvs
parents:
diff changeset
12
c42ec1d1cded Import from CVS: tag r21-0b39
cvs
parents:
diff changeset
13 The misc-user-event now also responds as a button-x-event
c42ec1d1cded Import from CVS: tag r21-0b39
cvs
parents:
diff changeset
14 to the event-* query functions.
c42ec1d1cded Import from CVS: tag r21-0b39
cvs
parents:
diff changeset
15
c42ec1d1cded Import from CVS: tag r21-0b39
cvs
parents:
diff changeset
16 The function of a drag is called dragdrop-drop-dispatch
c42ec1d1cded Import from CVS: tag r21-0b39
cvs
parents:
diff changeset
17 as you can see in droptest.el. From within the function
c42ec1d1cded Import from CVS: tag r21-0b39
cvs
parents:
diff changeset
18 you can access the actual misc-user-event through the
c42ec1d1cded Import from CVS: tag r21-0b39
cvs
parents:
diff changeset
19 current-mouse-event variable.
c42ec1d1cded Import from CVS: tag r21-0b39
cvs
parents:
diff changeset
20
c42ec1d1cded Import from CVS: tag r21-0b39
cvs
parents:
diff changeset
21 dragtest.el works theoretically, but it needs to be
c42ec1d1cded Import from CVS: tag r21-0b39
cvs
parents:
diff changeset
22 adapted to some new scheme fitting the drop code.
c42ec1d1cded Import from CVS: tag r21-0b39
cvs
parents:
diff changeset
23
c42ec1d1cded Import from CVS: tag r21-0b39
cvs
parents:
diff changeset
24 Short description of the object part of a drop misc-user-event:
c42ec1d1cded Import from CVS: tag r21-0b39
cvs
parents:
diff changeset
25 ( TYPE . DATA )
c42ec1d1cded Import from CVS: tag r21-0b39
cvs
parents:
diff changeset
26 TYPE is either the symbol dragdrop_MIME
c42ec1d1cded Import from CVS: tag r21-0b39
cvs
parents:
diff changeset
27 or the symbol dragdrop_URL
c42ec1d1cded Import from CVS: tag r21-0b39
cvs
parents:
diff changeset
28
c42ec1d1cded Import from CVS: tag r21-0b39
cvs
parents:
diff changeset
29 DATA is a list of URL strings if TYPE is dragdrop_URL
c42ec1d1cded Import from CVS: tag r21-0b39
cvs
parents:
diff changeset
30 if TYPE is dragdrop_MIME DATA is either a string
c42ec1d1cded Import from CVS: tag r21-0b39
cvs
parents:
diff changeset
31 which contains the MIME data, or it is a list of
c42ec1d1cded Import from CVS: tag r21-0b39
cvs
parents:
diff changeset
32 ( CONTENT-TYPE CONTENT-ENCODING MIME-DATA )
c42ec1d1cded Import from CVS: tag r21-0b39
cvs
parents:
diff changeset
33
c42ec1d1cded Import from CVS: tag r21-0b39
cvs
parents:
diff changeset
34 For DATA I am thinking of some different scheme:
c42ec1d1cded Import from CVS: tag r21-0b39
cvs
parents:
diff changeset
35 perhaps it would be more efficient to split the
c42ec1d1cded Import from CVS: tag r21-0b39
cvs
parents:
diff changeset
36 MIME data into header and body, make a plist from
c42ec1d1cded Import from CVS: tag r21-0b39
cvs
parents:
diff changeset
37 the header (for easy access), pre-convert the body
c42ec1d1cded Import from CVS: tag r21-0b39
cvs
parents:
diff changeset
38 to 8bit, and also attach the original data.
c42ec1d1cded Import from CVS: tag r21-0b39
cvs
parents:
diff changeset
39 This would make the access easier, but it would
c42ec1d1cded Import from CVS: tag r21-0b39
cvs
parents:
diff changeset
40 require that I do a lot of MIME stuff in C, a thing
c42ec1d1cded Import from CVS: tag r21-0b39
cvs
parents:
diff changeset
41 that tm-mime-view already does for us.