Reordering columns by dragging throws java.lang.IllegalArgumentExceptions.
Steps:
In the Ensemble app go to the table demo.
Using the mouse drag the "Last" column to be the last column.
Upon placement the exception is thrown, the placement is not completed and the location preview remains (see screen shot)
Exception in thread "JavaFX Application Thread" java.lang.IllegalArgumentException: Children: duplicate children added parent=NestedTableColumnHeader@256e588e[styleClass=nested-column-header]
at javafx.scene.Parent$1.onProposedChange(Parent.java:325)
at com.sun.javafx.collections.VetoableObservableList.setAll(VetoableObservableList.java:70)
at com.sun.javafx.scene.control.skin.NestedTableColumnHeader.updateContent(NestedTableColumnHeader.java:207)
at com.sun.javafx.scene.control.skin.NestedTableColumnHeader.setColumns(NestedTableColumnHeader.java:165)
at com.sun.javafx.scene.control.skin.NestedTableColumnHeader$1.onChanged(NestedTableColumnHeader.java:71)
at com.sun.javafx.scene.control.WeakListChangeListener.onChanged(WeakListChangeListener.java:51)
at com.sun.javafx.collections.ObservableListWrapper.callObservers(ObservableListWrapper.java:78)
at com.sun.javafx.collections.ObservableListWrapper.add(ObservableListWrapper.java:97)
at com.sun.javafx.scene.control.skin.TableColumnHeader.moveColumn(TableColumnHeader.java:368)
at com.sun.javafx.scene.control.skin.TableColumnHeader.columnReorderingComplete(TableColumnHeader.java:617)
at com.sun.javafx.scene.control.skin.TableColumnHeader$8.handle(TableColumnHeader.java:230)
at com.sun.javafx.scene.control.skin.TableColumnHeader$8.handle(TableColumnHeader.java:218)
at com.sun.javafx.event.CompositeEventHandler.dispatchBubblingEvent(CompositeEventHandler.java:60)
at com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(EventHandlerManager.java:162)
at com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(EventHandlerManager.java:115)
at com.sun.javafx.event.CompositeEventDispatcher.dispatchBubblingEvent(CompositeEventDispatcher.java:38)
at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:37)
at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:92)
at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:35)
at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:92)
at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:35)
at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:92)
at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:35)
at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:92)
at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:35)
at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:92)
at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:35)
at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:92)
at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:35)
at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:92)
at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:35)
at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:92)
at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:35)
at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:92)
at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:35)
at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:92)
at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:35)
at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:92)
at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:35)
at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:92)
at com.sun.javafx.event.EventUtil.fireEventImpl(EventUtil.java:47)
at com.sun.javafx.event.EventUtil.fireEvent(EventUtil.java:33)
at javafx.event.Event.fireEvent(Event.java:171)
at javafx.scene.Scene$MouseHandler.process(Scene.java:2703)
at javafx.scene.Scene$MouseHandler.process(Scene.java:2524)
at javafx.scene.Scene$MouseHandler.access$1200(Scene.java:2497)
at javafx.scene.Scene.impl_processMouseEvent(Scene.java:1230)
at javafx.scene.Scene$ScenePeerListener.mouseEvent(Scene.java:1814)
at com.sun.javafx.tk.quantum.GlassViewEventHandler.handleMouseEvent(GlassViewEventHandler.java:203)
at com.sun.glass.ui.View.handleMouseEvent(View.java:256)
at com.sun.glass.ui.View.notifyMouse(View.java:516)
java.lang.IllegalArgumentException: Children: duplicate children added parent=NestedTableColumnHeader@256e588e[styleClass=nested-column-header]
at javafx.scene.Parent$1.onProposedChange(Parent.java:325)
at com.sun.javafx.collections.VetoableObservableList.setAll(VetoableObservableList.java:70)
at com.sun.javafx.scene.control.skin.NestedTableColumnHeader.updateContent(NestedTableColumnHeader.java:207)
at com.sun.javafx.scene.control.skin.NestedTableColumnHeader.setColumns(NestedTableColumnHeader.java:165)
at com.sun.javafx.scene.control.skin.TableHeaderRow.layoutChildren(TableHeaderRow.java:368)
at javafx.scene.Parent.layout(Parent.java:900)
at javafx.scene.Parent.layout(Parent.java:910)
at javafx.scene.Parent.layout(Parent.java:910)
at javafx.scene.Parent.layout(Parent.java:910)
at javafx.scene.Parent.layout(Parent.java:910)
at javafx.scene.Parent.layout(Parent.java:910)
at javafx.scene.Parent.layout(Parent.java:910)
at javafx.scene.Parent.layout(Parent.java:910)
at javafx.scene.Scene.layoutDirtyRoots(Scene.java:451)
at javafx.scene.Scene.doLayoutPass(Scene.java:424)
at javafx.scene.Scene.access$2800(Scene.java:132)
at javafx.scene.Scene$ScenePulseListener.pulse(Scene.java:1754)
at com.sun.javafx.tk.Toolkit.firePulse(Toolkit.java:292)
at com.sun.javafx.tk.quantum.QuantumToolkit.pulse(QuantumToolkit.java:385)
at com.sun.javafx.tk.quantum.QuantumToolkit$8.run(QuantumToolkit.java:311)
Steps:
In the Ensemble app go to the table demo.
Using the mouse drag the "Last" column to be the last column.
Upon placement the exception is thrown, the placement is not completed and the location preview remains (see screen shot)
Exception in thread "JavaFX Application Thread" java.lang.IllegalArgumentException: Children: duplicate children added parent=NestedTableColumnHeader@256e588e[styleClass=nested-column-header]
at javafx.scene.Parent$1.onProposedChange(Parent.java:325)
at com.sun.javafx.collections.VetoableObservableList.setAll(VetoableObservableList.java:70)
at com.sun.javafx.scene.control.skin.NestedTableColumnHeader.updateContent(NestedTableColumnHeader.java:207)
at com.sun.javafx.scene.control.skin.NestedTableColumnHeader.setColumns(NestedTableColumnHeader.java:165)
at com.sun.javafx.scene.control.skin.NestedTableColumnHeader$1.onChanged(NestedTableColumnHeader.java:71)
at com.sun.javafx.scene.control.WeakListChangeListener.onChanged(WeakListChangeListener.java:51)
at com.sun.javafx.collections.ObservableListWrapper.callObservers(ObservableListWrapper.java:78)
at com.sun.javafx.collections.ObservableListWrapper.add(ObservableListWrapper.java:97)
at com.sun.javafx.scene.control.skin.TableColumnHeader.moveColumn(TableColumnHeader.java:368)
at com.sun.javafx.scene.control.skin.TableColumnHeader.columnReorderingComplete(TableColumnHeader.java:617)
at com.sun.javafx.scene.control.skin.TableColumnHeader$8.handle(TableColumnHeader.java:230)
at com.sun.javafx.scene.control.skin.TableColumnHeader$8.handle(TableColumnHeader.java:218)
at com.sun.javafx.event.CompositeEventHandler.dispatchBubblingEvent(CompositeEventHandler.java:60)
at com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(EventHandlerManager.java:162)
at com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(EventHandlerManager.java:115)
at com.sun.javafx.event.CompositeEventDispatcher.dispatchBubblingEvent(CompositeEventDispatcher.java:38)
at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:37)
at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:92)
at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:35)
at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:92)
at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:35)
at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:92)
at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:35)
at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:92)
at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:35)
at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:92)
at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:35)
at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:92)
at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:35)
at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:92)
at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:35)
at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:92)
at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:35)
at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:92)
at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:35)
at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:92)
at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:35)
at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:92)
at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:35)
at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:92)
at com.sun.javafx.event.EventUtil.fireEventImpl(EventUtil.java:47)
at com.sun.javafx.event.EventUtil.fireEvent(EventUtil.java:33)
at javafx.event.Event.fireEvent(Event.java:171)
at javafx.scene.Scene$MouseHandler.process(Scene.java:2703)
at javafx.scene.Scene$MouseHandler.process(Scene.java:2524)
at javafx.scene.Scene$MouseHandler.access$1200(Scene.java:2497)
at javafx.scene.Scene.impl_processMouseEvent(Scene.java:1230)
at javafx.scene.Scene$ScenePeerListener.mouseEvent(Scene.java:1814)
at com.sun.javafx.tk.quantum.GlassViewEventHandler.handleMouseEvent(GlassViewEventHandler.java:203)
at com.sun.glass.ui.View.handleMouseEvent(View.java:256)
at com.sun.glass.ui.View.notifyMouse(View.java:516)
java.lang.IllegalArgumentException: Children: duplicate children added parent=NestedTableColumnHeader@256e588e[styleClass=nested-column-header]
at javafx.scene.Parent$1.onProposedChange(Parent.java:325)
at com.sun.javafx.collections.VetoableObservableList.setAll(VetoableObservableList.java:70)
at com.sun.javafx.scene.control.skin.NestedTableColumnHeader.updateContent(NestedTableColumnHeader.java:207)
at com.sun.javafx.scene.control.skin.NestedTableColumnHeader.setColumns(NestedTableColumnHeader.java:165)
at com.sun.javafx.scene.control.skin.TableHeaderRow.layoutChildren(TableHeaderRow.java:368)
at javafx.scene.Parent.layout(Parent.java:900)
at javafx.scene.Parent.layout(Parent.java:910)
at javafx.scene.Parent.layout(Parent.java:910)
at javafx.scene.Parent.layout(Parent.java:910)
at javafx.scene.Parent.layout(Parent.java:910)
at javafx.scene.Parent.layout(Parent.java:910)
at javafx.scene.Parent.layout(Parent.java:910)
at javafx.scene.Parent.layout(Parent.java:910)
at javafx.scene.Scene.layoutDirtyRoots(Scene.java:451)
at javafx.scene.Scene.doLayoutPass(Scene.java:424)
at javafx.scene.Scene.access$2800(Scene.java:132)
at javafx.scene.Scene$ScenePulseListener.pulse(Scene.java:1754)
at com.sun.javafx.tk.Toolkit.firePulse(Toolkit.java:292)
at com.sun.javafx.tk.quantum.QuantumToolkit.pulse(QuantumToolkit.java:385)
at com.sun.javafx.tk.quantum.QuantumToolkit$8.run(QuantumToolkit.java:311)