diff options
Diffstat (limited to 'bundles/org.eclipse.wst.xml.ui/src-catalog/org/eclipse/wst/xml/ui/internal/catalog/AdvancedOptionsDialog.java')
-rw-r--r-- | bundles/org.eclipse.wst.xml.ui/src-catalog/org/eclipse/wst/xml/ui/internal/catalog/AdvancedOptionsDialog.java | 229 |
1 files changed, 0 insertions, 229 deletions
diff --git a/bundles/org.eclipse.wst.xml.ui/src-catalog/org/eclipse/wst/xml/ui/internal/catalog/AdvancedOptionsDialog.java b/bundles/org.eclipse.wst.xml.ui/src-catalog/org/eclipse/wst/xml/ui/internal/catalog/AdvancedOptionsDialog.java deleted file mode 100644 index ac1dec6230..0000000000 --- a/bundles/org.eclipse.wst.xml.ui/src-catalog/org/eclipse/wst/xml/ui/internal/catalog/AdvancedOptionsDialog.java +++ /dev/null @@ -1,229 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2002, 2006 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.catalog; - -import java.io.ByteArrayInputStream; - -import org.eclipse.core.resources.IFile; -import org.eclipse.core.resources.IProject; -import org.eclipse.core.resources.ResourcesPlugin; -import org.eclipse.core.runtime.IPath; -import org.eclipse.core.runtime.IStatus; -import org.eclipse.core.runtime.MultiStatus; -import org.eclipse.core.runtime.Status; -import org.eclipse.jface.dialogs.Dialog; -import org.eclipse.jface.dialogs.ErrorDialog; -import org.eclipse.jface.dialogs.IDialogConstants; -import org.eclipse.jface.window.Window; -import org.eclipse.osgi.util.NLS; -import org.eclipse.swt.SWT; -import org.eclipse.swt.events.SelectionAdapter; -import org.eclipse.swt.events.SelectionEvent; -import org.eclipse.swt.events.SelectionListener; -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.Display; -import org.eclipse.swt.widgets.Label; -import org.eclipse.swt.widgets.Shell; -import org.eclipse.ui.dialogs.SaveAsDialog; -import org.eclipse.wst.common.ui.internal.dialogs.SelectSingleFileDialog; -import org.eclipse.wst.xml.core.internal.catalog.CatalogSet; -import org.eclipse.wst.xml.core.internal.catalog.provisional.ICatalog; -import org.eclipse.wst.xml.ui.internal.XMLUIPlugin; - -public class AdvancedOptionsDialog extends Dialog { - protected ICatalog workingUserCatalog; - - public AdvancedOptionsDialog(Shell parentShell, ICatalog workingUserCatalog) { - super(parentShell); - setShellStyle(getShellStyle() | SWT.RESIZE); - this.workingUserCatalog = workingUserCatalog; - } - - - protected void createButtonsForButtonBar(Composite parent) { - createButton(parent, IDialogConstants.OK_ID, IDialogConstants.OK_LABEL, true); - } - - - protected Control createDialogArea(Composite parent) { - Composite dialogArea = (Composite) super.createDialogArea(parent); - // WorkbenchHelp.setHelp(dialogArea, new - // ControlContextComputer(dialogArea, - // XMLBuilderContextIds.XMLP_PROJECT_DIALOG)); - - Composite composite = new Composite(dialogArea, SWT.NONE); - composite.setLayout(new GridLayout()); - composite.setLayoutData(new GridData(GridData.FILL_BOTH)); - - Label label = new Label(composite, SWT.NONE); - label.setText(XMLCatalogMessages.UI_LABEL_DIALOG_DESCRIPTION); - - Composite buttonComposite = new Composite(composite, SWT.NONE); - GridLayout gridLayout = new GridLayout(); - gridLayout.numColumns = 3; - buttonComposite.setLayout(gridLayout); - buttonComposite.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); - - Composite placeHolder = new Composite(buttonComposite, SWT.NONE); - placeHolder.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); - - Composite buttonGroup = new Composite(buttonComposite, SWT.NONE); - gridLayout = new GridLayout(); - gridLayout.numColumns = 2; - gridLayout.makeColumnsEqualWidth = true; - buttonGroup.setLayout(gridLayout); - buttonGroup.setLayoutData(createGridData()); - - Button importButton = new Button(buttonGroup, SWT.PUSH | SWT.CENTER); - importButton.setText(" " + XMLCatalogMessages.UI_BUTTON_IMPORT + " "); //$NON-NLS-1$ //$NON-NLS-2$ - - Button exportButton = new Button(buttonGroup, SWT.PUSH | SWT.CENTER); - exportButton.setText(" " + XMLCatalogMessages.UI_BUTTON_EXPORT + " "); //$NON-NLS-1$ //$NON-NLS-2$ - - placeHolder = new Composite(buttonComposite, SWT.NONE); - placeHolder.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); - - // add importButton listener - SelectionListener importButtonSelectionListener = new SelectionAdapter() { - public void widgetSelected(SelectionEvent e) { - invokeImportDialog(); - } - }; - importButton.addSelectionListener(importButtonSelectionListener); - - // add exportButton listener - SelectionListener exportButtonSelectionListener = new SelectionAdapter() { - public void widgetSelected(SelectionEvent e) { - invokeExportDialog(); - } - }; - exportButton.addSelectionListener(exportButtonSelectionListener); - - return dialogArea; - } - - protected GridData createGridData() { - GridData gd = new GridData(GridData.CENTER); - gd.horizontalAlignment = GridData.HORIZONTAL_ALIGN_CENTER; - gd.verticalAlignment = GridData.VERTICAL_ALIGN_CENTER; - return gd; - } - - - protected void invokeImportDialog() { - SelectSingleFileDialog dialog = new SelectSingleFileDialog(getShell(), null, true); - String[] extensions = {".xmlcatalog", ".xml"}; //$NON-NLS-1$ //$NON-NLS-2$ - dialog.addFilterExtensions(extensions); - dialog.create(); - dialog.getShell().setText(XMLCatalogMessages.UI_LABEL_IMPORT_DIALOG_TITLE); - dialog.setTitle(XMLCatalogMessages.UI_LABEL_IMPORT_DIALOG_HEADING); - dialog.setMessage(XMLCatalogMessages.UI_LABEL_IMPORT_DIALOG_MESSAGE); - dialog.setBlockOnOpen(true); - int rc = dialog.open(); - if (rc == Window.OK) { - IFile file = dialog.getFile(); - if (file != null) { - String fileName = file.getLocation().toFile().toURI().toString(); - try { - CatalogSet tempResourceSet = new CatalogSet(); - ICatalog newCatalog = tempResourceSet.lookupOrCreateCatalog("temp", fileName); //$NON-NLS-1$ - workingUserCatalog.addEntriesFromCatalog(newCatalog); - } - catch (Exception e) { - // TODO... give error message - } - } - close(); - } - } - - - protected void invokeExportDialog() { - IPath originalFilePath = null; - IProject[] projects = ResourcesPlugin.getWorkspace().getRoot().getProjects(); - if (projects.length > 0) { - originalFilePath = projects[0].getFullPath().append(".xmlcatalog"); //$NON-NLS-1$ - } - - SaveAsDialog dialog = new SaveAsDialog(getShell()); - if (originalFilePath != null) { - IFile originalFile = ResourcesPlugin.getWorkspace().getRoot().getFile(originalFilePath); - dialog.setOriginalFile(originalFile); - } - dialog.create(); - - dialog.getShell().setText(XMLCatalogMessages.UI_LABEL_EXPORT_DIALOG_TITLE); - dialog.setTitle(XMLCatalogMessages.UI_LABEL_EXPORT_DIALOG_HEADING); - dialog.setMessage(XMLCatalogMessages.UI_LABEL_EXPORT_DIALOG_MESSAGE); - - dialog.setBlockOnOpen(true); - int rc = dialog.open(); - if (rc == Window.OK) { - IPath path = dialog.getResult(); - if (path != null) { - IFile file = ResourcesPlugin.getWorkspace().getRoot().getFile(path); - String fileName = file.getLocation().toFile().toURI().toString(); - - // here we save the catalog entries to the selected file - try { - createFileIfRequired(file); - workingUserCatalog.setLocation(fileName); - workingUserCatalog.save(); - } - catch (Exception ex) { - try { - String title = XMLCatalogMessages.UI_LABEL_CATALOG_SAVE_ERROR; - String briefMessage = XMLCatalogMessages.UI_LABEL_CATALOG_COULD_NOT_BE_SAVED; - String reason = file.isReadOnly() ? NLS.bind(XMLCatalogMessages.UI_LABEL_FILE_IS_READ_ONLY, fileName) : NLS.bind(XMLCatalogMessages.ERROR_SAVING_FILE, fileName); - String details = NLS.bind(XMLCatalogMessages.ERROR_SAVING_FILE, fileName); - - ErrorDialog.openError(Display.getCurrent().getActiveShell(), title, briefMessage, createStatus(reason, details)); - } - catch (Exception ex2) { - } - } - close(); - } - } - } - - // TODO... This was copied from WindowUtility. Is there an easier way to - // create a status object? - // If not, we should open an eclipse bug or add a similar utility to - // baseExtensionsUI. - // - private static IStatus createStatus(String reason, String msg) { - String pluginId = XMLUIPlugin.getDefault().getBundle().getSymbolicName(); - MultiStatus multiStatus = new MultiStatus(pluginId, 0, reason, null); - Status status = new Status(IStatus.ERROR, pluginId, 0, msg, null); - multiStatus.add(status); - return multiStatus; - } - - - protected void createFileIfRequired(IFile file) { - try { - if ((file != null) && !file.exists()) { - ByteArrayInputStream inputStream = new ByteArrayInputStream(new byte[0]); - file.create(inputStream, true, null); - // createEmptyXMLCatalog(file); - } - } - catch (Exception e) { - } - } -} |