mui / toolpad

Toolpad: Full stack components and low-code builder for dashboards and internal apps.
https://mui.com/toolpad/
MIT License
1.28k stars 283 forks source link

Selection of multiple elements #528

Open oliviertassinari opened 2 years ago

oliviertassinari commented 2 years ago

Duplicates

Latest version

Summary 💡

Examples 🌈

Screenshot 2022-06-07 at 16 20 41

Motivation 🔦

Say I want to delete a whole section, it would be faster to delete multiple elements all at once.

However, what I find curious is that this feature is not making unanimity among all UI builders:

apedroferreira commented 2 years ago

i did find myself trying to do this a few times :D

Janpot commented 2 years ago

Would it be possible to drag a multiple selection? It could have multiple top level elements with different parents, what happens when you drop that somewhere?

prakhargupta1 commented 2 years ago

Adding to Jan's point, the type of actions user would want to do after selecting multiple components:

  1. Delete all of them
  2. Drag them to a different position on the page
  3. Horizontal resize
  4. Vertical resize
  5. Copy and paste
  6. Cut and paste
  7. Group them in a single container

Initially I think we can just support 1, 2 and see if others are requested by the community.

apedroferreira commented 2 years ago

Would it be possible to drag a multiple selection? It could have multiple top level elements with different parents, what happens when you drop that somewhere?

sounds like a nightmare :D maybe let's avoid that?

apedroferreira commented 2 years ago

Adding to Jan's point, the type of actions user would want to do after selecting multiple components:

  1. Delete all of them
  2. Drag them to a different position on the page
  3. Horizontal resize
  4. Vertical resize
  5. Copy and paste
  6. Cut and paste
  7. Group them in a single container

Initially I think we can just support 1, 2 and see if others are requested by the community.

won't be easy so it's better to take it slow like that, i think the first step would be to explore deleting multiple elements at least