quasarframework / rfcs

RFCs for Quasar Framework
17 stars 2 forks source link

Offical support tree drag and drop #11

Open fyeeme opened 2 years ago

fyeeme commented 2 years ago

RFC (Request for Comments) Template

Please select your type of RFC (one or more):

Put an x in the boxes that apply

Other

Does this introduce a breaking change?

Put an x in the box that applies

Proposed RFC

s your feature request related to a problem? Please describe.

Some of the most useful and complex Quasar components are difficult to implement with a drag and drop library. See qTable and qTree.

For example If I wanted to implement drag and drop within qTree with this library https://github.com/SortableJS/Vue.Draggable/blob/master/example/components/nested-example.vue I would need to wrap q-tree__node within . I have no easy way of doing that.

Describe the solution you'd like

Official support and guidance for a Drag and Drop library which supports mobiles and tablets. It would mean that components structured in such a way that a well known drag and drop library such as the above could easily be implemented.

Examples in the different components docs how the supported library could be used.

I don't need support for multiple libraries but only one.

Describe alternatives you've considered Several drag and drop libraries.I have also rebuilt (bodged) both qTable as well as qTree (just finishing) because of this. Recreating those components is a lot of soul destroying work just to get drag and drop working.

As you can guess I am not the only one to do this see forum posts: https://forum.quasar-framework.org/topic/3543/drag-and-drop https://forum.quasar-framework.org/topic/4010/drag-and-drop-in-qtable-did-anyone-succeed https://forum.quasar-framework.org/topic/4595/q-table-rows-drag-and-drop https://forum.quasar-framework.org/topic/2619/drag-and-drop-data-table-column-ordering https://forum.quasar-framework.org/topic/3069/q-list-sortable/2 and more ... I won't list all here. But it is not difficult to see that a lot of people will want drag and drop and will be implementing (most likely badly) their own solutions.

This is one of the most missed features in Quasar IMO. So hopefully you consider it. Thank you for the great work.

IlCallo commented 1 year ago

You can actually get Sortable working on QTable, and surely other components too, fairly easy and without the need to rewrite the components

Example: https://gist.github.com/IlCallo/6abf4826a21662c7e8384a64c43aae53


That said, RFCs are meant to propose new features/APIs/implementations and request validation, not to request features Which means that if you write here, "drag & drop is needed" won't suffice You at least need to propose an API to show how it can be integrated seamlessly within Quasar components, opening an RFC issue for each API proposal

We know DnD is requested by a lot of people in the community, yet the variety of its usage in the wild makes it really difficult to define a good API Simply put: the effort and time needed to implement it can be put to better use by doing something else

myleslee commented 1 year ago

is it possible to integrate IlCallo's gist into the QTable documentation because it is a great starting point for people who are looking for DnD implementations. They can tailor it to match their needs from there.