Skip to content
Snippets Groups Projects
Commit 1f6a9df2 authored by Julian's avatar Julian
Browse files

Use a drag cursor for draggable elements

parent 9df76102
No related branches found
No related tags found
1 merge request!2Resolve "Implement basic functionality"
<template> <template>
<div @dragstart="handleDragStart" :draggable="!isDisabled" id="wrapper"> <div
@dragstart="handleDragStart"
:draggable="!isDisabled"
id="wrapper"
ref="wrapper"
@dragend="handleDragEnd"
>
<slot></slot> <slot></slot>
</div> </div>
</template> </template>
...@@ -10,6 +16,7 @@ export default { ...@@ -10,6 +16,7 @@ export default {
methods: { methods: {
handleDragStart(event) { handleDragStart(event) {
if (this.isDisabled) return; if (this.isDisabled) return;
this.$refs.wrapper.style.cursor = "grabbing";
event.dataTransfer.setData( event.dataTransfer.setData(
"vueDrag/gridItem", "vueDrag/gridItem",
JSON.stringify({ JSON.stringify({
...@@ -24,6 +31,9 @@ export default { ...@@ -24,6 +31,9 @@ export default {
}) })
); );
}, },
handleDragEnd() {
this.$refs.wrapper.style.cursor = "grab";
},
}, },
props: { props: {
dragID: { dragID: {
...@@ -80,6 +90,9 @@ export default { ...@@ -80,6 +90,9 @@ export default {
isDisabled() { isDisabled() {
return this.disabled || this.isNotInGrid; return this.disabled || this.isNotInGrid;
}, },
cursor() {
return this.disabled ? "auto" : "grab";
},
}, },
}; };
</script> </script>
...@@ -89,5 +102,6 @@ export default { ...@@ -89,5 +102,6 @@ export default {
grid-column: v-bind(getX) / span v-bind(w); grid-column: v-bind(getX) / span v-bind(w);
grid-row: v-bind(getY) / span v-bind(h); grid-row: v-bind(getY) / span v-bind(h);
display: v-bind(getDisplay); display: v-bind(getDisplay);
cursor: v-bind(cursor);
} }
</style> </style>
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment