diff options
| author | Tobias Kellner <tobias.kellner@iaik.tugraz.at> | 2016-06-30 13:56:55 +0200 | 
|---|---|---|
| committer | Tobias Kellner <tobias.kellner@iaik.tugraz.at> | 2016-06-30 13:56:55 +0200 | 
| commit | d6aa86ff603d7acaba3137cec1484d54bae3731b (patch) | |
| tree | 35580c8387c6e2f37e669c1fb78ac343bceb73a1 /pdf-over-gui | |
| parent | 2f2d383ee57fefab2f0a07d4be2169f4274b49fa (diff) | |
| download | pdf-over-d6aa86ff603d7acaba3137cec1484d54bae3731b.tar.gz pdf-over-d6aa86ff603d7acaba3137cec1484d54bae3731b.tar.bz2 pdf-over-d6aa86ff603d7acaba3137cec1484d54bae3731b.zip | |
Clicking on Open in Open state opens the file dialog
Diffstat (limited to 'pdf-over-gui')
4 files changed, 39 insertions, 38 deletions
| diff --git a/pdf-over-gui/src/main/java/at/asit/pdfover/gui/MainWindow.java b/pdf-over-gui/src/main/java/at/asit/pdfover/gui/MainWindow.java index 78fab160..d3484889 100644 --- a/pdf-over-gui/src/main/java/at/asit/pdfover/gui/MainWindow.java +++ b/pdf-over-gui/src/main/java/at/asit/pdfover/gui/MainWindow.java @@ -318,8 +318,13 @@ public class MainWindow {  			@Override  			public void mouseUp(MouseEvent e) { -				MainWindow.this.stateMachine.jumpToState(new OpenState( -						MainWindow.this.stateMachine)); +				if (MainWindow.this.stateMachine.getStatus().getCurrentState() instanceof OpenState) { +					((OpenState) MainWindow.this.stateMachine.getStatus() +							.getCurrentState()).openFileDialog(); +				} else { +					MainWindow.this.stateMachine.jumpToState(new OpenState( +							MainWindow.this.stateMachine)); +				}  			}  		});  		this.buttonMap.put(Buttons.OPEN, this.btn_open); 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 index a2f53e63..b48dbba8 100644 --- 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 @@ -44,7 +44,7 @@ public class MainWindowBehavior {  	 */  	public MainWindowBehavior() {  		this.buttonsActive = new EnumMap<MainWindow.Buttons, Boolean>(MainWindow.Buttons.class); -		this.buttonsEnabled = new EnumMap<MainWindow.Buttons, Boolean>(	MainWindow.Buttons.class); +		this.buttonsEnabled = new EnumMap<MainWindow.Buttons, Boolean>(MainWindow.Buttons.class);  		reset();  	} diff --git a/pdf-over-gui/src/main/java/at/asit/pdfover/gui/composites/DataSourceSelectComposite.java b/pdf-over-gui/src/main/java/at/asit/pdfover/gui/composites/DataSourceSelectComposite.java index eede00a8..83a92a7b 100644 --- a/pdf-over-gui/src/main/java/at/asit/pdfover/gui/composites/DataSourceSelectComposite.java +++ b/pdf-over-gui/src/main/java/at/asit/pdfover/gui/composites/DataSourceSelectComposite.java @@ -54,6 +54,26 @@ import at.asit.pdfover.gui.workflow.states.State;  public class DataSourceSelectComposite extends StateComposite {  	/** +	 * Open the input document selection dialog +	 */ +	public void openFileDialog() { +		FileDialog dialog = new FileDialog( +				DataSourceSelectComposite.this.getShell(), SWT.OPEN); +		dialog.setFilterExtensions(new String[] { "*.pdf", "*" }); //$NON-NLS-1$ //$NON-NLS-2$ +		dialog.setFilterNames(new String[] { +				Messages.getString("common.PDFExtension_Description"),  //$NON-NLS-1$ +				Messages.getString("common.AllExtension_Description") }); //$NON-NLS-1$ +		String fileName = dialog.open(); +		File file = null; +		if (fileName != null) { +			file = new File(fileName); +			if (file.exists()) { +				DataSourceSelectComposite.this.setSelected(file); +			} +		} +	} + +	/**  	 * Selection adapter for file browsing  	 */  	private final class FileBrowseDialogListener extends SelectionAdapter { @@ -65,20 +85,7 @@ public class DataSourceSelectComposite extends StateComposite {  		@Override  		public void widgetSelected(SelectionEvent e) { -			FileDialog dialog = new FileDialog( -					DataSourceSelectComposite.this.getShell(), SWT.OPEN); -			dialog.setFilterExtensions(new String[] { "*.pdf", "*" }); //$NON-NLS-1$ //$NON-NLS-2$ -			dialog.setFilterNames(new String[] {  -					Messages.getString("common.PDFExtension_Description"),  //$NON-NLS-1$ -					Messages.getString("common.AllExtension_Description") }); //$NON-NLS-1$ -			String fileName = dialog.open(); -			File file = null; -			if (fileName != null) { -				file = new File(fileName); -				if (file.exists()) { -					DataSourceSelectComposite.this.setSelected(file); -				} -			} +			openFileDialog();  		}  	} @@ -316,8 +323,6 @@ public class DataSourceSelectComposite extends StateComposite {  		this.redrawDrop();  	} -	private boolean press = false; -  	Composite drop_area;  	FormData fd_lbl_drag; @@ -336,21 +341,6 @@ public class DataSourceSelectComposite extends StateComposite {  		// Disable the check that prevents subclassing of SWT components  	} -	/** -	 * @return the press -	 */ -	public boolean isPress() { -		return this.press; -	} - -	/** -	 * @param press -	 *            the press to set -	 */ -	public void setPress(boolean press) { -		this.press = press; -	} -  	/*  	 * (non-Javadoc)  	 *  diff --git a/pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/states/OpenState.java b/pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/states/OpenState.java index 87792309..b77809ed 100644 --- a/pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/states/OpenState.java +++ b/pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/states/OpenState.java @@ -57,9 +57,6 @@ public class OpenState extends State {  	@Override  	public void run() { -		 -		 -		  		Status status = getStateMachine().getStatus();  		if (!(status.getPreviousState() instanceof PrepareConfigurationState) &&  			!(status.getPreviousState() instanceof OpenState)) @@ -87,7 +84,15 @@ public class OpenState extends State {  		log.debug("Got Datasource: " + getStateMachine().getStatus().getDocument().getAbsolutePath()); //$NON-NLS-1$  		this.setNextState(new PositioningState(getStateMachine()));  	} -	 + +	/** +	 * Open the input document selection dialog +	 */ +	public void openFileDialog() { +		if (this.selectionComposite != null) +			this.selectionComposite.openFileDialog(); +	} +  	/* (non-Javadoc)  	 * @see at.asit.pdfover.gui.workflow.states.State#cleanUp()  	 */ @@ -105,6 +110,7 @@ public class OpenState extends State {  		MainWindowBehavior behavior = getStateMachine().getStatus().getBehavior();  		behavior.reset();  		behavior.setEnabled(Buttons.CONFIG, true); +		behavior.setEnabled(Buttons.OPEN, true);  		behavior.setActive(Buttons.OPEN, true);  	} | 
