With ZK, you could make a component draggable by assigning any value, other than "false", to the draggable property. To disable it, assign it with "false".
<image draggable="true"/>
Similarly, you could make a component droppable by assigning "true" to the droppable property.
<hbox droppable="true"/>
Then, user could drag a draggable component, and then drop it to a droppable component.