Making "Wells": Whose Control Is It Anyway?
Thomas McGrath III
3mcgrath at adelphia.net
Wed Feb 23 12:43:17 EST 2005
Jerry,
I am not sure what it is exactly that you are asking. But have you
looked in the documentation under drag?
You said: no handlers in the other controls on the card will get
triggered (right?),
But: I think that you can trap and act upon a few things while doing a
drag:
dragDrop - Sent to the object where data was dropped when a drag and
drop finishes.
dragEnd - Sent to the object a drag and drop started from, when the
data is dropped.
dragEnter - Sent when the mouse pointer moves into an object during a
drag and drop.
dragLeave - Sent when the mouse pointer moves out of an object during a
drag and drop.
dragMove - Sent when the user moves the mouse during a drag and drop.
dragSource - Returns the long ID of the object that dragged data was
dragged from.
dragDestination - Returns the long ID of the object that dragged data
was dropped on.
dragData - Returns the long ID of the object that dragged data was
dropped on.
I would think that you could combine a custom property in your "drop
zone" item and during a drag do a test as to what is being dragged and
wether it is appropriate to drop it or not and then act upon that.
HTH
Tom
On Feb 23, 2005, at 10:04 AM, Jerry Balzano wrote:
>> Here's the situation: say the user is dragging a green group. Other
>> grouped controls on the card have green "slots" (actually fields with
>> different text color) that need to signal that they will "accept the
>> drop" of the green group, which they do by hiliting their border
>> (actually turning off their threeD property temporarily). Since I
>> have an object attached to my cursor (the green group I'm dragging),
>> no handlers in the other controls on the card will get triggered
>> (right?), so I seem to have no choice but to iterate over the
>> controls, and do a test inside the original green-group handler (or —
>> gasp — inside an "idle" handler) like
>> if the mouseLoc is within the rect of control i
>> then set the threeD of control i to false
>>
>> I foresee this "solution" scaling badly as the number of controls on
>> the card increases. But I don't at the moment see a better one. Is
>> there?
>>
Thomas J. McGrath III
SCS
1000 Killarney Dr.
Pittsburgh, PA 15234
412-885-8541
More information about the use-livecode
mailing list