package org.korsakow.ide.ui.controller.action;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import org.korsakow.ide.resources.widget.WidgetModel;
import org.korsakow.ide.ui.interfacebuilder.InterfaceBuilderMainPanel;
import org.korsakow.ide.ui.interfacebuilder.WidgetCanvasModel;
public class MoveToBackAction extends AbstractAction
{
private final InterfaceBuilderMainPanel interfBuilder;
public MoveToBackAction(InterfaceBuilderMainPanel interfBuilder)
{
this.interfBuilder = interfBuilder;
}
@Override
public void performAction()
{
WidgetCanvasModel model = interfBuilder.getCanvas().getModel();
final List<WidgetModel> widgets = model.getWidgets();
List<WidgetModel> selected = new ArrayList<WidgetModel>(model.getSelectedWidgets());
Collections.sort(selected, new MoveBackwardsAction.DepthSort(widgets));
for (int i = 0; i < selected.size(); ++i) {
WidgetModel widget = selected.get(i);
model.addWidget(i, widget);
}
}
}