Kirill M. Katsnelson wrote:
Some time ago, Jonathan Harris wrote...
| It's up to the application to initiate a drag operation. The win32 user
| interface guidlines recommend that the application should initiate a
| drag operation when the user clicks and holds the left-button (with or
| without modifiers) within selected text.
Let me pick a nit. Drag is initiated after mouse is moved minimum distance
with a button down.
I was paraphrasing the following from the MSVC++ 5.0 docs. Maybe the MS
docs are not self-consistant:
# Recommended user interface guidelines define the beginning of a drag
# operation as the selection of data and a WM_LBUTTONDOWN event
# occurring on a point inside the selected data.
In practice many MS apps (eg MS Developer Studio 97, MS Word 95) appear
to behave like this, except that they delay a little to check that the
'click' is actually a 'hold'.
| The button and modifier state is
| ignored for file drops.
Not exactly. They may have the same meaning for drop targets which are
file containers. What does dropping a file on a dired buffer mean?
But for a filemanager dnd the target app (ie XEmacs) can't pass any
information about the state of the modifiers to the source app (ie the
filemanager), so one can't implement the usual Move/Copy semantics for
even if one wanted to. Or am I missing something.
Jonathan.
--
Jonathan Harris | jhar(a)tardis.ed.ac.uk
London, England | Jonathan-Harris(a)psion.com