public final ActionListener createButtonListener(final ToolButtons toolButton)
			throws IllegalArgumentException {

		switch (toolButton) {
			case MINUS:
				return new MinusButtonListener();
			case PLUS:
				return new PlusButtonListener();
			case RESET:
				return new ResetButtonListener();
			case START:
				return new StartButtonListener();
			case STOP:
				return new StopButtonListener();
			case Left:
				return new LeftButtonListener();
			case Right:
				return new RightButtonListener();
			case NEW:
				return new NewButtonListener();
			default:
				throw new IllegalArgumentException();
		}
	}