Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/widgets/ValidatingDialog.java')
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/widgets/ValidatingDialog.java233
1 files changed, 0 insertions, 233 deletions
diff --git a/common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/widgets/ValidatingDialog.java b/common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/widgets/ValidatingDialog.java
deleted file mode 100644
index b4b6cdf73e..0000000000
--- a/common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/widgets/ValidatingDialog.java
+++ /dev/null
@@ -1,233 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2008 Oracle. All rights reserved.
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0, which accompanies this distribution
- * and is available at http://www.eclipse.org/legal/epl-v10.html.
- *
- * Contributors:
- * Oracle - initial API and implementation
- ******************************************************************************/
-package org.eclipse.jpt.common.ui.internal.widgets;
-
-import java.util.ListIterator;
-import org.eclipse.jface.dialogs.IMessageProvider;
-import org.eclipse.jpt.common.utility.internal.node.Node;
-import org.eclipse.jpt.common.utility.internal.node.Problem;
-import org.eclipse.osgi.util.NLS;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.widgets.Shell;
-
-/**
- * This dialog is similar to it superclass, <code>Dialog</code>, with
- * the added value of an error message label below the main panel. A subclass
- * can set this error message as needed so that it can inform the user something
- * incorrect has been entered.
- * <p>
- * If there is an error message, it will be shown. If there is a warning
- * message, it will only be shown if there is no error message. Warning messages
- * have a different icon than error messages.
- *
- * @version 2.0
- * @since 2.0
- */
-public abstract class ValidatingDialog<T extends Node> extends Dialog<T> {
-
- /**
- * Creates a new <code>ValidatingDialog</code>.
- *
- * @param parent The parent shell
- */
- public ValidatingDialog(Shell parent) {
- super(parent);
- }
-
- /**
- * Creates a new <code>ValidatingDialog</code>.
- *
- * @param parent The parent shell
- * @param title The dialog's title
- */
- public ValidatingDialog(Shell parent, String title) {
- super(parent, title);
- }
-
- /*
- * (non-Javadoc)
- */
- @Override
- final Node.Validator buildValidator() {
- return new Node.Validator() {
- public void pause() {
- }
-
- public void resume() {
- }
-
- public void validate() {
- ValidatingDialog.this.validate();
- }
- };
- }
-
- /**
- * Clears the messages from the description pane
- */
- protected final void clearMessage(){
- setMessage(getDescription());
- }
-
- /**
- * Clears the error message from the description pane.
- */
- protected final void clearErrorMessage() {
- setErrorMessage(null);
- }
-
- /**
- * Returns the description shown in the description pane.
- *
- * @return The description under the description's title
- */
- protected String getDescription() {
- return null;
- }
-
- /**
- * Returns the image shown in the description pane.
- *
- * @return The image of the description pane or <code>null</code> if none is
- * required
- */
- protected Image getDescriptionImage() {
- return null;
- }
-
- /**
- * Returns the title of the description pane.
- *
- * @return The title shown in the description pane
- */
- protected String getDescriptionTitle() {
- return null;
- }
-
- /*
- * (non-Javadoc)
- */
- @Override
- protected Point getInitialSize() {
- Point result = getShell().computeSize(SWT.DEFAULT, SWT.DEFAULT);
- Point paneSize = getPane().getControl().computeSize(SWT.DEFAULT, SWT.DEFAULT);
- int width = convertHorizontalDLUsToPixels(400);
- result.x = Math.max(width, paneSize.x);
- return result;
- }
-
- /*
- * (non-Javadoc)
- */
- @Override
- protected final boolean hasTitleArea() {
- return true;
- }
-
- /*
- * (non-Javadoc)
- */
- @Override
- protected void initializeUI() {
-
- super.initializeUI();
-
- // Update the description title
- String descriptionTitle = getDescriptionTitle();
-
- if (descriptionTitle != null) {
- setTitle(descriptionTitle);
- }
-
- // Update the description title
- String description = getDescription();
-
- if (description != null) {
- setMessage(description);
- }
-
- // Update the description image
- Image image = getDescriptionImage();
-
- if (image != null) {
- setTitleImage(image);
- }
- }
-
- /**
- * Updates the description pane by showing the given error message and format
- * the text with the given list of arguments if any exists.
- *
- * @param errorMessage The error message to show in the description pane
- * @param arguments The list of arguments used to format the error message
- */
- protected final void setErrorMessage(String errorMessage, Object... arguments) {
- setErrorMessage(NLS.bind(errorMessage, arguments));
- }
-
- /**
- * Updates the description pane by showing the given warning message and format
- * the text with the given list of arguments if any exists.
- *
- * @param warningMessage The warning message to show in the description pane
- * @param arguments The list of arguments used to format the error message
- */
-
- protected final void setWarningMessage(String warningMessage, Object... arguments) {
- setMessage(NLS.bind(warningMessage, arguments), IMessageProvider.WARNING);
- }
-
- /**
- * Updates the error message, either shows the first error problem or hides
- * the error pane. If the progress bar is shown, then the error message will
- * not be shown.
- */
- private void updateMessage() {
- if (getSubject().branchProblemsSize() == 0) {
- clearMessage();
- } else {
- for (ListIterator<Problem> problems = getSubject().branchProblems(); problems.hasNext();){
- Problem problem = problems.next();
- if (problem.messageType() == IMessageProvider.ERROR){
- this.setErrorMessage(problem.messageKey(), problem.messageArguments());
- }
- else if (problem.messageType() == IMessageProvider.WARNING){
- this.setWarningMessage(problem.messageKey(), problem.messageArguments());
- }
- }
- }
- if (!this.containsErrorMessage()){
- clearErrorMessage();
- }
- }
-
- public final boolean containsErrorMessage(){
- boolean error = false;
- for (ListIterator<Problem> problems = getSubject().branchProblems(); problems.hasNext();){
- Problem problem = problems.next();
- if (problem.messageType() ==IMessageProvider.ERROR){
- error = true;
- }
- }
- return error;
- }
- /**
- * Validates the state object and based on its status, update the description
- * pane to show the first error if any exists and update the enablement of
- * the OK button.
- */
- private void validate() {
- getSubject().validateBranch();
- updateMessage();
- getButton(OK).setEnabled(!containsErrorMessage());
- }
-} \ No newline at end of file

Back to the top