Enhancement
Major
#26190
Multiple drop operations per component
Currently you can only configure one drop operation per component.
- You cannot differentiate the operation in-app depending on where the drag comes from.
- You only have one common GUI operation after executing the drop, regardless of where the drag object comes from and regardless of the type of the drag object.
Code migration
The properties of the following layout templates and components have changed as follows:
Layout templates:
- table.template.xml: tableDrop now has a quantity value and is now called dropTargets
- tileTable.template.xml: tableDrop now has a quantity value and is now called dropTargets
- grid.template.xml: tableDrop now has a quantity value and is now called dropTargets
- treegrid.template.xml: tableDrop is now quantity-valued and is now called dropTargets
- treetable.template.xml: tableDrop is now quantity-valued and is now called dropTargets
- tileTreetable.template.xml: tableDrop is now quantity-valued and is now called dropTargets
- tree.template.xml: treeDrop is now set-valued and is now called dropTargets
- tileTree.template.xml: treeDrop is now quantity-valued and is now called dropTargets
Components:
- TableComponent (see TableConfig): tableDrop now has a quantity value and is now called dropTargets
- TreeComponent: treeDrop is now quantity-valued and is now called dropTargets
- DocumentationTreeComponent: treeDrop is now quantity-valued and is now called dropTargets
Improvement
- Multiple drop operations can be configured per component.
- The first operation that is possible on the respective target object is executed.
- A drop operation can contain a restriction that only activates it for certain source components from which the drag object originates.
Implementation
The user can configure a number of drop handlers on a drop-enabled component. In the case of a drop, the first handler in the list that is executable is executed.
Test
Configure two drop operations in a table or tree and check that the first permissible handler is executed.