in src/org/pushingpixels/lightbeam/panels/ListPanel.java [161:191]
public PerformanceScenario getLargeMoveScenario() {
return new PerformanceScenario() {
int[] perms;
@Override
public String getName() {
return "Moving elements in a large list";
}
@Override
public void setup() {
list.scrollRectToVisible(list.getCellBounds(0, 0));
list.getSelectionModel().clearSelection();
this.perms = LightBeamUtils.getPermutation(list.getModel()
.getSize(), 2 * this.getIterationCount());
}
@Override
public int getIterationCount() {
return 10;
}
@Override
public void runSingleIteration(int iterationNumber) {
MoveableListModel model = (MoveableListModel) list.getModel();
model.move(this.perms[2 * iterationNumber],
this.perms[2 * iterationNumber + 1]);
list.paintImmediately(list.getVisibleRect());
}
};
}