summaryrefslogtreecommitdiff
path: root/pdf-over-gui/src/main/java/at/asit/pdfover/gui/controls/Dialog.java
diff options
context:
space:
mode:
authortkellner <tkellner@174cde9d-5d70-4d2a-aa98-46368bc2aaf7>2013-04-10 19:22:36 +0000
committertkellner <tkellner@174cde9d-5d70-4d2a-aa98-46368bc2aaf7>2013-04-10 19:22:36 +0000
commit15df4c768b00bf964ee1006d68d847b252ad115d (patch)
tree6222c26af0980e524e8a91c29dd883944c6651f0 /pdf-over-gui/src/main/java/at/asit/pdfover/gui/controls/Dialog.java
parentb83c6b7cab736262e6356e3027853ea494fd7d4e (diff)
downloadpdf-over-15df4c768b00bf964ee1006d68d847b252ad115d.tar.gz
pdf-over-15df4c768b00bf964ee1006d68d847b252ad115d.tar.bz2
pdf-over-15df4c768b00bf964ee1006d68d847b252ad115d.zip
Add new Dialog class to display a general messagebox
git-svn-id: https://joinup.ec.europa.eu/svn/pdf-over/trunk@287 174cde9d-5d70-4d2a-aa98-46368bc2aaf7
Diffstat (limited to 'pdf-over-gui/src/main/java/at/asit/pdfover/gui/controls/Dialog.java')
-rw-r--r--pdf-over-gui/src/main/java/at/asit/pdfover/gui/controls/Dialog.java120
1 files changed, 120 insertions, 0 deletions
diff --git a/pdf-over-gui/src/main/java/at/asit/pdfover/gui/controls/Dialog.java b/pdf-over-gui/src/main/java/at/asit/pdfover/gui/controls/Dialog.java
new file mode 100644
index 00000000..e6f62637
--- /dev/null
+++ b/pdf-over-gui/src/main/java/at/asit/pdfover/gui/controls/Dialog.java
@@ -0,0 +1,120 @@
+/*
+ * 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.controls;
+
+// Imports
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.widgets.MessageBox;
+import org.eclipse.swt.widgets.Shell;
+
+import at.asit.pdfover.gui.utils.Messages;
+
+/**
+ * A Message dialog
+ */
+public class Dialog {
+
+ private MessageBox box;
+
+ /**
+ * Message box buttons
+ */
+ public enum BUTTONS {
+ /** Display only ok button */
+ OK,
+ /** Display buttons ok and cancel */
+ OK_CANCEL,
+ /** Display retry and cancel buttons */
+ RETRY_CANCEL,
+ /** Display abort, retry and ignore buttons */
+ ABORT_RETRY_IGNORE
+ };
+
+ /**
+ * Message box icon
+ */
+ public enum ICON {
+ /** Error icon */
+ ERROR,
+ /** Information icon */
+ INFORMATION,
+ /** Question icon */
+ QUESTION,
+ /** Warning icon */
+ WARNING,
+ /** Working icon */
+ WORKING
+ };
+
+ /**
+ * @param parent The parent shell
+ * @param message The error message
+ * @param button The BUTTONS to be shown
+ * @param icon The ICON to be displayed
+ */
+ public Dialog(Shell parent, String message, BUTTONS button, ICON icon) {
+ this.initialize(parent, message, button, icon);
+ }
+
+ private void initialize(Shell parent, String message, BUTTONS button, ICON icon) {
+ int boxstyle = 0;
+ switch (icon) {
+ case ERROR:
+ boxstyle |= SWT.ICON_ERROR;
+ break;
+ case INFORMATION:
+ boxstyle |= SWT.ICON_INFORMATION;
+ break;
+ case QUESTION:
+ boxstyle |= SWT.ICON_QUESTION;
+ break;
+ case WARNING:
+ boxstyle |= SWT.ICON_WARNING;
+ break;
+ case WORKING:
+ boxstyle |= SWT.ICON_WORKING;
+ break;
+ }
+
+ switch(button) {
+ case OK:
+ boxstyle |= SWT.OK;
+ break;
+ case OK_CANCEL:
+ boxstyle |= SWT.OK | SWT.CANCEL;
+ break;
+ case RETRY_CANCEL:
+ boxstyle |= SWT.RETRY | SWT.CANCEL;
+ break;
+ case ABORT_RETRY_IGNORE:
+ boxstyle |= SWT.RETRY | SWT.ABORT | SWT.IGNORE;
+ break;
+ }
+
+ this.box = new MessageBox(parent, boxstyle);
+ this.box.setMessage(message);
+ this.box.setText(Messages.getString("error.Title")); //$NON-NLS-1$
+ }
+
+ /**
+ * Open error dialog
+ *
+ * @return SWT.OK | SWT.IGNORE | SWT.ABORT | SWT.RETRY | SWT.CANCEL
+ */
+ public int open() {
+ return this.box.open();
+ }
+}