DragDropLayouts
Drag & Drop for core layouts
Currently when you want to drag and drop between layouts you will have to wrap the source component in a DragAndDropWrapper. Many times this is adequate but it tends to add some complexity to the code and yet another element in the DOM. It would be much nicer if the layouts would handle this for you.
To solve this issue I have extended the core layouts and implemented the necessary functionality so the layouts are valid drag sources and drop targets. This means that in your code you don't have to concern yourself with the drag and drop when adding components, only enable drag&drop in the layout and you are ready to go!
Currently supported layouts are:
- AbsoluteLayout (DDAbsoluteLayout)
- HorizontalLayout (DDHorizontalLayout)
- VerticalLayout (DDVerticalLayout)
- GridLayout (DDGridLayout)
- HorizontalSplitPanel (DDHorizontalSplitPanel)
- VerticalSplitPanel (DDVerticalSplitPanel)
- TabSheet (DDTabSheet)
- Accordion (DDAccordion)
- CssLayout (DDCssLayout)
- FormLayout (DDFormLayout)
- Panel (DDPanel)
Please see the version table below to decide which version to use in your project:
Vaadin | DragDropLayouts |
6.x | 0.x |
7.0.x+ | 1.0.x |
7.2.x+ | 1.1.x |
7.6.x+ | 1.2.x |
7.7.x+ | 1.3.x |
8.x | 1.4.x |
Sample code
// Create a absolute layout DDAbsoluteLayout layout = new DDAbsoluteLayout(); // Enable dragging components layout.setDragMode(LayoutDragMode.CLONE); // Enable dropping components layout.setDropHandler(new DefaultAbsoluteLayoutDropHandler());
Links
Compatibility
Was this helpful? Need more help?
Leave a comment or a question below. You can also join
the chat on Discord or
ask questions on StackOverflow.
Version
Fixes the widgetset inherit issue in 1.3.1 https://github.com/johndevs/dragdroplayouts/issues/69
- Released
- 2016-09-01
- Maturity
- STABLE
- License
- Apache License 2.0
Compatibility
- Framework
- Vaadin 7.7+
- Vaadin 6.5+ in 0.4
- Vaadin 7.0+ in 1.0.0.alpha1
- Vaadin 7.2+ in 1.1
- Vaadin 7.6+ in 1.2
- Vaadin 8.0+ in 1.4
- Browser
- Internet Explorer
- Firefox
- Opera
- Safari
- Google Chrome
- Internet Explorer
- iOS Browser
- Android Browser
- Internet Explorer
- Internet Explorer
- Windows Phone
DragDropLayouts - Vaadin Add-on Directory
Drag & Drop for core layoutsVaadin | DragDropLayouts |
6.x | 0.x |
7.0.x+ | 1.0.x |
7.2.x+ | 1.1.x |
7.6.x+ | 1.2.x |
7.7.x+ | 1.3.x |
8.x | 1.4.x |