in src/org/pushingpixels/lightbeam/panels/SpinnerPanel.java [140:183]
public PerformanceScenario getToggleEnabledScenario() {
return new BaseSpinnerPerformanceScenario() {
Map<JSpinner, Boolean> origEnabledMap;
@Override
public String getName() {
return "Toggling enabled on spinners";
}
@Override
public int getIterationCount() {
return 10;
}
@Override
public void setup() {
super.setup();
this.origEnabledMap = new HashMap<JSpinner, Boolean>();
for (JSpinner spinner : this.controls) {
this.origEnabledMap.put(spinner, spinner.isEnabled());
}
}
@Override
public void tearDown() {
for (JSpinner spinner : this.controls) {
spinner.setEnabled(this.origEnabledMap.get(spinner));
}
this.origEnabledMap.clear();
super.tearDown();
}
@Override
public void runSingleIteration(int iterationNumber) {
int startInd = this.flipCount * iterationNumber;
int endInd = startInd + this.flipCount;
for (int i = startInd; i < endInd; i++) {
JSpinner spinner = this.controls.get(this.perms[i]);
spinner.setEnabled(!spinner.isEnabled());
}
paintImmediately(new Rectangle(0, 0, getWidth(), getHeight()));
}
};
}