diff options
| author | tkellner <tkellner@174cde9d-5d70-4d2a-aa98-46368bc2aaf7> | 2013-04-10 18:53:11 +0000 | 
|---|---|---|
| committer | tkellner <tkellner@174cde9d-5d70-4d2a-aa98-46368bc2aaf7> | 2013-04-10 18:53:11 +0000 | 
| commit | b2968bef5d56723826cfe38f1fe5ab1d60aa79f3 (patch) | |
| tree | 8bf68cf3b7c8a6d80d3338046110a6decd60fce2 /pdf-over-gui/src/main/java/at/asit/pdfover/gui/MainWindowBehavior.java | |
| parent | 2e533b04ae8b232a50a83101692e20cda53696fb (diff) | |
| download | mocca-b2968bef5d56723826cfe38f1fe5ab1d60aa79f3.tar.gz mocca-b2968bef5d56723826cfe38f1fe5ab1d60aa79f3.tar.bz2 mocca-b2968bef5d56723826cfe38f1fe5ab1d60aa79f3.zip | |
State Machine refactoring
git-svn-id: https://joinup.ec.europa.eu/svn/pdf-over/trunk@23 174cde9d-5d70-4d2a-aa98-46368bc2aaf7
Diffstat (limited to 'pdf-over-gui/src/main/java/at/asit/pdfover/gui/MainWindowBehavior.java')
| -rw-r--r-- | pdf-over-gui/src/main/java/at/asit/pdfover/gui/MainWindowBehavior.java | 74 | 
1 files changed, 74 insertions, 0 deletions
| diff --git a/pdf-over-gui/src/main/java/at/asit/pdfover/gui/MainWindowBehavior.java b/pdf-over-gui/src/main/java/at/asit/pdfover/gui/MainWindowBehavior.java new file mode 100644 index 00000000..63c2dafd --- /dev/null +++ b/pdf-over-gui/src/main/java/at/asit/pdfover/gui/MainWindowBehavior.java @@ -0,0 +1,74 @@ +/* + * Copyright 2012 by A-SIT, Secure Information Technology Center Austria + * + * Licensed under the EUPL, Version 1.1 or - as soon they will be approved by + * the European Commission - subsequent versions of the EUPL (the "Licence"); + * You may not use this work except in compliance with the Licence. + * You may obtain a copy of the Licence at: + * http://joinup.ec.europa.eu/software/page/eupl + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the Licence is distributed on an "AS IS" basis, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the Licence for the specific language governing permissions and + * limitations under the Licence. + */ +package at.asit.pdfover.gui; + +import java.util.EnumMap; +import java.util.Map; + +import at.asit.pdfover.gui.MainWindow.Buttons; + +/** + * Behavior manipulation for Main Window + */ +public class MainWindowBehavior { +	protected Map<Buttons, Boolean> buttonsEnabled; +	protected Map<Buttons, Boolean> buttonsActive; +	protected boolean mainBarVisible; + +	public MainWindowBehavior() { +		this.buttonsActive = new EnumMap<MainWindow.Buttons, Boolean>(MainWindow.Buttons.class); +		this.buttonsEnabled = new EnumMap<MainWindow.Buttons, Boolean>(	MainWindow.Buttons.class); +		reset(); +	} + +	public void setActive(Buttons button, boolean active) { +		this.buttonsActive.put(button, active); +	} + +	public boolean getActive(Buttons button) { +		return this.buttonsActive.get(button); +	} + +	public void setEnabled(Buttons button, boolean enabled) { +		this.buttonsEnabled.put(button, enabled); +	} + +	public boolean getEnabled(Buttons button) { +		return this.buttonsEnabled.get(button); +	} + +	/** +	 * Resets all behavior to a default state +	 * All buttons are inactive +	 * All buttons are disabled +	 * Main bar is visible +	 */ +	public void reset() { +		for (Buttons button : Buttons.values()) { +			setActive(button, false); +			setEnabled(button, false); +		} +		setMainBarVisible(true); +	} + +	public void setMainBarVisible(boolean visible) { +		this.mainBarVisible = visible; +	} + +	public boolean getMainBarVisible() { +		return this.mainBarVisible; +	} +} | 
