X-Git-Url: http://secure.phpeclipse.com diff --git a/net.sourceforge.phpeclipse/src/net/sourceforge/phpdt/externaltools/variable/ResourceComponent.java b/net.sourceforge.phpeclipse/src/net/sourceforge/phpdt/externaltools/variable/ResourceComponent.java deleted file mode 100644 index 143a6e6..0000000 --- a/net.sourceforge.phpeclipse/src/net/sourceforge/phpdt/externaltools/variable/ResourceComponent.java +++ /dev/null @@ -1,265 +0,0 @@ -package net.sourceforge.phpdt.externaltools.variable; - -/********************************************************************** -Copyright (c) 2002 IBM Corp. and others. All rights reserved. -This file is made available under the terms of the Common Public License v1.0 -which accompanies this distribution, and is available at -http://www.eclipse.org/legal/cpl-v10.html -  -Contributors: -**********************************************************************/ - -import net.sourceforge.phpdt.externaltools.group.IGroupDialogPage; -import net.sourceforge.phpdt.externaltools.internal.model.ExternalToolsModelMessages; -import net.sourceforge.phpdt.externaltools.model.ToolUtil; - -import org.eclipse.core.resources.IResource; -import org.eclipse.core.resources.ResourcesPlugin; -import org.eclipse.jface.dialogs.IMessageProvider; -import org.eclipse.jface.viewers.ISelectionChangedListener; -import org.eclipse.jface.viewers.IStructuredSelection; -import org.eclipse.jface.viewers.SelectionChangedEvent; -import org.eclipse.jface.viewers.StructuredSelection; -import org.eclipse.jface.viewers.TreeViewer; -import org.eclipse.swt.SWT; -import org.eclipse.swt.events.SelectionAdapter; -import org.eclipse.swt.events.SelectionEvent; -import org.eclipse.swt.layout.GridData; -import org.eclipse.swt.layout.GridLayout; -import org.eclipse.swt.widgets.Button; -import org.eclipse.swt.widgets.Composite; -import org.eclipse.swt.widgets.Control; -import org.eclipse.swt.widgets.Group; -import org.eclipse.swt.widgets.Tree; -import org.eclipse.ui.model.WorkbenchContentProvider; -import org.eclipse.ui.model.WorkbenchLabelProvider; - -/** - * Visual component to edit the resource type variable - * value. - *

- * This class is not intended to be extended by clients. - *

- */ -public class ResourceComponent implements IVariableComponent { - private IGroupDialogPage page; - private boolean isValid = true; - - protected Group mainGroup; - protected Button selectedResourceButton; - protected Button specificResourceButton; - protected TreeViewer resourceList; - private IResource selectedResource; - - /** - * Creates the component - */ - public ResourceComponent() { - super(); - } - - /* (non-Javadoc) - * Method declared on IVariableComponent. - */ - public void createContents(Composite parent, String varTag, IGroupDialogPage page) { - this.page = page; - - // main composite - mainGroup = new Group(parent, SWT.NONE); - GridLayout layout = new GridLayout(); - layout.marginWidth = 0; - layout.marginHeight = 0; - layout.numColumns = 1; - GridData gridData = new GridData(GridData.FILL_BOTH); - mainGroup.setLayout(layout); - mainGroup.setLayoutData(gridData); - mainGroup.setFont(parent.getFont()); - mainGroup.setText(ToolUtil.buildVariableTag(varTag, null)); - - createSelectedResourceOption(); - createSpecificResourceOption(); - createResourceList(); - - updateResourceListEnablement(); - } - - /** - * Creates the list of resources. - */ - protected void createResourceList() { - Tree tree = new Tree(mainGroup, SWT.SINGLE | SWT.BORDER); - GridData data = new GridData(GridData.FILL_BOTH); - data.heightHint = tree.getItemHeight() * getInitialVisibleItemCount(); - tree.setLayoutData(data); - tree.setFont(mainGroup.getFont()); - - resourceList = new TreeViewer(tree); - resourceList.addSelectionChangedListener(new ISelectionChangedListener() { - public void selectionChanged(SelectionChangedEvent event) { - validateResourceListSelection(); - selectedResource= (IResource) ((IStructuredSelection)event.getSelection()).getFirstElement(); - } - }); - resourceList.setContentProvider(new WorkbenchContentProvider()); - resourceList.setLabelProvider(new WorkbenchLabelProvider()); - resourceList.setInput(ResourcesPlugin.getWorkspace().getRoot()); - } - - /** - * Creates the option button for using the selected - * resource. - */ - protected void createSelectedResourceOption() { - selectedResourceButton = new Button(mainGroup, SWT.RADIO); - selectedResourceButton.setText(ExternalToolsModelMessages.getString("ResourceComponent.selectedResLabel")); //$NON-NLS-1$ - GridData data = new GridData(GridData.HORIZONTAL_ALIGN_FILL); - selectedResourceButton.setLayoutData(data); - selectedResourceButton.setFont(mainGroup.getFont()); - selectedResourceButton.setSelection(true); - } - - /** - * Creates the option button for using a specific - * resource. - */ - protected void createSpecificResourceOption() { - specificResourceButton = new Button(mainGroup, SWT.RADIO); - specificResourceButton.setText(ExternalToolsModelMessages.getString("ResourceComponent.specificResLabel")); //$NON-NLS-1$ - GridData data = new GridData(GridData.HORIZONTAL_ALIGN_FILL); - specificResourceButton.setLayoutData(data); - specificResourceButton.setFont(mainGroup.getFont()); - specificResourceButton.setSelection(false); - - specificResourceButton.addSelectionListener(new SelectionAdapter() { - public void widgetSelected(SelectionEvent e) { - updateResourceListEnablement(); - } - }); - } - - /* (non-Javadoc) - * Method declared on IVariableComponent. - */ - public Control getControl() { - return mainGroup; - } - - /** - * Returns the dialog page this component is part of - */ - protected final IGroupDialogPage getPage() { - return page; - } - - /* (non-Javadoc) - * Method declared on IVariableComponent. - */ - public String getVariableValue() { - if (selectedResourceButton != null && selectedResourceButton.getSelection()) - return null; - - if (resourceList != null) { - if (selectedResource != null) - return selectedResource.getFullPath().toString(); - } - - return null; - } - - /** - * Returns the number of items to be visible in the - * resource list. This will determine the initial height. - */ - protected int getInitialVisibleItemCount() { - return 10; - } - - /* (non-Javadoc) - * Method declared on IVariableComponent. - */ - public boolean isValid() { - return isValid; - } - - /** - * Sets whether the component's values are all valid. - * Updates the components's page valid state. No action - * taken if new valid state same as current one. - * - * @param isValid true if all values valid, - * false otherwise - */ - protected final void setIsValid(boolean isValid) { - if (this.isValid != isValid) { - this.isValid = isValid; - this.page.updateValidState(); - } - } - - /** - * Updates the enablement of the resource list if needed - */ - protected void updateResourceListEnablement() { - if (specificResourceButton != null && resourceList != null) - resourceList.getTree().setEnabled(specificResourceButton.getSelection()); - } - - /* (non-Javadoc) - * Method declared on IVariableComponent. - */ - public void setVariableValue(String varValue) { - if (varValue == null || varValue.length() == 0) { - if (selectedResourceButton != null) - selectedResourceButton.setSelection(true); - if (specificResourceButton != null) - specificResourceButton.setSelection(false); - if (resourceList != null) - resourceList.getTree().setEnabled(false); - } else { - if (selectedResourceButton != null) - selectedResourceButton.setSelection(false); - if (specificResourceButton != null) - specificResourceButton.setSelection(true); - if (resourceList != null) { - resourceList.getTree().setEnabled(true); - IResource member = ResourcesPlugin.getWorkspace().getRoot().findMember(varValue); - if (member != null) - resourceList.setSelection(new StructuredSelection(member), true); - else - resourceList.setSelection(StructuredSelection.EMPTY); - } - } - } - - /* (non-Javadoc) - * Method declared on IVariableComponent. - */ - public void validate() { - if (specificResourceButton != null && specificResourceButton.getSelection()) { - validateResourceListSelection(); - } - - getPage().setMessage(null, IMessageProvider.NONE); - setIsValid(true); - } - - /** - * Returns whether that the resource list selection is valid. - * If the list was not created, returns true. - * - * @return true to continue validating other - * fields, false to stop. - */ - protected boolean validateResourceListSelection() { - if (resourceList == null) - return true; - - if (resourceList.getSelection().isEmpty()) { - getPage().setMessage(ExternalToolsModelMessages.getString("ResourceComponent.selectionRequired"), IMessageProvider.WARNING); //$NON-NLS-1$ - setIsValid(false); - return false; - } - - return true; - } -}