diff options
Diffstat (limited to 'bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/dialogs/EditNamespaceInfoDialog.java')
-rw-r--r-- | bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/dialogs/EditNamespaceInfoDialog.java | 274 |
1 files changed, 0 insertions, 274 deletions
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/dialogs/EditNamespaceInfoDialog.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/dialogs/EditNamespaceInfoDialog.java deleted file mode 100644 index 844ac60e03..0000000000 --- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/dialogs/EditNamespaceInfoDialog.java +++ /dev/null @@ -1,274 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2001, 2008 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 - * Jens Lukowski/Innoopract - initial renaming/restructuring - * - *******************************************************************************/ -package org.eclipse.wst.xml.ui.internal.dialogs; - -import java.util.List; - -import org.eclipse.core.resources.IFile; -import org.eclipse.core.resources.IResource; -import org.eclipse.core.resources.ResourcesPlugin; -import org.eclipse.core.runtime.IPath; -import org.eclipse.jface.dialogs.Dialog; -import org.eclipse.jface.dialogs.IDialogConstants; -import org.eclipse.jface.window.Window; -import org.eclipse.swt.SWT; -import org.eclipse.swt.events.ModifyEvent; -import org.eclipse.swt.events.ModifyListener; -import org.eclipse.swt.events.SelectionAdapter; -import org.eclipse.swt.events.SelectionEvent; -import org.eclipse.swt.events.SelectionListener; -import org.eclipse.swt.graphics.Color; -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.Label; -import org.eclipse.swt.widgets.Shell; -import org.eclipse.swt.widgets.Text; -import org.eclipse.ui.PlatformUI; -import org.eclipse.wst.common.uriresolver.internal.provisional.URIResolver; -import org.eclipse.wst.common.uriresolver.internal.provisional.URIResolverPlugin; -import org.eclipse.wst.common.uriresolver.internal.util.URIHelper; -import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument; -import org.eclipse.wst.xml.core.internal.contentmodel.ContentModelManager; -import org.eclipse.wst.xml.core.internal.contentmodel.util.NamespaceInfo; -import org.eclipse.wst.xml.ui.internal.XMLUIMessages; -import org.eclipse.wst.xml.ui.internal.util.XMLCommonUIContextIds; - -public class EditNamespaceInfoDialog extends Dialog { - - public static EditNamespaceInfoDialog invokeDialog(Shell shell, String title, NamespaceInfo info, IPath resourceLocation) { - EditNamespaceInfoDialog dialog = new EditNamespaceInfoDialog(shell, info); - dialog.create(); - dialog.getShell().setText(title); - dialog.setBlockOnOpen(true); - dialog.setResourceLocation(resourceLocation); - dialog.open(); - return dialog; - } - - protected Button browseButton; - protected String errorMessage; - - protected Label errorMessageLabel; - protected NamespaceInfo fInfo; - protected Text locationHintField; - - protected Button okButton; - protected Text prefixField; - protected IPath resourceLocation; - protected Text uriField; - - public EditNamespaceInfoDialog(Shell parentShell, NamespaceInfo info) { - super(parentShell); - setShellStyle(getShellStyle() | SWT.RESIZE); - this.fInfo = info; - } - - protected void buttonPressed(int buttonId) { - if (buttonId == IDialogConstants.OK_ID) { - fInfo.uri = uriField.getText(); - fInfo.prefix = prefixField.getText(); - fInfo.locationHint = locationHintField.getText(); - } - super.buttonPressed(buttonId); - } - - protected void computeErrorMessage() { - errorMessage = null; - } - - protected void createButtonsForButtonBar(Composite parent) { - okButton = createButton(parent, IDialogConstants.OK_ID, IDialogConstants.OK_LABEL, true); - okButton.setEnabled(false); - createButton(parent, IDialogConstants.CANCEL_ID, IDialogConstants.CANCEL_LABEL, false); - updateWidgets(); - } - - protected Control createDialogArea(Composite parent) { - Composite dialogsubArea = (Composite) super.createDialogArea(parent); - PlatformUI.getWorkbench().getHelpSystem().setHelp(dialogsubArea, XMLCommonUIContextIds.XCUI_NAMESPACE_DIALOG); - - Composite composite = new Composite(dialogsubArea, SWT.NONE); - GridLayout layout = new GridLayout(); - layout.numColumns = 3; - layout.marginWidth = 0; - composite.setLayout(layout); - - GridData gd = new GridData(GridData.FILL_HORIZONTAL); - gd.widthHint = 350; - composite.setLayoutData(gd); - - ModifyListener modifyListener = new ModifyListener() { - public void modifyText(ModifyEvent e) { - updateWidgets(); - } - }; - - - // row 1 - // - Label uriLabel = new Label(composite, SWT.NONE); - uriLabel.setText(XMLUIMessages._UI_LABEL_NAMESPACE_NAME_COLON); - - uriField = new Text(composite, SWT.SINGLE | SWT.BORDER); - gd = new GridData(GridData.FILL_HORIZONTAL); - gd.grabExcessHorizontalSpace = true; - uriField.setLayoutData(gd); - uriField.setText(getDisplayValue(fInfo.uri)); - uriField.addModifyListener(modifyListener); - uriField.setEnabled(fInfo.getProperty("uri-readOnly") == null); //$NON-NLS-1$ - - // never read - Label placeHolder1 = new Label(composite, SWT.NONE); - placeHolder1.setText(""); //$NON-NLS-1$ - - // row 2 - // - Label prefixLabel = new Label(composite, SWT.NONE); - prefixLabel.setText(XMLUIMessages._UI_LABEL_PREFIX_COLON); - - prefixField = new Text(composite, SWT.SINGLE | SWT.BORDER); - gd = new GridData(GridData.FILL_HORIZONTAL); - gd.grabExcessHorizontalSpace = true; - prefixField.setLayoutData(gd); - prefixField.setText(getDisplayValue(fInfo.prefix)); - prefixField.addModifyListener(modifyListener); - prefixField.setEnabled(fInfo.getProperty("prefix-readOnly") == null); //$NON-NLS-1$ - - // never read - Label placeHolder2 = new Label(composite, SWT.NONE); - placeHolder2.setText(""); //$NON-NLS-1$ - - // row 3 - // - Label locationHintLabel = new Label(composite, SWT.NONE); - locationHintLabel.setText(XMLUIMessages._UI_LABEL_LOCATION_HINT_COLON); - - locationHintField = new Text(composite, SWT.SINGLE | SWT.BORDER); - gd = new GridData(GridData.FILL_HORIZONTAL); - gd.grabExcessHorizontalSpace = true; - locationHintField.setLayoutData(gd); - locationHintField.setText(getDisplayValue(fInfo.locationHint)); - locationHintField.addModifyListener(modifyListener); - locationHintField.setEnabled(fInfo.getProperty("locationHint-readOnly") == null); //$NON-NLS-1$ - - SelectionListener selectionListener = new SelectionAdapter() { - public void widgetSelected(SelectionEvent e) { - performBrowse(); - } - }; - - browseButton = new Button(composite, SWT.NONE); - browseButton.setText(XMLUIMessages._UI_LABEL_BROWSE); - browseButton.addSelectionListener(selectionListener); - browseButton.setEnabled(locationHintField.getEnabled()); - - // error message - errorMessageLabel = new Label(dialogsubArea, SWT.NONE); - errorMessageLabel.setText(XMLUIMessages.error_message_goes_here); - errorMessageLabel.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); - Color color = new Color(errorMessageLabel.getDisplay(), 200, 0, 0); - errorMessageLabel.setForeground(color); - - return dialogsubArea; - } - - protected String getDisplayValue(String string) { - return string != null ? string : ""; //$NON-NLS-1$ - } - - protected void performBrowse() { - String[] extensions = {".xsd"}; //$NON-NLS-1$ - SelectFileOrXMLCatalogIdDialog dialog = new SelectFileOrXMLCatalogIdDialog(getShell(), extensions); - dialog.create(); - dialog.getShell().setText(XMLUIMessages._UI_LABEL_SELECT_FILE); - dialog.setBlockOnOpen(true); - dialog.open(); - - if (dialog.getReturnCode() == Window.OK) { - String grammarURI = null; - IFile file = dialog.getFile(); - String id = dialog.getId(); - if (file != null) { - String uri = null; - if (resourceLocation != null) { - IResource resource = ResourcesPlugin.getWorkspace().getRoot().findMember(resourceLocation); - if (resource != null) { - IPath location = resource.getLocation(); - if (location != null) { - uri = URIHelper.getRelativeURI(file.getLocation(), location); - } - } - else { - uri = URIHelper.getRelativeURI(file.getLocation(), resourceLocation); - } - grammarURI = file.getLocation().toOSString(); - } - else { - uri = file.getLocation().toOSString(); - grammarURI = uri; - } - locationHintField.setText(uri); - } - else if (id != null) { - locationHintField.setText(id); - URIResolver resolver = URIResolverPlugin.createResolver(); - grammarURI = resolver.resolve(null, id, id); - } - - - CMDocument document = ContentModelManager.getInstance().createCMDocument(URIHelper.getURIForFilePath(grammarURI), "xsd"); //$NON-NLS-1$ - if(document != null) { - List namespaceInfoList = (List) document.getProperty("http://org.eclipse.wst/cm/properties/namespaceInfo"); //$NON-NLS-1$ - if(namespaceInfoList != null) { - NamespaceInfo info = (NamespaceInfo) namespaceInfoList.get(0); - if(info != null) { - if ((uriField.getText().trim().length() == 0) && (info.uri != null)) { - uriField.setText(info.uri); - } - if ((prefixField.getText().trim().length() == 0) && (info.prefix != null)) { - prefixField.setText(info.prefix); - } - } - } - } - } - } - - public void setResourceLocation(IPath path) { - resourceLocation = path; - } - - protected void updateErrorMessageLabel() { - errorMessageLabel.setText(errorMessage != null ? errorMessage : ""); //$NON-NLS-1$ - } - - protected void updateOKButtonState() { - if (okButton != null) { - if ((uriField.getText().trim().length() == 0) && (prefixField.getText().trim().length() == 0) && (locationHintField.getText().trim().length() == 0)) { - okButton.setEnabled(false); - } - else { - okButton.setEnabled(errorMessage == null); - } - } - } - - protected void updateWidgets() { - computeErrorMessage(); - updateErrorMessageLabel(); - updateOKButtonState(); - } -} |