public PerformanceScenario getToggleEnabledScenario()

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()));
			}
		};
	}