diff options
Diffstat (limited to 'bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/outline/ADTContentOutlineProvider.java')
-rw-r--r-- | bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/outline/ADTContentOutlineProvider.java | 149 |
1 files changed, 0 insertions, 149 deletions
diff --git a/bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/outline/ADTContentOutlineProvider.java b/bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/outline/ADTContentOutlineProvider.java deleted file mode 100644 index ac6e76f24e..0000000000 --- a/bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/outline/ADTContentOutlineProvider.java +++ /dev/null @@ -1,149 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2001, 2009 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.wst.xsd.ui.internal.adt.outline; - -import org.eclipse.jface.viewers.ITreeContentProvider; -import org.eclipse.jface.viewers.Viewer; -import org.eclipse.wst.xsd.ui.internal.adt.facade.IADTObject; -import org.eclipse.wst.xsd.ui.internal.adt.facade.IADTObjectListener; - -public class ADTContentOutlineProvider implements ITreeContentProvider, IADTObjectListener -{ - protected Viewer viewer = null; - protected Object oldInput, newInput; - protected ADTContentOutlineRefreshJob refreshJob; - - public ADTContentOutlineProvider() - { - super(); - } - - /* (non-Javadoc) - * @see org.eclipse.jface.viewers.ITreeContentProvider#getChildren(java.lang.Object) - */ - public Object[] getChildren(Object parentElement) - { - if (parentElement instanceof ITreeElement) - { - Object[] children = ((ITreeElement) parentElement).getChildren(); - if (children != null) - { - int length = children.length; - for (int i = 0; i < length; i++) - { - Object child = children[i]; - if (child instanceof IADTObject) - { - ((IADTObject) child).registerListener(this); - } - } - } - return children; - } - return null; - } - - /* (non-Javadoc) - * @see org.eclipse.jface.viewers.ITreeContentProvider#getParent(java.lang.Object) - */ - public Object getParent(Object element) - { - return null; - } - - /* (non-Javadoc) - * @see org.eclipse.jface.viewers.ITreeContentProvider#hasChildren(java.lang.Object) - */ - public boolean hasChildren(Object element) - { - if (element instanceof ITreeElement) - { - return ((ITreeElement) element).hasChildren(); - } - return false; - } - - /* (non-Javadoc) - * @see org.eclipse.jface.viewers.IStructuredContentProvider#getElements(java.lang.Object) - */ - public Object[] getElements(Object inputElement) - { - return getChildren(inputElement); - } - - /* (non-Javadoc) - * @see org.eclipse.jface.viewers.IContentProvider#dispose() - */ - public void dispose() - { - Object input = viewer.getInput(); - if (input instanceof IADTObject) - { - removeListener((IADTObject) input); - } - if (refreshJob != null) - { - refreshJob.cancel(); - refreshJob = null; - } - } - - /* (non-Javadoc) - * @see org.eclipse.jface.viewers.IContentProvider#inputChanged(org.eclipse.jface.viewers.Viewer, java.lang.Object, java.lang.Object) - */ - public void inputChanged(Viewer viewer, Object oldInput, Object newInput) - { - this.viewer = viewer; - this.oldInput = oldInput; - this.newInput = newInput; - if (refreshJob != null) - { - refreshJob.cancel(); - } - refreshJob = new ADTContentOutlineRefreshJob(viewer); - } - - /* (non-Javadoc) - * @see org.eclipse.wst.xsd.ui.internal.adt.facade.IADTObjectListener#propertyChanged(java.lang.Object, java.lang.String) - */ - public void propertyChanged(Object object, String property) - { - refreshJob.refresh((IADTObject)object); - } - - /** - * @param model - */ - private void removeListener(IADTObject model) - { - model.unregisterListener(this); - Object[] children = null; - - if (model instanceof ITreeElement) - { - children = ((ITreeElement) model).getChildren(); - } - - if (children != null) - { - int length = children.length; - for (int i = 0; i < length; i++) - { - Object child = children[i]; - if (child instanceof IADTObject && model != child) - { - removeListener((IADTObject) child); - } - } - } - } - -} |