Skinning for Drag n Drop

Allow File items to be dragged on any GUI Element
NOTE: This is experimental and only available in my Drag and Drop Branch

You can allow a user to drag a list item onto any GUI element by specifying an ondrop action like: ACTION See here for a list of available Actions If you want to allow specific items to be dropable on that GUI Element, you can use the 'condition' Attribute ACTION

NOTE: with any GUI Element, I mean any, except Containers (Lists, Panels et. al.).

Auto Execute an Action while hovering
NOTE: This is experimental and only available in my Drag and Drop Branch

Still thinking about all the implications, so this isn't set in stone. Will add it later.

Prepare Containers to be dropable or reorderable
NOTE: This is experimental and only available in my Drag and Drop Branch

First, off, you don't have to do anything. In that case, when the user drags an item, it will be automatically added/moved and gives the user direct feedback.

Using a DragHint
NOTE: This is experimental and only available in my Drag and Drop Branch

If that's not the behavior you want, you can use a Drag Hint. That DragHint will be a dummy GUI Element shown, where the dragged item will finally placed.  <!- - YOUR USUAL LIST STUFF - -> 0         -8          640          16          CalibrateSubtitles.png stretch

Skin Labels available during drag & drop
NOTE: This is experimental and only available in my Drag and Drop Branch

EXAMPLE: Show the dragged Item under the Mouse
Add the following to your Pointer.xml and you skin will now show the dragged items icon (or label as a fallback), as well as a little icon when hovering the button with the id 3003 Pointer Drag Image 0      0       32       32       pointer-focus-drag.png !isempty(dragndrop.item.icon) 20      20       64       64       keep IconCrossfadeTime $INFO[dragndrop.item.icon] ThumbShadow.png 8      isempty(dragndrop.item.icon) 20      20       IconCrossfadeTime $INFO[dragndrop.item.label] dragndrop.hovered.id(3003) 60      60       16       16       add-icon.png I'm pretty sure any skinner could improve on that example, so feel free to do so ;)