void (final GuiEditor editor, final List<? extends RadComponent> selection, final AnActionEvent e) { if (myColumnDelta != 0) { // sort the selection so that move in indexed layout will handle components in correct order selection.sort((o1, o2) -> { int index1 = o1.getParent().indexOfComponent(o1); int index2 = o2.getParent().indexOfComponent(o2); return (index2 - index1) * myColumnDelta; }); } for(RadComponent c: selection) { c.getParent().getLayoutManager().moveComponent(c, myRowDelta, myColumnDelta, myRowSpanDelta, myColSpanDelta); } }