diff options
Diffstat (limited to 'plugins/org.eclipse.jem.ui/beaninfoui/org/eclipse/jem/internal/beaninfo/ui/TypedElementSelectionValidator.java')
-rw-r--r-- | plugins/org.eclipse.jem.ui/beaninfoui/org/eclipse/jem/internal/beaninfo/ui/TypedElementSelectionValidator.java | 99 |
1 files changed, 0 insertions, 99 deletions
diff --git a/plugins/org.eclipse.jem.ui/beaninfoui/org/eclipse/jem/internal/beaninfo/ui/TypedElementSelectionValidator.java b/plugins/org.eclipse.jem.ui/beaninfoui/org/eclipse/jem/internal/beaninfo/ui/TypedElementSelectionValidator.java deleted file mode 100644 index 64f317cda..000000000 --- a/plugins/org.eclipse.jem.ui/beaninfoui/org/eclipse/jem/internal/beaninfo/ui/TypedElementSelectionValidator.java +++ /dev/null @@ -1,99 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2005 IBM Corporation and others. - * 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: - * IBM Corporation - initial API and implementation - *******************************************************************************/ -/* - - - */ -package org.eclipse.jem.internal.beaninfo.ui; - -import java.util.Collection; - -import org.eclipse.core.runtime.IStatus; -import org.eclipse.core.runtime.Assert; -import org.eclipse.ui.dialogs.ISelectionStatusValidator; - - -public class TypedElementSelectionValidator implements ISelectionStatusValidator { - - private IStatus fgErrorStatus= StatusHelper.ERROR_STATUS; - private IStatus fgOKStatus= StatusHelper.OK_STATUS; - - private Class[] fAcceptedTypes; - private boolean fAllowMultipleSelection; - private Collection fRejectedElements; - - /** - * @param acceptedTypes The types accepted by the validator - * @param allowMultipleSelection If set to <code>true</code>, the validator - * allows multiple selection. - */ - public TypedElementSelectionValidator(Class[] acceptedTypes, boolean allowMultipleSelection) { - this(acceptedTypes, allowMultipleSelection, null); - } - - /** - * @param acceptedTypes The types accepted by the validator - * @param allowMultipleSelection If set to <code>true</code>, the validator - * allows multiple selection. - * @param rejectedElements A list of elements that are not accepted - */ - public TypedElementSelectionValidator(Class[] acceptedTypes, boolean allowMultipleSelection, Collection rejectedElements) { - Assert.isNotNull(acceptedTypes); - fAcceptedTypes= acceptedTypes; - fAllowMultipleSelection= allowMultipleSelection; - fRejectedElements= rejectedElements; - } - - /* - * @see org.eclipse.ui.dialogs.ISelectionValidator#isValid(java.lang.Object) - */ - public IStatus validate(Object[] elements) { - if (isValid(elements)) { - return fgOKStatus; - } - return fgErrorStatus; - } - - private boolean isOfAcceptedType(Object o) { - for (int i= 0; i < fAcceptedTypes.length; i++) { - if (fAcceptedTypes[i].isInstance(o)) { - return true; - } - } - return false; - } - - private boolean isRejectedElement(Object elem) { - return (fRejectedElements != null) && fRejectedElements.contains(elem); - } - - protected boolean isSelectedValid(Object elem) { - return true; - } - - private boolean isValid(Object[] selection) { - if (selection.length == 0) { - return false; - } - - if (!fAllowMultipleSelection && selection.length != 1) { - return false; - } - - for (int i= 0; i < selection.length; i++) { - Object o= selection[i]; - if (!isOfAcceptedType(o) || isRejectedElement(o) || !isSelectedValid(o)) { - return false; - } - } - return true; - } -} |