diff options
author | nitind | 2005-11-16 00:05:02 +0000 |
---|---|---|
committer | nitind | 2005-11-16 00:05:02 +0000 |
commit | 00a2fbe9698e3e6fda4d3e85030eb9fc429288ff (patch) | |
tree | 93126509989e65a8ef53d65dc2c39ce108b304bc | |
parent | b76a87265d1ff5943f3253276e188ed54e09db83 (diff) | |
download | webtools.sourceediting-00a2fbe9698e3e6fda4d3e85030eb9fc429288ff.tar.gz webtools.sourceediting-00a2fbe9698e3e6fda4d3e85030eb9fc429288ff.tar.xz webtools.sourceediting-00a2fbe9698e3e6fda4d3e85030eb9fc429288ff.zip |
[116525] missing some infopop hooks for xml.ui
17 files changed, 852 insertions, 929 deletions
diff --git a/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/XMLTableTreeHelpContextIds.java b/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/XMLTableTreeHelpContextIds.java index c2e0e07b2d..4c9a3816fd 100644 --- a/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/XMLTableTreeHelpContextIds.java +++ b/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/XMLTableTreeHelpContextIds.java @@ -23,8 +23,8 @@ import org.eclipse.wst.xml.ui.internal.XMLUIPlugin; * */ public interface XMLTableTreeHelpContextIds { - - public static final String PREFIX = XMLUIPlugin.ID + ".design."; //$NON-NLS-1$ + // org.eclipse.wst.xml.ui. + public static final String PREFIX = XMLUIPlugin.ID + "."; //$NON-NLS-1$ // XML Design View public static final String XML_DESIGN_VIEW_HELPID = PREFIX + "xmlm3000"; //$NON-NLS-1$ diff --git a/bundles/org.eclipse.wst.xml.ui/src-wizards/org/eclipse/wst/xml/ui/internal/wizards/IXMLWizardHelpContextIds.java b/bundles/org.eclipse.wst.xml.ui/src-wizards/org/eclipse/wst/xml/ui/internal/wizards/IXMLWizardHelpContextIds.java new file mode 100644 index 0000000000..e342efae4f --- /dev/null +++ b/bundles/org.eclipse.wst.xml.ui/src-wizards/org/eclipse/wst/xml/ui/internal/wizards/IXMLWizardHelpContextIds.java @@ -0,0 +1,48 @@ +/******************************************************************************* + * 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.wst.xml.ui.internal.wizards; + +import org.eclipse.wst.xml.ui.internal.XMLUIPlugin; + +/** + * Help context ids for the xml wizard. + * <p> + * This interface contains constants only; it is not intended to be + * implemented. + * </p> + */ +interface IXMLWizardHelpContextIds { + // org.eclipse.wst.xml.ui. + public static final String PREFIX = XMLUIPlugin.ID + "."; //$NON-NLS-1$ + // Create XML file from a DTD file radio + public static final String XML_NEWWIZARD_CREATEXML1_HELPID = PREFIX + "xmlc0101"; //$NON-NLS-1$ + // Create XML file from an XML schema file radio button + public static final String XML_NEWWIZARD_CREATEXML2_HELPID = PREFIX + "xmlc0102"; //$NON-NLS-1$ + // Create XML file from scratch radio button + public static final String XML_NEWWIZARD_CREATEXML3_HELPID = PREFIX + "xmlc0103"; //$NON-NLS-1$ + // Select Source file page + public static final String XML_NEWWIZARD_SELECTSOURCE_HELPID = PREFIX + "xmlc0500"; //$NON-NLS-1$ + // Root element for both DTD and XML schema + public static final String XML_NEWWIZARD_SELECTROOTELEMENT_HELPID = PREFIX + "xmlc0410"; //$NON-NLS-1$ + // Create Optional Attributes + public static final String XML_NEWWIZARD_SELECTROOTELEMENT1_HELPID = PREFIX + "xmlc0441"; //$NON-NLS-1$ + // Create Optional Elements + public static final String XML_NEWWIZARD_SELECTROOTELEMENT2_HELPID = PREFIX + "xmlc0442"; //$NON-NLS-1$ + // Create first choice of required choice + public static final String XML_NEWWIZARD_SELECTROOTELEMENT3_HELPID = PREFIX + "xmlc0443"; //$NON-NLS-1$ + // Fill elements and attribute with data + public static final String XML_NEWWIZARD_SELECTROOTELEMENT4_HELPID = PREFIX + "xmlc0444"; //$NON-NLS-1$ + // System ID for DTD + public static final String XML_NEWWIZARD_SELECTROOTELEMENT5_HELPID = PREFIX + "xmlc0210"; //$NON-NLS-1$ + // Public ID for DTD + public static final String XML_NEWWIZARD_SELECTROOTELEMENT6_HELPID = PREFIX + "xmlc0220"; //$NON-NLS-1$ +} diff --git a/bundles/org.eclipse.wst.xml.ui/src-wizards/org/eclipse/wst/xml/ui/internal/wizards/NewModelWizard.java b/bundles/org.eclipse.wst.xml.ui/src-wizards/org/eclipse/wst/xml/ui/internal/wizards/NewModelWizard.java index 045f3a9f48..f0ae26bac5 100644 --- a/bundles/org.eclipse.wst.xml.ui/src-wizards/org/eclipse/wst/xml/ui/internal/wizards/NewModelWizard.java +++ b/bundles/org.eclipse.wst.xml.ui/src-wizards/org/eclipse/wst/xml/ui/internal/wizards/NewModelWizard.java @@ -162,8 +162,6 @@ public class NewModelWizard extends Wizard implements INewWizard public void createControl(Composite parent) { Composite base = new Composite(parent, SWT.NONE); - //TODO... setHelp - //WorkbenchHelp.setHelp(base, XMLBuilderContextIds.XMLC_CREATE_PAGE); base.setLayout(new GridLayout()); //radio buttons' container @@ -178,16 +176,12 @@ public class NewModelWizard extends Wizard implements INewWizard gd.heightHint = 300; gd.widthHint = 400; radioButtonsGroup.setLayoutData(gd); - //TODO... set help - //WorkbenchHelp.setHelp(radioButtonsGroup, XMLBuilderContextIds.XMLC_RADIO_GROUP); for (int i = 0; i < radioButtonLabel.length; i++) { radioButton[i] = new Button(radioButtonsGroup, SWT.RADIO); radioButton[i].setText(radioButtonLabel[i]); radioButton[i].setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); - //TODO... set help - //WorkbenchHelp.setHelp(radioButton[i], new ControlContextComputer(radioButton[i], XMLBuilderContextIds.XMLC_RADIO_BUTTON)); //radioButton[i].addListener(SWT.Modify, this); } setControl(base); diff --git a/bundles/org.eclipse.wst.xml.ui/src-wizards/org/eclipse/wst/xml/ui/internal/wizards/NewXMLWizard.java b/bundles/org.eclipse.wst.xml.ui/src-wizards/org/eclipse/wst/xml/ui/internal/wizards/NewXMLWizard.java index 3268a1a47a..f645262438 100644 --- a/bundles/org.eclipse.wst.xml.ui/src-wizards/org/eclipse/wst/xml/ui/internal/wizards/NewXMLWizard.java +++ b/bundles/org.eclipse.wst.xml.ui/src-wizards/org/eclipse/wst/xml/ui/internal/wizards/NewXMLWizard.java @@ -14,6 +14,7 @@ import java.text.Collator; import java.util.Arrays; import java.util.List; import java.util.Vector; + import org.eclipse.core.resources.IFile; import org.eclipse.core.runtime.CoreException; import org.eclipse.core.runtime.Path; @@ -59,879 +60,770 @@ import org.eclipse.wst.xml.ui.internal.dialogs.NamespaceInfoErrorHelper; import org.eclipse.wst.xml.ui.internal.dialogs.SelectFileOrXMLCatalogIdPanel; import org.eclipse.wst.xml.ui.internal.nsedit.CommonEditNamespacesDialog; -public class NewXMLWizard extends NewModelWizard -{ - protected static final int CREATE_FROM_DTD = 0; - protected static final int CREATE_FROM_XSD = 1; - protected static final int CREATE_FROM_SCRATCH = 2; - - protected static final String[] createFromRadioButtonLabel - = {XMLWizardsMessages._UI_RADIO_XML_FROM_DTD, - XMLWizardsMessages._UI_RADIO_XML_FROM_SCHEMA, - XMLWizardsMessages._UI_RADIO_XML_FROM_SCRATCH}; - - protected static final String[] filePageFilterExtensions = {".xml"}; //$NON-NLS-1$ - protected static final String[] browseXSDFilterExtensions = {".xsd"}; //$NON-NLS-1$ - protected static final String[] browseDTDFilterExtensions = {".dtd"}; //$NON-NLS-1$ - - protected NewFilePage newFilePage; - protected StartPage startPage; - protected SelectGrammarFilePage selectGrammarFilePage; - protected SelectRootElementPage selectRootElementPage; - - protected String cmDocumentErrorMessage; - - protected NewXMLGenerator generator; - - - public NewXMLWizard() - { - setWindowTitle(XMLWizardsMessages._UI_WIZARD_CREATE_XML_HEADING); - setDefaultPageImageDescriptor(ImageDescriptor.createFromFile(XMLWizard.class,"icons/generatexml_wiz.gif")); //$NON-NLS-1$ - generator = new NewXMLGenerator(); - } - - - public NewXMLWizard(IFile file, CMDocument cmDocument) - { - this(); - - generator.setGrammarURI(URIHelper.getPlatformURI(file)); - generator.setCMDocument(cmDocument); - } - - - public static void showDialog(Shell shell, IFile file, IStructuredSelection structuredSelection) - { - String[] errorInfo = new String[2]; - CMDocument cmDocument = NewXMLGenerator.createCMDocument(file.getLocation().toOSString(), errorInfo); - if (errorInfo[0] == null) - { - NewXMLWizard wizard = new NewXMLWizard(file, cmDocument); - wizard.init(PlatformUI.getWorkbench(), structuredSelection); - wizard.setNeedsProgressMonitor(true); - WizardDialog dialog = new WizardDialog(shell, wizard); - dialog.create(); - dialog.getShell().setText(XMLWizardsMessages._UI_DIALOG_NEW_TITLE); - dialog.setBlockOnOpen(true); - dialog.open(); - } - else - { - MessageDialog.openInformation(shell, errorInfo[0], errorInfo[1]); - } - } - - - public void addPages() - { - String grammarURI = generator.getGrammarURI(); - - if (grammarURI == null) - { - // start page - startPage = new StartPage("StartPage", createFromRadioButtonLabel) //$NON-NLS-1$ - { - public void createControl(Composite parent) - { - super.createControl(parent); - } - - public void setVisible(boolean visible) - { - super.setVisible(visible); - getRadioButtonAtIndex(getCreateMode()).setSelection(true); - getRadioButtonAtIndex(getCreateMode()).setFocus(); - - // Set the help context for each button - //WorkbenchHelp.setHelp(startPage.getRadioButtonAtIndex(0), XMLBuilderContextIds.XMLC_FROM_DTD_RADIO); - //WorkbenchHelp.setHelp(startPage.getRadioButtonAtIndex(1), XMLBuilderContextIds.XMLC_XML_SCHEMA_RADIO); - //WorkbenchHelp.setHelp(startPage.getRadioButtonAtIndex(2), XMLBuilderContextIds.XMLC_SCRATCH_RADIO); - } - }; - - - startPage.setTitle(XMLWizardsMessages._UI_WIZARD_CREATE_XML_HEADING); - startPage.setDescription(XMLWizardsMessages._UI_WIZARD_CREATE_XML_EXPL); - addPage(startPage); - } - - // new file page - newFilePage = new NewFilePage(fSelection); - newFilePage.setTitle(XMLWizardsMessages._UI_WIZARD_CREATE_XML_FILE_HEADING); - newFilePage.setDescription(XMLWizardsMessages._UI_WIZARD_CREATE_XML_FILE_EXPL); - newFilePage.defaultName = (grammarURI != null) ? URIHelper.removeFileExtension(URIHelper.getLastSegment(grammarURI)) : "NewFile"; //$NON-NLS-1$ - newFilePage.defaultFileExtension = ".xml"; //$NON-NLS-1$ - newFilePage.filterExtensions = filePageFilterExtensions; - addPage(newFilePage); - - // selectGrammarFilePage - selectGrammarFilePage = new SelectGrammarFilePage(); - addPage(selectGrammarFilePage); - - // select root element page - selectRootElementPage = new SelectRootElementPage(); - selectRootElementPage.setTitle(XMLWizardsMessages._UI_WIZARD_SELECT_ROOT_HEADING); - selectRootElementPage.setDescription(XMLWizardsMessages._UI_WIZARD_SELECT_ROOT_EXPL); - addPage(selectRootElementPage); - } - - - public IWizardPage getStartingPage() - { - WizardPage result = null; - if (startPage != null) - { - result = startPage; - } - else - { - result = newFilePage; - } - return result; - } - - - public int getCreateMode() - { - String grammarURI = generator.getGrammarURI(); - - int result = CREATE_FROM_SCRATCH; - if (grammarURI != null) - { - if (grammarURI.endsWith(".dtd")) //$NON-NLS-1$ - { - result = CREATE_FROM_DTD; - } - else if (grammarURI.endsWith(".xsd")) //$NON-NLS-1$ - { - result = CREATE_FROM_XSD; - } - } - else if (startPage != null) - { - int selectedIndex = startPage.getSelectedRadioButtonIndex(); - if (selectedIndex != -1) - { - result = selectedIndex; - } - } - return result; - } - - - public IWizardPage getNextPage(IWizardPage currentPage) - { - WizardPage nextPage = null; - if (currentPage == startPage) - { - nextPage = newFilePage; - } - else if (currentPage == newFilePage) - { - if (getCreateMode() == CREATE_FROM_SCRATCH) - { - nextPage = null; - } - else if (generator.getGrammarURI() == null) - { - nextPage = selectGrammarFilePage; - } - else - { - nextPage = selectRootElementPage; - } - } - else if (currentPage == selectGrammarFilePage) - { - nextPage = selectRootElementPage; - } - return nextPage; - } - - - public boolean canFinish() - { - boolean result = false; - - IWizardPage currentPage = getContainer().getCurrentPage(); - - if ((startPage != null && startPage.getSelectedRadioButtonIndex() == CREATE_FROM_SCRATCH && currentPage == newFilePage) || - (currentPage == selectRootElementPage)) - { - result = currentPage.isPageComplete(); - } - return result; - } - - - public boolean performFinish() - { - boolean result = true; - super.performFinish(); - String fileName = null; - try - { - - String[] namespaceErrors = generator.getNamespaceInfoErrors(); - if (namespaceErrors != null) - { - String title = namespaceErrors[0]; - String message = namespaceErrors[1]; - result = MessageDialog.openQuestion(getShell(), title, message); - } - - if (result) - { - fileName = newFilePage.getFileName(); - if ((new Path(fileName)).getFileExtension() == null) - { - newFilePage.setFileName(fileName.concat(".xml")); //$NON-NLS-1$ - } - - IFile newFile = newFilePage.createNewFile(); - String xmlFileName = newFile.getLocation().toOSString(); - - if (getContainer().getCurrentPage() == selectRootElementPage) - { - - generator.createXMLDocument(newFile, xmlFileName); - } - else - { - generator.createEmptyXMLDocument(newFile); - } - - newFile.refreshLocal(1, null); - - IWorkbenchWindow workbenchWindow = PlatformUI.getWorkbench().getActiveWorkbenchWindow(); - BasicNewResourceWizard.selectAndReveal(newFile, workbenchWindow); - openEditor(newFile); - } - } - catch (Exception e) - { - Logger.logException("Exception completing New XML wizard " + fileName, e); //$NON-NLS-1$ - } - return result; - } - - public void openEditor(IFile file) - { - // Open editor on new file. - String editorId = null; - try { - IEditorDescriptor editor = PlatformUI.getWorkbench().getEditorRegistry().getDefaultEditor(file.getLocation().toOSString(), file.getContentDescription().getContentType()); - if(editor != null){ - editorId = editor.getId(); - } - } catch (CoreException e1) { - // editor id could not be retrieved, so we can not open editor - return; +public class NewXMLWizard extends NewModelWizard { + protected static final int CREATE_FROM_DTD = 0; + protected static final int CREATE_FROM_XSD = 1; + protected static final int CREATE_FROM_SCRATCH = 2; + + protected static final String[] createFromRadioButtonLabel = {XMLWizardsMessages._UI_RADIO_XML_FROM_DTD, XMLWizardsMessages._UI_RADIO_XML_FROM_SCHEMA, XMLWizardsMessages._UI_RADIO_XML_FROM_SCRATCH}; + + protected static final String[] filePageFilterExtensions = {".xml"}; //$NON-NLS-1$ + protected static final String[] browseXSDFilterExtensions = {".xsd"}; //$NON-NLS-1$ + protected static final String[] browseDTDFilterExtensions = {".dtd"}; //$NON-NLS-1$ + + protected NewFilePage newFilePage; + protected StartPage startPage; + protected SelectGrammarFilePage selectGrammarFilePage; + protected SelectRootElementPage selectRootElementPage; + + protected String cmDocumentErrorMessage; + + protected NewXMLGenerator generator; + + + public NewXMLWizard() { + setWindowTitle(XMLWizardsMessages._UI_WIZARD_CREATE_XML_HEADING); + setDefaultPageImageDescriptor(ImageDescriptor.createFromFile(XMLWizard.class, "icons/generatexml_wiz.gif")); //$NON-NLS-1$ + generator = new NewXMLGenerator(); + } + + + public NewXMLWizard(IFile file, CMDocument cmDocument) { + this(); + + generator.setGrammarURI(URIHelper.getPlatformURI(file)); + generator.setCMDocument(cmDocument); + } + + + public static void showDialog(Shell shell, IFile file, IStructuredSelection structuredSelection) { + String[] errorInfo = new String[2]; + CMDocument cmDocument = NewXMLGenerator.createCMDocument(file.getLocation().toOSString(), errorInfo); + if (errorInfo[0] == null) { + NewXMLWizard wizard = new NewXMLWizard(file, cmDocument); + wizard.init(PlatformUI.getWorkbench(), structuredSelection); + wizard.setNeedsProgressMonitor(true); + WizardDialog dialog = new WizardDialog(shell, wizard); + dialog.create(); + dialog.getShell().setText(XMLWizardsMessages._UI_DIALOG_NEW_TITLE); + dialog.setBlockOnOpen(true); + dialog.open(); + } + else { + MessageDialog.openInformation(shell, errorInfo[0], errorInfo[1]); + } + } + + + public void addPages() { + String grammarURI = generator.getGrammarURI(); + + if (grammarURI == null) { + // start page + startPage = new StartPage("StartPage", createFromRadioButtonLabel) //$NON-NLS-1$ + { + public void createControl(Composite parent) { + super.createControl(parent); + } + + public void setVisible(boolean visible) { + super.setVisible(visible); + getRadioButtonAtIndex(getCreateMode()).setSelection(true); + getRadioButtonAtIndex(getCreateMode()).setFocus(); + + // Set the help context for each button + PlatformUI.getWorkbench().getHelpSystem().setHelp(startPage.getRadioButtonAtIndex(0), IXMLWizardHelpContextIds.XML_NEWWIZARD_CREATEXML1_HELPID); + PlatformUI.getWorkbench().getHelpSystem().setHelp(startPage.getRadioButtonAtIndex(1), IXMLWizardHelpContextIds.XML_NEWWIZARD_CREATEXML2_HELPID); + PlatformUI.getWorkbench().getHelpSystem().setHelp(startPage.getRadioButtonAtIndex(2), IXMLWizardHelpContextIds.XML_NEWWIZARD_CREATEXML3_HELPID); + } + }; + + + startPage.setTitle(XMLWizardsMessages._UI_WIZARD_CREATE_XML_HEADING); + startPage.setDescription(XMLWizardsMessages._UI_WIZARD_CREATE_XML_EXPL); + addPage(startPage); + } + + // new file page + newFilePage = new NewFilePage(fSelection); + newFilePage.setTitle(XMLWizardsMessages._UI_WIZARD_CREATE_XML_FILE_HEADING); + newFilePage.setDescription(XMLWizardsMessages._UI_WIZARD_CREATE_XML_FILE_EXPL); + newFilePage.defaultName = (grammarURI != null) ? URIHelper.removeFileExtension(URIHelper.getLastSegment(grammarURI)) : "NewFile"; //$NON-NLS-1$ + newFilePage.defaultFileExtension = ".xml"; //$NON-NLS-1$ + newFilePage.filterExtensions = filePageFilterExtensions; + addPage(newFilePage); + + // selectGrammarFilePage + selectGrammarFilePage = new SelectGrammarFilePage(); + addPage(selectGrammarFilePage); + + // select root element page + selectRootElementPage = new SelectRootElementPage(); + selectRootElementPage.setTitle(XMLWizardsMessages._UI_WIZARD_SELECT_ROOT_HEADING); + selectRootElementPage.setDescription(XMLWizardsMessages._UI_WIZARD_SELECT_ROOT_EXPL); + addPage(selectRootElementPage); + } + + + public IWizardPage getStartingPage() { + WizardPage result = null; + if (startPage != null) { + result = startPage; + } + else { + result = newFilePage; + } + return result; + } + + + public int getCreateMode() { + String grammarURI = generator.getGrammarURI(); + + int result = CREATE_FROM_SCRATCH; + if (grammarURI != null) { + if (grammarURI.endsWith(".dtd")) //$NON-NLS-1$ + { + result = CREATE_FROM_DTD; + } + else if (grammarURI.endsWith(".xsd")) //$NON-NLS-1$ + { + result = CREATE_FROM_XSD; + } + } + else if (startPage != null) { + int selectedIndex = startPage.getSelectedRadioButtonIndex(); + if (selectedIndex != -1) { + result = selectedIndex; + } + } + return result; + } + + + public IWizardPage getNextPage(IWizardPage currentPage) { + WizardPage nextPage = null; + if (currentPage == startPage) { + nextPage = newFilePage; + } + else if (currentPage == newFilePage) { + if (getCreateMode() == CREATE_FROM_SCRATCH) { + nextPage = null; + } + else if (generator.getGrammarURI() == null) { + nextPage = selectGrammarFilePage; + } + else { + nextPage = selectRootElementPage; + } + } + else if (currentPage == selectGrammarFilePage) { + nextPage = selectRootElementPage; + } + return nextPage; + } + + + public boolean canFinish() { + boolean result = false; + + IWizardPage currentPage = getContainer().getCurrentPage(); + + if ((startPage != null && startPage.getSelectedRadioButtonIndex() == CREATE_FROM_SCRATCH && currentPage == newFilePage) || (currentPage == selectRootElementPage)) { + result = currentPage.isPageComplete(); + } + return result; + } + + + public boolean performFinish() { + boolean result = true; + super.performFinish(); + String fileName = null; + try { + + String[] namespaceErrors = generator.getNamespaceInfoErrors(); + if (namespaceErrors != null) { + String title = namespaceErrors[0]; + String message = namespaceErrors[1]; + result = MessageDialog.openQuestion(getShell(), title, message); + } + + if (result) { + fileName = newFilePage.getFileName(); + if ((new Path(fileName)).getFileExtension() == null) { + newFilePage.setFileName(fileName.concat(".xml")); //$NON-NLS-1$ + } + + IFile newFile = newFilePage.createNewFile(); + String xmlFileName = newFile.getLocation().toOSString(); + + if (getContainer().getCurrentPage() == selectRootElementPage) { + + generator.createXMLDocument(newFile, xmlFileName); + } + else { + generator.createEmptyXMLDocument(newFile); + } + + newFile.refreshLocal(1, null); + + IWorkbenchWindow workbenchWindow = PlatformUI.getWorkbench().getActiveWorkbenchWindow(); + BasicNewResourceWizard.selectAndReveal(newFile, workbenchWindow); + openEditor(newFile); + } + } + catch (Exception e) { + Logger.logException("Exception completing New XML wizard " + fileName, e); //$NON-NLS-1$ + } + return result; + } + + public void openEditor(IFile file) { + // Open editor on new file. + String editorId = null; + try { + IEditorDescriptor editor = PlatformUI.getWorkbench().getEditorRegistry().getDefaultEditor(file.getLocation().toOSString(), file.getContentDescription().getContentType()); + if (editor != null) { + editorId = editor.getId(); + } + } + catch (CoreException e1) { + // editor id could not be retrieved, so we can not open editor + return; + } + IWorkbenchWindow dw = PlatformUI.getWorkbench().getActiveWorkbenchWindow(); + try { + if (dw != null) { + IWorkbenchPage page = dw.getActivePage(); + if (page != null) + page.openEditor(new FileEditorInput(file), editorId, true); + } + } + catch (PartInitException e) { + // editor can not open for some reason + return; + } + + } + + + protected String getDefaultSystemId() { + String relativePath = "platform:/resource/" + newFilePage.getContainerFullPath().toString() + "/dummy"; //$NON-NLS-1$ //$NON-NLS-2$ + return URIHelper.getRelativeURI(generator.getGrammarURI(), relativePath); + } + + + /** + * SelectGrammarFilePage + */ + class SelectGrammarFilePage extends WizardPage { + protected SelectFileOrXMLCatalogIdPanel panel; + + SelectGrammarFilePage() { + super("SelectGrammarFilePage"); //$NON-NLS-1$ + } + + public void createControl(Composite parent) { + Composite composite = new Composite(parent, SWT.NONE); + PlatformUI.getWorkbench().getHelpSystem().setHelp(composite, IXMLWizardHelpContextIds.XML_NEWWIZARD_SELECTSOURCE_HELPID); + composite.setLayout(new GridLayout()); + composite.setLayoutData(new GridData(GridData.FILL_BOTH)); + setControl(composite); + + panel = new SelectFileOrXMLCatalogIdPanel(composite); + panel.setLayoutData(new GridData(GridData.FILL_BOTH)); + + SelectFileOrXMLCatalogIdPanel.Listener listener = new SelectFileOrXMLCatalogIdPanel.Listener() { + public void completionStateChanged() { + updateErrorMessage(); + } + }; + panel.setListener(listener); + } + + public void setVisible(boolean visible) { + super.setVisible(visible); + if (visible) { + if (getCreateMode() == CREATE_FROM_DTD) { + setTitle(XMLWizardsMessages._UI_WIZARD_SELECT_DTD_FILE_TITLE); + setDescription(XMLWizardsMessages._UI_WIZARD_SELECT_DTD_FILE_DESC); + panel.setFilterExtensions(browseDTDFilterExtensions); + } + else { + setTitle(XMLWizardsMessages._UI_WIZARD_SELECT_XSD_FILE_TITLE); + setDescription(XMLWizardsMessages._UI_WIZARD_SELECT_XSD_FILE_DESC); + panel.setFilterExtensions(browseXSDFilterExtensions); + } + generator.setGrammarURI(null); + generator.setCMDocument(null); + cmDocumentErrorMessage = null; + } + panel.setVisibleHelper(visible); + } + + public String getURI() { + String uri = panel.getXMLCatalogURI(); + if (uri == null) { + IFile file = panel.getFile(); + if (file != null) { + uri = URIHelper.getPlatformURI(file); + } + } + return uri; + } + + public boolean isPageComplete() { + return getURI() != null && getErrorMessage() == null; + } + + public String getXMLCatalogId() { + return panel.getXMLCatalogId(); + } + + public ICatalogEntry getXMLCatalogEntry() { + return panel.getXMLCatalogEntry(); + } + + public String computeErrorMessage() { + String errorMessage = null; + String uri = getURI(); + if (uri != null) { + if (!URIHelper.isReadableURI(uri, false)) { + errorMessage = XMLWizardsMessages._UI_LABEL_ERROR_CATALOG_ENTRY_INVALID; + } + } + return errorMessage; + } + + + public void updateErrorMessage() { + String errorMessage = computeErrorMessage(); + setErrorMessage(errorMessage); + setPageComplete(isPageComplete()); + } } - IWorkbenchWindow dw = PlatformUI.getWorkbench().getActiveWorkbenchWindow(); - try { - if (dw != null) { - IWorkbenchPage page = dw.getActivePage(); - if (page != null) - page.openEditor(new FileEditorInput(file), editorId, true); - } - } catch (PartInitException e) { - // editor can not open for some reason - return; + + + /** + * SelectRootElementPage + */ + class SelectRootElementPage extends WizardPage implements SelectionListener { + protected Combo combo; + protected Button[] radioButton; + protected PageBook pageBook; + protected XSDOptionsPanel xsdOptionsPanel; + protected DTDOptionsPanel dtdOptionsPanel; + + + SelectRootElementPage() { + super("SelectRootElementPage"); //$NON-NLS-1$ + } + + public void createControl(Composite parent) { + // container group + Composite containerGroup = new Composite(parent, SWT.NONE); + PlatformUI.getWorkbench().getHelpSystem().setHelp(containerGroup, IXMLWizardHelpContextIds.XML_NEWWIZARD_SELECTROOTELEMENT_HELPID); + containerGroup.setLayout(new GridLayout()); + containerGroup.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); + setControl(containerGroup); + + // select root element + Label containerLabel = new Label(containerGroup, SWT.NONE); + containerLabel.setText(XMLWizardsMessages._UI_LABEL_ROOT_ELEMENT); + combo = new Combo(containerGroup, SWT.DROP_DOWN | SWT.READ_ONLY); + combo.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); + combo.addSelectionListener(this); + + // Options + { + Group group = new Group(containerGroup, SWT.NONE); + group.setText(XMLWizardsMessages._UI_WIZARD_CONTENT_OPTIONS); + + GridLayout layout = new GridLayout(); + layout.numColumns = 1; + layout.makeColumnsEqualWidth = true; + layout.marginWidth = 0; + group.setLayout(layout); + group.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); + + radioButton = new Button[4]; + + radioButton[0] = new Button(group, SWT.CHECK); + radioButton[0].setText(XMLWizardsMessages._UI_WIZARD_CREATE_OPTIONAL_ATTRIBUTES); + radioButton[0].setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); + radioButton[0].setSelection(false); + PlatformUI.getWorkbench().getHelpSystem().setHelp(radioButton[0], IXMLWizardHelpContextIds.XML_NEWWIZARD_SELECTROOTELEMENT1_HELPID); + + radioButton[1] = new Button(group, SWT.CHECK); + radioButton[1].setText(XMLWizardsMessages._UI_WIZARD_CREATE_OPTIONAL_ELEMENTS); + radioButton[1].setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); + radioButton[1].setSelection(false); + PlatformUI.getWorkbench().getHelpSystem().setHelp(radioButton[1], IXMLWizardHelpContextIds.XML_NEWWIZARD_SELECTROOTELEMENT2_HELPID); + + radioButton[2] = new Button(group, SWT.CHECK); + radioButton[2].setText(XMLWizardsMessages._UI_WIZARD_CREATE_FIRST_CHOICE); + radioButton[2].setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); + radioButton[2].setSelection(true); + PlatformUI.getWorkbench().getHelpSystem().setHelp(radioButton[2], IXMLWizardHelpContextIds.XML_NEWWIZARD_SELECTROOTELEMENT3_HELPID); + + radioButton[3] = new Button(group, SWT.CHECK); + radioButton[3].setText(XMLWizardsMessages._UI_WIZARD_FILL_ELEMENTS_AND_ATTRIBUTES); + radioButton[3].setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); + radioButton[3].setSelection(true); + PlatformUI.getWorkbench().getHelpSystem().setHelp(radioButton[3], IXMLWizardHelpContextIds.XML_NEWWIZARD_SELECTROOTELEMENT4_HELPID); + /* + * radioButton = new Button[2]; + * + * radioButton[0] = new Button(group, SWT.RADIO); + * radioButton[0].setText(XMLWizardsMessages.getString("_UI_WIZARD_CREATE_REQUIRED")); + * radioButton[0].setLayoutData(new + * GridData(GridData.FILL_HORIZONTAL)); + * radioButton[0].setSelection(true); + * WorkbenchHelp.setHelp(radioButton[0], + * XMLBuilderContextIds.XMLC_CREATE_REQUIRED_ONLY); + * + * radioButton[1] = new Button(group, SWT.RADIO); + * radioButton[1].setText(XMLWizardsMessages.getString("_UI_WIZARD_CREATE_OPTIONAL")); + * radioButton[1].setLayoutData(new + * GridData(GridData.FILL_HORIZONTAL)); + * WorkbenchHelp.setHelp(radioButton[1], + * XMLBuilderContextIds.XMLC_CREATE_REQUIRED_AND_OPTION); + */ + } + + // add the grammar specific generation options + // + { + pageBook = new PageBook(containerGroup, SWT.NONE); + pageBook.setLayoutData(new GridData(GridData.FILL_BOTH)); + xsdOptionsPanel = new XSDOptionsPanel(this, pageBook); + dtdOptionsPanel = new DTDOptionsPanel(this, pageBook); + pageBook.showPage(xsdOptionsPanel); + } + } + + public void widgetSelected(SelectionEvent event) { + int index = combo.getSelectionIndex(); + String rootElementName = (index != -1) ? combo.getItem(index) : null; + generator.setRootElementName(rootElementName); + } + + public void widgetDefaultSelected(SelectionEvent event) { + // do nothing + } + + public void setVisible(boolean visible) { + super.setVisible(visible); + + if (visible) { + try { + if (generator.getGrammarURI() == null) { + generator.setGrammarURI(selectGrammarFilePage.getURI()); + generator.setXMLCatalogEntry(selectGrammarFilePage.getXMLCatalogEntry()); + } + Assert.isNotNull(generator.getGrammarURI()); + + if (generator.getCMDocument() == null) { + final String[] errorInfo = new String[2]; + final CMDocument[] cmdocs = new CMDocument[1]; + Runnable r = new Runnable() { + public void run() { + cmdocs[0] = NewXMLGenerator.createCMDocument(generator.getGrammarURI(), errorInfo); + } + }; + org.eclipse.swt.custom.BusyIndicator.showWhile(Display.getCurrent(), r); + + generator.setCMDocument(cmdocs[0]); + cmDocumentErrorMessage = errorInfo[1]; + } + + if (generator.getCMDocument() != null && cmDocumentErrorMessage == null) { + CMNamedNodeMap nameNodeMap = generator.getCMDocument().getElements(); + Vector nameNodeVector = new Vector(); + + for (int i = 0; i < nameNodeMap.getLength(); i++) { + CMElementDeclaration cmElementDeclaration = (CMElementDeclaration) nameNodeMap.item(i); + Object value = cmElementDeclaration.getProperty("Abstract"); //$NON-NLS-1$ + if (value != Boolean.TRUE) { + nameNodeVector.add(cmElementDeclaration.getElementName()); + } + } + + Object[] nameNodeArray = nameNodeVector.toArray(); + if (nameNodeArray.length > 0) { + Arrays.sort(nameNodeArray, Collator.getInstance()); + } + + String defaultRootName = (String) (generator.getCMDocument()).getProperty("http://org.eclipse.wst/cm/properties/defaultRootName"); //$NON-NLS-1$ + int defaultRootIndex = -1; + combo.removeAll(); + + + for (int i = 0; i < nameNodeArray.length; i++) { + String elementName = (String) nameNodeArray[i]; + + combo.add(elementName); + if (defaultRootName != null && defaultRootName.equals(elementName)) { + defaultRootIndex = i; + } + } + + if (nameNodeArray.length > 0) { + defaultRootIndex = defaultRootIndex != -1 ? defaultRootIndex : 0; + combo.select(defaultRootIndex); + generator.setRootElementName(combo.getItem(defaultRootIndex)); + } + } + + if (generator.getGrammarURI().endsWith("xsd")) //$NON-NLS-1$ + { + pageBook.showPage(xsdOptionsPanel); + generator.setDefaultSystemId(getDefaultSystemId()); + generator.createNamespaceInfoList(); + + // Provide default namespace prefix if none + for (int i = 0; i < generator.namespaceInfoList.size(); i++) { + NamespaceInfo nsinfo = (NamespaceInfo) generator.namespaceInfoList.get(i); + if ((nsinfo.prefix == null || nsinfo.prefix.trim().length() == 0) && (nsinfo.uri != null && nsinfo.uri.trim().length() != 0)) { + nsinfo.prefix = getDefaultPrefix(generator.namespaceInfoList); + } + } + xsdOptionsPanel.setNamespaceInfoList(generator.namespaceInfoList); + } + else if (generator.getGrammarURI().endsWith("dtd")) //$NON-NLS-1$ + { + pageBook.showPage(dtdOptionsPanel); + dtdOptionsPanel.update(); + } + } + catch (Exception e) { + // XMLBuilderPlugin.getPlugin().getMsgLogger().writeCurrentThread(); + } + + /* + * String errorMessage = computeErrorMessage(); if + * (errorMessage == null) super.setVisible(visible); + */ + + updateErrorMessage(); + } + } + + private String getDefaultPrefix(List nsInfoList) { + String defaultPrefix = "p"; //$NON-NLS-1$ + if (nsInfoList == null) + return defaultPrefix; + + Vector v = new Vector(); + for (int i = 0; i < nsInfoList.size(); i++) { + NamespaceInfo nsinfo = (NamespaceInfo) nsInfoList.get(i); + if (nsinfo.prefix != null) + v.addElement(nsinfo.prefix); + } + + if (v.contains(defaultPrefix)) { + String s = defaultPrefix; + for (int j = 0; v.contains(s); j++) { + s = defaultPrefix + Integer.toString(j); + } + return s; + } + return defaultPrefix; + } + + public boolean isPageComplete() { + boolean complete = (generator.getRootElementName() != null && generator.getRootElementName().length() > 0) && getErrorMessage() == null; + + if (complete) { + /* + * int buildPolicy = radioButton[0].getSelection() ? + * DOMContentBuilder.BUILD_ONLY_REQUIRED_CONTENT : + * DOMContentBuilder.BUILD_ALL_CONTENT; + */ + int buildPolicy = 0; + if (radioButton[0].getSelection()) + buildPolicy = buildPolicy | DOMContentBuilder.BUILD_OPTIONAL_ATTRIBUTES; + if (radioButton[1].getSelection()) + buildPolicy = buildPolicy | DOMContentBuilder.BUILD_OPTIONAL_ELEMENTS; + if (radioButton[2].getSelection()) + buildPolicy = buildPolicy | DOMContentBuilder.BUILD_FIRST_CHOICE | DOMContentBuilder.BUILD_FIRST_SUBSTITUTION; + if (radioButton[3].getSelection()) + buildPolicy = buildPolicy | DOMContentBuilder.BUILD_TEXT_NODES; + + generator.setBuildPolicy(buildPolicy); + } + + return complete; + } + + public String computeErrorMessage() { + String errorMessage = null; + + if (cmDocumentErrorMessage != null) { + errorMessage = cmDocumentErrorMessage; + } + else if (generator.getRootElementName() == null || generator.getRootElementName().length() == 0) { + errorMessage = XMLWizardsMessages._ERROR_ROOT_ELEMENT_MUST_BE_SPECIFIED; + } + + return errorMessage; + } + + + public void updateErrorMessage() { + String errorMessage = computeErrorMessage(); + if (errorMessage == null) { + if (xsdOptionsPanel.isVisible()) { + + errorMessage = xsdOptionsPanel.computeErrorMessage(); + } + else if (dtdOptionsPanel.isVisible()) { + errorMessage = dtdOptionsPanel.computeErrorMessage(); + } + } + setErrorMessage(errorMessage); + setPageComplete(isPageComplete()); + } + } + + // //////////////End SelectRootElementPage + + + + public static GridLayout createOptionsPanelLayout() { + GridLayout gridLayout = new GridLayout(); + gridLayout.marginWidth = 0; + gridLayout.horizontalSpacing = 0; + return gridLayout; + } + + + + /** + * + */ + class XSDOptionsPanel extends Composite { + protected String errorMessage = null; + protected SelectRootElementPage parentPage; + protected CommonEditNamespacesDialog editNamespaces; + + public XSDOptionsPanel(SelectRootElementPage parentPage, Composite parent) { + super(parent, SWT.NONE); + this.parentPage = parentPage; + + setLayout(createOptionsPanelLayout()); + setLayoutData(new GridData(GridData.FILL_BOTH)); + + Composite co = new Composite(this, SWT.NONE); + co.setLayout(new GridLayout()); + + if (newFilePage != null && newFilePage.getContainerFullPath() != null) { + // todo... this is a nasty mess. I need to revist this code. + // + String resourceURI = "platform:/resource" + newFilePage.getContainerFullPath().toString() + "/dummy"; //$NON-NLS-1$ //$NON-NLS-2$ + String resolvedPath = URIHelper.normalize(resourceURI, null, null); + if (resolvedPath.startsWith("file:/")) //$NON-NLS-1$ + { + resolvedPath = resolvedPath.substring(6); + } + // end nasty messs + String tableTitle = XMLWizardsMessages._UI_LABEL_NAMESPACE_INFORMATION; + editNamespaces = new CommonEditNamespacesDialog(co, new Path(resolvedPath), tableTitle, true, true); + } + } + + public void setNamespaceInfoList(List list) { + editNamespaces.setNamespaceInfoList(list); + editNamespaces.updateErrorMessage(list); + } + + public void updateErrorMessage(List namespaceInfoList) { + NamespaceInfoErrorHelper helper = new NamespaceInfoErrorHelper(); + errorMessage = helper.computeErrorMessage(namespaceInfoList, null); + parentPage.updateErrorMessage(); + } + + + public String computeErrorMessage() { + return errorMessage; + } + } + + + /** + * + */ + public class DTDOptionsPanel extends Composite implements ModifyListener { + protected Group group; + protected Text systemIdField; + protected Text publicIdField; + protected SelectRootElementPage parentPage; + + public DTDOptionsPanel(SelectRootElementPage parentPage, Composite parent) { + super(parent, SWT.NONE); + this.parentPage = parentPage; + setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); + + setLayout(createOptionsPanelLayout()); + Group group = new Group(this, SWT.NONE); + group.setText(XMLWizardsMessages._UI_LABEL_DOCTYPE_INFORMATION); + + GridLayout layout = new GridLayout(); + layout.numColumns = 2; + group.setLayout(layout); + group.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); + + Label publicIdLabel = new Label(group, SWT.NONE); + publicIdLabel.setText(XMLWizardsMessages._UI_LABEL_PUBLIC_ID); + publicIdField = new Text(group, SWT.SINGLE | SWT.BORDER); + publicIdField.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); + publicIdField.addModifyListener(this); + PlatformUI.getWorkbench().getHelpSystem().setHelp(publicIdField, IXMLWizardHelpContextIds.XML_NEWWIZARD_SELECTROOTELEMENT5_HELPID); + + Label systemIdLabel = new Label(group, SWT.NONE); + systemIdLabel.setText(XMLWizardsMessages._UI_LABEL_SYSTEM_ID); + systemIdField = new Text(group, SWT.SINGLE | SWT.BORDER); + systemIdField.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); + systemIdField.addModifyListener(this); + PlatformUI.getWorkbench().getHelpSystem().setHelp(systemIdField, IXMLWizardHelpContextIds.XML_NEWWIZARD_SELECTROOTELEMENT6_HELPID); + } + + public void update() { + String thePublicId = null; + String theSystemId = null; + ICatalogEntry xmlCatalogEntry = generator.getXMLCatalogEntry(); + + if (xmlCatalogEntry != null) { + if (xmlCatalogEntry.getEntryType() == ICatalogEntry.ENTRY_TYPE_PUBLIC) { + thePublicId = xmlCatalogEntry.getKey(); + theSystemId = xmlCatalogEntry.getAttributeValue(ICatalogEntry.ATTR_WEB_URL); + if (theSystemId == null) { + theSystemId = generator.getGrammarURI().startsWith("http:") ? generator.getGrammarURI() : URIHelper.getLastSegment(generator.getGrammarURI()); //$NON-NLS-1$ + } + } + else { + theSystemId = xmlCatalogEntry.getKey(); + } + } + else { + theSystemId = getDefaultSystemId(); + } + + publicIdField.setText(thePublicId != null ? thePublicId : ""); //$NON-NLS-1$ + systemIdField.setText(theSystemId != null ? theSystemId : ""); //$NON-NLS-1$ + } + + public void modifyText(ModifyEvent e) { + generator.setSystemId(systemIdField.getText()); + generator.setPublicId(publicIdField.getText()); + parentPage.updateErrorMessage(); + } + + public String computeErrorMessage() { + return null; + } } - - } - - - protected String getDefaultSystemId() - { - String relativePath = "platform:/resource/" + newFilePage.getContainerFullPath().toString() + "/dummy"; //$NON-NLS-1$ //$NON-NLS-2$ - return URIHelper.getRelativeURI(generator.getGrammarURI(), relativePath); - } - - - /** - * SelectGrammarFilePage - */ - class SelectGrammarFilePage extends WizardPage - { - protected SelectFileOrXMLCatalogIdPanel panel; - - SelectGrammarFilePage() - { - super("SelectGrammarFilePage"); //$NON-NLS-1$ - } - - public void createControl(Composite parent) - { - Composite composite = new Composite(parent, SWT.NONE); - //WorkbenchHelp.setHelp(composite, XMLBuilderContextIds.XMLC_GRAMMAR_PAGE); - composite.setLayout(new GridLayout()); - composite.setLayoutData(new GridData(GridData.FILL_BOTH)); - setControl(composite); - - panel = new SelectFileOrXMLCatalogIdPanel(composite); - panel.setLayoutData(new GridData(GridData.FILL_BOTH)); - - SelectFileOrXMLCatalogIdPanel.Listener listener = new SelectFileOrXMLCatalogIdPanel.Listener() - { - public void completionStateChanged() - { - updateErrorMessage(); - } - }; - panel.setListener(listener); - } - - public void setVisible(boolean visible) - { - super.setVisible(visible); - if (visible) - { - if (getCreateMode() == CREATE_FROM_DTD) - { - setTitle(XMLWizardsMessages._UI_WIZARD_SELECT_DTD_FILE_TITLE); - setDescription(XMLWizardsMessages._UI_WIZARD_SELECT_DTD_FILE_DESC); - panel.setFilterExtensions(browseDTDFilterExtensions); - } - else - { - setTitle(XMLWizardsMessages._UI_WIZARD_SELECT_XSD_FILE_TITLE); - setDescription(XMLWizardsMessages._UI_WIZARD_SELECT_XSD_FILE_DESC); - panel.setFilterExtensions(browseXSDFilterExtensions); - } - generator.setGrammarURI(null); - generator.setCMDocument(null); - cmDocumentErrorMessage = null; - } - panel.setVisibleHelper(visible); - } - - public String getURI() - { - String uri = panel.getXMLCatalogURI(); - if (uri == null) - { - IFile file = panel.getFile(); - if (file != null) - { - uri = URIHelper.getPlatformURI(file); - } - } - return uri; - } - - public boolean isPageComplete() - { - return getURI() != null && getErrorMessage() == null; - } - - public String getXMLCatalogId() - { - return panel.getXMLCatalogId(); - } - - public ICatalogEntry getXMLCatalogEntry() - { - return panel.getXMLCatalogEntry(); - } - - public String computeErrorMessage() - { - String errorMessage = null; - String uri = getURI(); - if (uri != null) - { - if (!URIHelper.isReadableURI(uri,false)) - { - errorMessage = XMLWizardsMessages._UI_LABEL_ERROR_CATALOG_ENTRY_INVALID; - } - } - return errorMessage; - } - - - public void updateErrorMessage() - { - String errorMessage = computeErrorMessage(); - setErrorMessage(errorMessage); - setPageComplete(isPageComplete()); - } - } - - - /** - * SelectRootElementPage - */ - class SelectRootElementPage extends WizardPage implements SelectionListener - { - protected Combo combo; - protected Button[] radioButton; - protected PageBook pageBook; - protected XSDOptionsPanel xsdOptionsPanel; - protected DTDOptionsPanel dtdOptionsPanel; - - - SelectRootElementPage() - { - super("SelectRootElementPage"); //$NON-NLS-1$ - } - - public void createControl(Composite parent) - { - // container group - Composite containerGroup = new Composite(parent,SWT.NONE); - //WorkbenchHelp.setHelp(containerGroup, XMLBuilderContextIds.XMLC_ROOT_PAGE); - containerGroup.setLayout(new GridLayout()); - containerGroup.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); - setControl(containerGroup); - - // select root element - Label containerLabel = new Label(containerGroup, SWT.NONE); - containerLabel.setText(XMLWizardsMessages._UI_LABEL_ROOT_ELEMENT); - combo = new Combo(containerGroup, SWT.DROP_DOWN | SWT.READ_ONLY); - combo.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); - combo.addSelectionListener(this); - //WorkbenchHelp.setHelp(combo, XMLBuilderContextIds.XMLC_ROOT_ROOT); - - // Options - { - Group group = new Group(containerGroup, SWT.NONE); - group.setText(XMLWizardsMessages._UI_WIZARD_CONTENT_OPTIONS); - //WorkbenchHelp.setHelp(group, XMLBuilderContextIds.XMLC_CURRENT_GROUP); - - GridLayout layout = new GridLayout(); - layout.numColumns = 1; - layout.makeColumnsEqualWidth = true; - layout.marginWidth = 0; - group.setLayout(layout); - group.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); - - radioButton = new Button[4]; - - radioButton[0] = new Button(group, SWT.CHECK); - radioButton[0].setText(XMLWizardsMessages._UI_WIZARD_CREATE_OPTIONAL_ATTRIBUTES); - radioButton[0].setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); - radioButton[0].setSelection(false); - //WorkbenchHelp.setHelp(radioButton[0], XMLBuilderContextIds.XMLC_CREATE_OPTIONAL_ATTRIBUTES); - - radioButton[1] = new Button(group, SWT.CHECK); - radioButton[1].setText(XMLWizardsMessages._UI_WIZARD_CREATE_OPTIONAL_ELEMENTS); - radioButton[1].setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); - radioButton[1].setSelection(false); - //WorkbenchHelp.setHelp(radioButton[1], XMLBuilderContextIds.XMLC_CREATE_OPTIONAL_ELEMENTS); - - radioButton[2] = new Button(group, SWT.CHECK); - radioButton[2].setText(XMLWizardsMessages._UI_WIZARD_CREATE_FIRST_CHOICE); - radioButton[2].setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); - radioButton[2].setSelection(true); - //WorkbenchHelp.setHelp(radioButton[2], XMLBuilderContextIds.XMLC_CREATE_FIRST_CHOICE); - - radioButton[3] = new Button(group, SWT.CHECK); - radioButton[3].setText(XMLWizardsMessages._UI_WIZARD_FILL_ELEMENTS_AND_ATTRIBUTES); - radioButton[3].setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); - radioButton[3].setSelection(true); - //WorkbenchHelp.setHelp(radioButton[3], XMLBuilderContextIds.XMLC_FILL_ELEMENTS_AND_ATTRIBUTES); -/* - radioButton = new Button[2]; - - radioButton[0] = new Button(group, SWT.RADIO); - radioButton[0].setText(XMLWizardsMessages.getString("_UI_WIZARD_CREATE_REQUIRED")); - radioButton[0].setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); - radioButton[0].setSelection(true); - WorkbenchHelp.setHelp(radioButton[0], XMLBuilderContextIds.XMLC_CREATE_REQUIRED_ONLY); - - radioButton[1] = new Button(group, SWT.RADIO); - radioButton[1].setText(XMLWizardsMessages.getString("_UI_WIZARD_CREATE_OPTIONAL")); - radioButton[1].setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); - WorkbenchHelp.setHelp(radioButton[1], XMLBuilderContextIds.XMLC_CREATE_REQUIRED_AND_OPTION); -*/ - } - - // add the grammar specific generation options - // - { - pageBook = new PageBook(containerGroup, SWT.NONE); - pageBook.setLayoutData(new GridData(GridData.FILL_BOTH)); - xsdOptionsPanel = new XSDOptionsPanel(this, pageBook); - dtdOptionsPanel = new DTDOptionsPanel(this, pageBook); - pageBook.showPage(xsdOptionsPanel); - } - } - - public void widgetSelected(SelectionEvent event) - { - int index = combo.getSelectionIndex(); - String rootElementName = (index != -1) ? combo.getItem(index) : null; - generator.setRootElementName(rootElementName); - } - - public void widgetDefaultSelected(SelectionEvent event) - { - // do nothing - } - - public void setVisible(boolean visible) - { - super.setVisible(visible); - - if (visible) - { - try - { - if (generator.getGrammarURI() == null) - { - generator.setGrammarURI(selectGrammarFilePage.getURI()); - generator.setXMLCatalogEntry(selectGrammarFilePage.getXMLCatalogEntry()); - } - Assert.isNotNull(generator.getGrammarURI()); - - if (generator.getCMDocument() == null) - { - final String[] errorInfo = new String[2]; - final CMDocument[] cmdocs = new CMDocument[1]; - Runnable r = new Runnable() - { - public void run() - { - cmdocs[0] = NewXMLGenerator.createCMDocument(generator.getGrammarURI(), errorInfo); - } - }; - org.eclipse.swt.custom.BusyIndicator.showWhile(Display.getCurrent(),r); - - generator.setCMDocument(cmdocs[0]); - cmDocumentErrorMessage = errorInfo[1]; - } - - if (generator.getCMDocument() != null && cmDocumentErrorMessage == null) - { - CMNamedNodeMap nameNodeMap = generator.getCMDocument().getElements(); - Vector nameNodeVector = new Vector(); - - for (int i = 0; i < nameNodeMap.getLength(); i++) - { - CMElementDeclaration cmElementDeclaration = (CMElementDeclaration)nameNodeMap.item(i); - Object value = cmElementDeclaration.getProperty("Abstract"); //$NON-NLS-1$ - if (value != Boolean.TRUE) - { - nameNodeVector.add(cmElementDeclaration.getElementName()); - } - } - - Object[] nameNodeArray = nameNodeVector.toArray(); - if (nameNodeArray.length > 0 ) - { - Arrays.sort(nameNodeArray, Collator.getInstance()); - } - - String defaultRootName = (String) (generator.getCMDocument()).getProperty("http://org.eclipse.wst/cm/properties/defaultRootName"); //$NON-NLS-1$ - int defaultRootIndex = -1; - combo.removeAll(); - - - for (int i = 0; i < nameNodeArray.length; i++) - { - String elementName = (String)nameNodeArray[i]; - - combo.add(elementName); - if (defaultRootName != null && defaultRootName.equals(elementName)) - { - defaultRootIndex = i; - } - } - - if (nameNodeArray.length > 0) - { - defaultRootIndex = defaultRootIndex != -1 ? defaultRootIndex : 0; - combo.select(defaultRootIndex); - generator.setRootElementName(combo.getItem(defaultRootIndex)); - } - } - - if (generator.getGrammarURI().endsWith("xsd")) //$NON-NLS-1$ - { - pageBook.showPage(xsdOptionsPanel); - generator.setDefaultSystemId(getDefaultSystemId()); - generator.createNamespaceInfoList(); - - // Provide default namespace prefix if none - for (int i=0; i<generator.namespaceInfoList.size(); i++) - { - NamespaceInfo nsinfo = - (NamespaceInfo)generator.namespaceInfoList.get(i); - if ((nsinfo.prefix == null || nsinfo.prefix.trim().length() == 0) - && (nsinfo.uri != null && nsinfo.uri.trim().length() != 0)) - { - nsinfo.prefix = getDefaultPrefix(generator.namespaceInfoList); - } - } - xsdOptionsPanel.setNamespaceInfoList(generator.namespaceInfoList); - } - else if (generator.getGrammarURI().endsWith("dtd")) //$NON-NLS-1$ - { - pageBook.showPage(dtdOptionsPanel); - dtdOptionsPanel.update(); - } - } - catch(Exception e) - { - //XMLBuilderPlugin.getPlugin().getMsgLogger().writeCurrentThread(); - } - - /* - String errorMessage = computeErrorMessage(); - if (errorMessage == null) - super.setVisible(visible); - */ - - updateErrorMessage(); - } - } - - private String getDefaultPrefix(List nsInfoList) - { - String defaultPrefix = "p"; //$NON-NLS-1$ - if (nsInfoList == null) - return defaultPrefix; - - Vector v = new Vector(); - for (int i=0; i<nsInfoList.size(); i++) - { - NamespaceInfo nsinfo = (NamespaceInfo)nsInfoList.get(i); - if (nsinfo.prefix != null) - v.addElement(nsinfo.prefix); - } - - if (v.contains(defaultPrefix)) - { - String s = defaultPrefix; - for (int j=0; v.contains(s); j++) - { - s = defaultPrefix + Integer.toString(j); - } - return s; - } - return defaultPrefix; - } - - public boolean isPageComplete() - { - boolean complete = (generator.getRootElementName() != null && generator.getRootElementName().length() > 0) && getErrorMessage() == null; - - if (complete) { - /* - int buildPolicy = radioButton[0].getSelection() ? - DOMContentBuilder.BUILD_ONLY_REQUIRED_CONTENT : - DOMContentBuilder.BUILD_ALL_CONTENT; - */ - int buildPolicy = 0; - if (radioButton[0].getSelection()) - buildPolicy = buildPolicy | DOMContentBuilder.BUILD_OPTIONAL_ATTRIBUTES; - if (radioButton[1].getSelection()) - buildPolicy = buildPolicy | DOMContentBuilder.BUILD_OPTIONAL_ELEMENTS; - if (radioButton[2].getSelection()) - buildPolicy = buildPolicy | DOMContentBuilder.BUILD_FIRST_CHOICE | DOMContentBuilder.BUILD_FIRST_SUBSTITUTION; - if (radioButton[3].getSelection()) - buildPolicy = buildPolicy | DOMContentBuilder.BUILD_TEXT_NODES; - - generator.setBuildPolicy(buildPolicy); - } - - return complete; - } - - public String computeErrorMessage() - { - String errorMessage = null; - - if (cmDocumentErrorMessage != null) - { - errorMessage = cmDocumentErrorMessage; - } - else if (generator.getRootElementName() == null || generator.getRootElementName().length() == 0) - { - errorMessage = XMLWizardsMessages._ERROR_ROOT_ELEMENT_MUST_BE_SPECIFIED; - } - - return errorMessage; - } - - - public void updateErrorMessage() - { - String errorMessage = computeErrorMessage(); - if (errorMessage == null) - { - if (xsdOptionsPanel.isVisible()) - { - - errorMessage = xsdOptionsPanel.computeErrorMessage(); - } - else if (dtdOptionsPanel.isVisible()) - { - errorMessage = dtdOptionsPanel.computeErrorMessage(); - } - } - setErrorMessage(errorMessage); - setPageComplete(isPageComplete()); - } - } - ////////////////End SelectRootElementPage - - - - public static GridLayout createOptionsPanelLayout() - { - GridLayout gridLayout = new GridLayout(); - gridLayout.marginWidth = 0; - gridLayout.horizontalSpacing = 0; - return gridLayout; - } - - - - /** - * - */ - class XSDOptionsPanel extends Composite - { - protected String errorMessage = null; - protected SelectRootElementPage parentPage; - protected CommonEditNamespacesDialog editNamespaces; - - public XSDOptionsPanel(SelectRootElementPage parentPage, Composite parent) - { - super(parent, SWT.NONE); - this.parentPage = parentPage; - - setLayout(createOptionsPanelLayout()); - setLayoutData(new GridData(GridData.FILL_BOTH)); - - Composite co = new Composite(this, SWT.NONE); - co.setLayout(new GridLayout()); - - if (newFilePage != null && newFilePage.getContainerFullPath() != null) - { - // todo... this is a nasty mess. I need to revist this code. - // - String resourceURI = "platform:/resource" + newFilePage.getContainerFullPath().toString() + "/dummy"; //$NON-NLS-1$ //$NON-NLS-2$ - String resolvedPath = URIHelper.normalize(resourceURI, null, null); - if (resolvedPath.startsWith("file:/")) //$NON-NLS-1$ - { - resolvedPath = resolvedPath.substring(6); - } - // end nasty messs - String tableTitle = XMLWizardsMessages._UI_LABEL_NAMESPACE_INFORMATION; - editNamespaces = new CommonEditNamespacesDialog(co, new Path(resolvedPath), tableTitle, true, true); - } - } - - public void setNamespaceInfoList(List list) - { - editNamespaces.setNamespaceInfoList(list); - editNamespaces.updateErrorMessage(list); - } - - public void updateErrorMessage(List namespaceInfoList) - { - NamespaceInfoErrorHelper helper = new NamespaceInfoErrorHelper(); - errorMessage = helper.computeErrorMessage(namespaceInfoList, null); - parentPage.updateErrorMessage(); - } - - - public String computeErrorMessage() - { - return errorMessage; - } - } - - - /** - * - */ - public class DTDOptionsPanel extends Composite implements ModifyListener - { - protected Group group; - protected Text systemIdField; - protected Text publicIdField; - protected SelectRootElementPage parentPage; - - public DTDOptionsPanel(SelectRootElementPage parentPage, Composite parent) - { - super(parent, SWT.NONE); - this.parentPage = parentPage; - setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); - - setLayout(createOptionsPanelLayout()); - Group group = new Group(this, SWT.NONE); - group.setText(XMLWizardsMessages._UI_LABEL_DOCTYPE_INFORMATION); - //WorkbenchHelp.setHelp(group, XMLBuilderContextIds.XMLC_DOCUMENTATION_GROUP); - - GridLayout layout = new GridLayout(); - layout.numColumns = 2; - group.setLayout(layout); - group.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); - - Label publicIdLabel = new Label(group, SWT.NONE); - publicIdLabel.setText(XMLWizardsMessages._UI_LABEL_PUBLIC_ID); - publicIdField = new Text(group, SWT.SINGLE | SWT.BORDER); - publicIdField.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); - publicIdField.addModifyListener(this); - //WorkbenchHelp.setHelp(publicIdField, XMLBuilderContextIds.XMLC_PUBLIC); - - Label systemIdLabel = new Label(group, SWT.NONE); - systemIdLabel.setText(XMLWizardsMessages._UI_LABEL_SYSTEM_ID); - systemIdField = new Text(group, SWT.SINGLE | SWT.BORDER); - systemIdField.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); - systemIdField.addModifyListener(this); - //WorkbenchHelp.setHelp(systemIdField, XMLBuilderContextIds.XMLC_SYSTEM); - } - - public void update() - { - String thePublicId = null; - String theSystemId = null; - ICatalogEntry xmlCatalogEntry = generator.getXMLCatalogEntry(); - - if (xmlCatalogEntry != null) - { - if (xmlCatalogEntry.getEntryType() == ICatalogEntry.ENTRY_TYPE_PUBLIC) - { - thePublicId = xmlCatalogEntry.getKey(); - theSystemId = xmlCatalogEntry.getAttributeValue(ICatalogEntry.ATTR_WEB_URL); - if (theSystemId == null) - { - theSystemId = generator.getGrammarURI().startsWith("http:") ? generator.getGrammarURI() : URIHelper.getLastSegment(generator.getGrammarURI()); //$NON-NLS-1$ - } - } - else - { - theSystemId = xmlCatalogEntry.getKey(); - } - } - else - { - theSystemId = getDefaultSystemId(); - } - - publicIdField.setText(thePublicId != null ? thePublicId : ""); //$NON-NLS-1$ - systemIdField.setText(theSystemId != null ? theSystemId : ""); //$NON-NLS-1$ - } - - public void modifyText(ModifyEvent e) - { - generator.setSystemId(systemIdField.getText()); - generator.setPublicId(publicIdField.getText()); - parentPage.updateErrorMessage(); - } - - public String computeErrorMessage() - { - return null; - } - } } diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/actions/CleanupDialogXML.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/actions/CleanupDialogXML.java index 3df538010d..3e170a044e 100644 --- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/actions/CleanupDialogXML.java +++ b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/actions/CleanupDialogXML.java @@ -22,7 +22,7 @@ import org.eclipse.swt.widgets.Button; import org.eclipse.swt.widgets.Composite; import org.eclipse.swt.widgets.Control; import org.eclipse.swt.widgets.Shell; -import org.eclipse.ui.help.WorkbenchHelp; +import org.eclipse.ui.PlatformUI; import org.eclipse.wst.sse.core.internal.encoding.CommonEncodingPreferenceNames; import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel; import org.eclipse.wst.xml.core.internal.XMLCorePlugin; @@ -66,7 +66,7 @@ public class CleanupDialogXML extends Dialog implements SelectionListener { protected void createDialogAreaInComposite(Composite composite) { - WorkbenchHelp.setHelp(composite, IHelpContextIds.CLEANUP_XML_HELPID); // use + PlatformUI.getWorkbench().getHelpSystem().setHelp(composite, IHelpContextIds.CLEANUP_XML_HELPID); // use // XML // specific // help diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/dialogs/EditAttributeDialog.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/dialogs/EditAttributeDialog.java index 5d0b4b3006..bb44a528c1 100644 --- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/dialogs/EditAttributeDialog.java +++ b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/dialogs/EditAttributeDialog.java @@ -26,7 +26,7 @@ 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.help.WorkbenchHelp; +import org.eclipse.ui.PlatformUI; import org.eclipse.wst.xml.ui.internal.XMLUIMessages; import org.eclipse.wst.xml.ui.internal.util.XMLCommonUIContextIds; import org.w3c.dom.Attr; @@ -73,7 +73,7 @@ public class EditAttributeDialog extends Dialog implements ModifyListener { protected Control createDialogArea(Composite parent) { Composite dialogArea = (Composite) super.createDialogArea(parent); - WorkbenchHelp.setHelp(dialogArea, XMLCommonUIContextIds.XCUI_ATTRIBUTE_DIALOG); + PlatformUI.getWorkbench().getHelpSystem().setHelp(dialogArea, XMLCommonUIContextIds.XCUI_ATTRIBUTE_DIALOG); Composite composite = new Composite(dialogArea, SWT.NONE); GridLayout layout = new GridLayout(); diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/dialogs/EditDoctypeDialog.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/dialogs/EditDoctypeDialog.java index 51305e7819..3f67ed5c2e 100644 --- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/dialogs/EditDoctypeDialog.java +++ b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/dialogs/EditDoctypeDialog.java @@ -30,7 +30,7 @@ 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.help.WorkbenchHelp; +import org.eclipse.ui.PlatformUI; import org.eclipse.wst.xml.ui.internal.XMLUIMessages; import org.eclipse.wst.xml.ui.internal.util.XMLCommonUIContextIds; import org.w3c.dom.DocumentType; @@ -82,7 +82,7 @@ public class EditDoctypeDialog extends Dialog { protected Control createDialogArea(Composite parent) { Composite dialogControl = (Composite) super.createDialogArea(parent); - WorkbenchHelp.setHelp(dialogControl, XMLCommonUIContextIds.XCUI_DOCTYPE_DIALOG); + PlatformUI.getWorkbench().getHelpSystem().setHelp(dialogControl, XMLCommonUIContextIds.XCUI_DOCTYPE_DIALOG); Composite composite = new Composite(dialogControl, SWT.NONE); GridLayout layout = new GridLayout(); @@ -107,7 +107,7 @@ public class EditDoctypeDialog extends Dialog { rootElementNameLabel.setText(XMLUIMessages._UI_LABEL_ROOT_ELEMENT_NAME_COLON); //$NON-NLS-1$ rootElementNameField = new Text(composite, SWT.SINGLE | SWT.BORDER); - WorkbenchHelp.setHelp(rootElementNameField, XMLCommonUIContextIds.XCUI_DOCTYPE_ROOT); + PlatformUI.getWorkbench().getHelpSystem().setHelp(rootElementNameField, XMLCommonUIContextIds.XCUI_DOCTYPE_ROOT); GridData gd = new GridData(GridData.FILL_HORIZONTAL); gd.widthHint = 200; rootElementNameField.setLayoutData(gd); @@ -123,7 +123,7 @@ public class EditDoctypeDialog extends Dialog { publicIdLabel.setText(XMLUIMessages._UI_LABEL_PUBLIC_ID_COLON); //$NON-NLS-1$ publicIdField = new Text(composite, SWT.SINGLE | SWT.BORDER); - WorkbenchHelp.setHelp(publicIdField, XMLCommonUIContextIds.XCUI_DOCTYPE_PUBLIC); + PlatformUI.getWorkbench().getHelpSystem().setHelp(publicIdField, XMLCommonUIContextIds.XCUI_DOCTYPE_PUBLIC); publicIdField.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); publicIdField.setText(getDisplayValue(doctypeData[1])); @@ -132,14 +132,14 @@ public class EditDoctypeDialog extends Dialog { EditEntityHelper helper = new EditEntityHelper(); if (e.widget == publicIdBrowseButton) { helper.performBrowseForPublicId(getShell(), publicIdField, computeSystemId ? systemIdField : null); - } else if (e.widget == systemIdBrowseButton) { + } + else if (e.widget == systemIdBrowseButton) { helper.performBrowseForSystemId(getShell(), systemIdField, resourceLocation); } } }; publicIdBrowseButton = new Button(composite, SWT.NONE); - WorkbenchHelp.setHelp(publicIdBrowseButton, XMLCommonUIContextIds.XCUI_DOCTYPE_PUBLIC_BROWSE); publicIdBrowseButton.setText(XMLUIMessages._UI_LABEL_BROWSE); //$NON-NLS-1$ publicIdBrowseButton.addSelectionListener(selectionListener); @@ -148,14 +148,13 @@ public class EditDoctypeDialog extends Dialog { systemIdLabel.setText(XMLUIMessages._UI_LABEL_SYSTEM_ID_COLON); //$NON-NLS-1$ systemIdField = new Text(composite, SWT.SINGLE | SWT.BORDER); - WorkbenchHelp.setHelp(systemIdField, XMLCommonUIContextIds.XCUI_DOCTYPE_SYSTEM); + PlatformUI.getWorkbench().getHelpSystem().setHelp(systemIdField, XMLCommonUIContextIds.XCUI_DOCTYPE_SYSTEM); systemIdField.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); systemIdField.setText(getDisplayValue(doctypeData[2])); systemIdField.addModifyListener(modifyListener); systemIdBrowseButton = new Button(composite, SWT.NONE); - WorkbenchHelp.setHelp(systemIdBrowseButton, XMLCommonUIContextIds.XCUI_DOCTYPE_SYSTEM_BROWSE); systemIdBrowseButton.setText(XMLUIMessages._UI_LABEL_BROWSE); //$NON-NLS-1$ systemIdBrowseButton.addSelectionListener(selectionListener); @@ -172,7 +171,7 @@ public class EditDoctypeDialog extends Dialog { protected Label createMessageArea(Composite composite) { Label label = new Label(composite, SWT.NONE); - //label.setText(message); + // label.setText(message); return label; } @@ -223,7 +222,8 @@ public class EditDoctypeDialog extends Dialog { String errorMessage = null; if (getModelValue(systemIdField.getText()) == null) { errorMessage = XMLUIMessages._UI_WARNING_SYSTEM_ID_MUST_BE_SPECIFIED; //$NON-NLS-1$ - } else if (getModelValue(rootElementNameField.getText()) == null) { + } + else if (getModelValue(rootElementNameField.getText()) == null) { errorMessage = XMLUIMessages._UI_WARNING_ROOT_ELEMENT_MUST_BE_SPECIFIED; //$NON-NLS-1$ } @@ -232,6 +232,3 @@ public class EditDoctypeDialog extends Dialog { } } } - - - diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/dialogs/EditElementDialog.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/dialogs/EditElementDialog.java index 7a9987b9ee..4e6098aea5 100644 --- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/dialogs/EditElementDialog.java +++ b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/dialogs/EditElementDialog.java @@ -26,7 +26,7 @@ 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.help.WorkbenchHelp; +import org.eclipse.ui.PlatformUI; import org.eclipse.wst.xml.core.internal.provisional.NameValidator; import org.eclipse.wst.xml.ui.internal.XMLUIMessages; import org.eclipse.wst.xml.ui.internal.util.XMLCommonUIContextIds; @@ -69,7 +69,7 @@ public class EditElementDialog extends Dialog implements ModifyListener { protected Control createDialogArea(Composite parent) { Composite dialogArea = (Composite) super.createDialogArea(parent); - WorkbenchHelp.setHelp(dialogArea, XMLCommonUIContextIds.XCUI_ELEMENT_DIALOG); + PlatformUI.getWorkbench().getHelpSystem().setHelp(dialogArea, XMLCommonUIContextIds.XCUI_ELEMENT_DIALOG); Composite composite = new Composite(dialogArea, SWT.NONE); GridLayout layout = new GridLayout(); 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 index d80ff19d73..ecdb3c78fc 100644 --- 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 @@ -34,6 +34,7 @@ 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; @@ -41,6 +42,7 @@ 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 { @@ -94,9 +96,7 @@ public class EditNamespaceInfoDialog extends Dialog { protected Control createDialogArea(Composite parent) { Composite dialogsubArea = (Composite) super.createDialogArea(parent); - // TODO... SSE port - // WorkbenchHelp.setHelp(dialogArea, - // XMLCommonUIContextIds.XCUI_NAMESPACE_DIALOG); + PlatformUI.getWorkbench().getHelpSystem().setHelp(dialogArea, XMLCommonUIContextIds.XCUI_NAMESPACE_DIALOG); Composite composite = new Composite(dialogsubArea, SWT.NONE); GridLayout layout = new GridLayout(); diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/dialogs/EditProcessingInstructionDialog.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/dialogs/EditProcessingInstructionDialog.java index 0ded7e868e..4b3fe667ae 100644 --- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/dialogs/EditProcessingInstructionDialog.java +++ b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/dialogs/EditProcessingInstructionDialog.java @@ -22,7 +22,7 @@ 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.help.WorkbenchHelp; +import org.eclipse.ui.PlatformUI; import org.eclipse.wst.xml.ui.internal.XMLUIMessages; import org.eclipse.wst.xml.ui.internal.util.XMLCommonUIContextIds; import org.w3c.dom.ProcessingInstruction; @@ -57,7 +57,7 @@ public class EditProcessingInstructionDialog extends Dialog { protected Control createDialogArea(Composite parent) { Composite dialogArea1 = (Composite) super.createDialogArea(parent); - WorkbenchHelp.setHelp(dialogArea1, XMLCommonUIContextIds.XCUI_PROCESSING_DIALOG); + PlatformUI.getWorkbench().getHelpSystem().setHelp(dialogArea1, XMLCommonUIContextIds.XCUI_PROCESSING_DIALOG); Composite composite = new Composite(dialogArea1, SWT.NONE); GridLayout layout = new GridLayout(); diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/dialogs/EditSchemaInfoDialog.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/dialogs/EditSchemaInfoDialog.java index 7653f8d591..01aefdc735 100644 --- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/dialogs/EditSchemaInfoDialog.java +++ b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/dialogs/EditSchemaInfoDialog.java @@ -22,8 +22,10 @@ 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.ui.PlatformUI; import org.eclipse.wst.xml.ui.internal.XMLUIMessages; import org.eclipse.wst.xml.ui.internal.nsedit.CommonEditNamespacesDialog; +import org.eclipse.wst.xml.ui.internal.util.XMLCommonUIContextIds; public class EditSchemaInfoDialog extends Dialog implements UpdateListener { // protected NamespaceInfoTable namespaceInfoTable; @@ -44,6 +46,8 @@ public class EditSchemaInfoDialog extends Dialog implements UpdateListener { protected Control createDialogArea(Composite parent) { Composite dialogArea = (Composite) super.createDialogArea(parent); + PlatformUI.getWorkbench().getHelpSystem().setHelp(dialogArea, XMLCommonUIContextIds.XCUI_SCHEMA_INFO_DIALOG); + CommonEditNamespacesDialog editNamespacesControl = new CommonEditNamespacesDialog(dialogArea, resourceLocation, XMLUIMessages._UI_NAMESPACE_DECLARATIONS, false, true); //$NON-NLS-1$ editNamespacesControl.setNamespaceInfoList(namespaceInfoList); diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/dialogs/SelectXMLCatalogIdDialog.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/dialogs/SelectXMLCatalogIdDialog.java index e07f403136..9bea443c7a 100644 --- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/dialogs/SelectXMLCatalogIdDialog.java +++ b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/dialogs/SelectXMLCatalogIdDialog.java @@ -25,9 +25,11 @@ import org.eclipse.swt.widgets.Button; import org.eclipse.swt.widgets.Composite; import org.eclipse.swt.widgets.Control; import org.eclipse.swt.widgets.Shell; +import org.eclipse.ui.PlatformUI; import org.eclipse.wst.xml.core.internal.XMLCorePlugin; import org.eclipse.wst.xml.core.internal.catalog.provisional.ICatalog; import org.eclipse.wst.xml.core.internal.catalog.provisional.ICatalogEntry; +import org.eclipse.wst.xml.ui.internal.util.XMLCommonUIContextIds; @@ -78,9 +80,7 @@ public class SelectXMLCatalogIdDialog extends Dialog { protected Control createDialogArea(Composite parent) { Composite dialogArea = (Composite) super.createDialogArea(parent); - // TODO... SSE port - //WorkbenchHelp.setHelp(dialogArea, - // XMLCommonUIContextIds.XCUI_CATALOG_DIALOG); + PlatformUI.getWorkbench().getHelpSystem().setHelp(dialogArea, XMLCommonUIContextIds.XCUI_CATALOG_DIALOG); ICatalog xmlCatalog = XMLCorePlugin.getDefault().getDefaultXMLCatalog(); panel = new SelectXMLCatalogIdPanel(dialogArea, xmlCatalog); diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/editor/IHelpContextIds.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/editor/IHelpContextIds.java index 459cddea58..9fbec68f0d 100644 --- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/editor/IHelpContextIds.java +++ b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/editor/IHelpContextIds.java @@ -12,7 +12,6 @@ *******************************************************************************/ package org.eclipse.wst.xml.ui.internal.editor; -import org.eclipse.wst.xml.core.internal.provisional.contenttype.ContentTypeIdForXML; import org.eclipse.wst.xml.ui.internal.XMLUIPlugin; /** @@ -21,14 +20,16 @@ import org.eclipse.wst.xml.ui.internal.XMLUIPlugin; * This interface contains constants only; it is not intended to be * implemented. * </p> - * + * */ public interface IHelpContextIds { // org.eclipse.wst.xml.ui. public static final String PREFIX = XMLUIPlugin.ID + "."; //$NON-NLS-1$ - // XML Source page editor - public static final String XML_SOURCEVIEW_HELPID = ContentTypeIdForXML.ContentTypeID_XML +"_source_HelpId"; //$NON-NLS-1$ + // figured out on the fly + // // XML Source page editor + // public static final String XML_SOURCEVIEW_HELPID = + // ContentTypeIdForXML.ContentTypeID_XML +"_source_HelpId"; //$NON-NLS-1$ // XML Files Preference page public static final String XML_PREFWEBX_FILES_HELPID = PREFIX + "webx0060"; //$NON-NLS-1$ diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/preferences/XMLColorPage.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/preferences/XMLColorPage.java index 71a1f0e5ba..3343b01023 100644 --- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/preferences/XMLColorPage.java +++ b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/preferences/XMLColorPage.java @@ -21,7 +21,7 @@ import org.eclipse.jface.preference.IPreferenceStore; import org.eclipse.swt.layout.GridData; import org.eclipse.swt.widgets.Composite; import org.eclipse.swt.widgets.Control; -import org.eclipse.ui.help.WorkbenchHelp; +import org.eclipse.ui.PlatformUI; import org.eclipse.wst.sse.core.internal.provisional.IModelManager; import org.eclipse.wst.sse.core.internal.provisional.StructuredModelManager; import org.eclipse.wst.sse.ui.internal.SSEUIPlugin; @@ -43,7 +43,7 @@ public class XMLColorPage extends AbstractColorPage { ((GridData) pageComponent.getLayoutData()).horizontalAlignment = GridData.HORIZONTAL_ALIGN_FILL; super.createContents(pageComponent); - WorkbenchHelp.setHelp(pageComponent, IHelpContextIds.XML_PREFWEBX_STYLES_HELPID); + PlatformUI.getWorkbench().getHelpSystem().setHelp(pageComponent, IHelpContextIds.XML_PREFWEBX_STYLES_HELPID); return pageComponent; } diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/preferences/XMLFilesPreferencePage.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/preferences/XMLFilesPreferencePage.java index 330d9e7215..334021991f 100644 --- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/preferences/XMLFilesPreferencePage.java +++ b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/preferences/XMLFilesPreferencePage.java @@ -21,7 +21,7 @@ import org.eclipse.swt.widgets.Composite; import org.eclipse.swt.widgets.Control; import org.eclipse.swt.widgets.Group; import org.eclipse.swt.widgets.Label; -import org.eclipse.ui.help.WorkbenchHelp; +import org.eclipse.ui.PlatformUI; import org.eclipse.wst.sse.core.internal.encoding.CommonEncodingPreferenceNames; import org.eclipse.wst.sse.ui.internal.preferences.ui.AbstractPreferencePage; import org.eclipse.wst.xml.core.internal.XMLCorePlugin; @@ -36,7 +36,7 @@ public class XMLFilesPreferencePage extends AbstractPreferencePage { protected Control createContents(Composite parent) { Composite composite = (Composite) super.createContents(parent); - WorkbenchHelp.setHelp(composite, IHelpContextIds.XML_PREFWEBX_FILES_HELPID); + PlatformUI.getWorkbench().getHelpSystem().setHelp(composite, IHelpContextIds.XML_PREFWEBX_FILES_HELPID); createContentsForCreatingOrSavingGroup(composite); createContentsForCreatingGroup(composite); diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/preferences/XMLTemplatePreferencePage.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/preferences/XMLTemplatePreferencePage.java index f0edb6b1c2..fbc1cf3727 100644 --- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/preferences/XMLTemplatePreferencePage.java +++ b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/preferences/XMLTemplatePreferencePage.java @@ -14,7 +14,7 @@ package org.eclipse.wst.xml.ui.internal.preferences; import org.eclipse.swt.widgets.Composite; import org.eclipse.swt.widgets.Control; -import org.eclipse.ui.help.WorkbenchHelp; +import org.eclipse.ui.PlatformUI; import org.eclipse.ui.texteditor.templates.TemplatePreferencePage; import org.eclipse.wst.xml.ui.internal.XMLUIPlugin; import org.eclipse.wst.xml.ui.internal.editor.IHelpContextIds; @@ -40,7 +40,7 @@ public class XMLTemplatePreferencePage extends TemplatePreferencePage { */ protected Control createContents(Composite ancestor) { Control c = super.createContents(ancestor); - WorkbenchHelp.setHelp(c, IHelpContextIds.XML_PREFWEBX_TEMPLATES_HELPID); + PlatformUI.getWorkbench().getHelpSystem().setHelp(c, IHelpContextIds.XML_PREFWEBX_TEMPLATES_HELPID); return c; } diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/util/XMLCommonUIContextIds.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/util/XMLCommonUIContextIds.java index 2e5cdf83f8..832cfca3d5 100644 --- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/util/XMLCommonUIContextIds.java +++ b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/util/XMLCommonUIContextIds.java @@ -20,15 +20,6 @@ package org.eclipse.wst.xml.ui.internal.util; public interface XMLCommonUIContextIds { public static final String PLUGIN_NAME = "org.eclipse.wst.xml.ui"; //$NON-NLS-1$ - - /* CONTEXT_IDs for "Assign an XSL Stylesheet To The XML File" dialog */ - /* CONTEXT_ID comn0010 for the dropdown menu. Follow comnxxxx */ - public static final String XCUI_ASSIGN_XSL_TO_XML_DROPDOWN = PLUGIN_NAME + ".xcui1000"; //$NON-NLS-1$ - /* CONTEXT_ID comn0030 for the import button. Follow comnxxxx */ - public static final String XCUI_ASSIGN_XSL_TO_XML_IMPORT = PLUGIN_NAME + ".xcui3000"; //$NON-NLS-1$ - /* CONTEXT_ID comn0020 for the workbench button. Follow comnxxxx */ - public static final String XCUI_ASSIGN_XSL_TO_XML_WORKBENCH = PLUGIN_NAME + ".xcui2000"; //$NON-NLS-1$ - /* CONTEXT_ID xcui0500 for Edit Attribute Instruction Dialog */ public static final String XCUI_ATTRIBUTE_DIALOG = PLUGIN_NAME + ".xcui0500"; //$NON-NLS-1$ @@ -41,14 +32,10 @@ public interface XMLCommonUIContextIds { public static final String XCUI_DOCTYPE_DIALOG = PLUGIN_NAME + ".xcui0010"; //$NON-NLS-1$ /* CONTEXT_ID xcui0030 for Public ID Text Edit */ public static final String XCUI_DOCTYPE_PUBLIC = PLUGIN_NAME + ".xcui0030"; //$NON-NLS-1$ - /* CONTEXT_ID xcui0030 for Public ID Browse Button */ - public static final String XCUI_DOCTYPE_PUBLIC_BROWSE = PLUGIN_NAME + ".xcui0040"; //$NON-NLS-1$ /* CONTEXT_ID xcui0020 for Root Element Name Text Edit */ public static final String XCUI_DOCTYPE_ROOT = PLUGIN_NAME + ".xcui0020"; //$NON-NLS-1$ /* CONTEXT_ID xcui0040 for System ID Text Edit */ public static final String XCUI_DOCTYPE_SYSTEM = PLUGIN_NAME + ".xcui0050"; //$NON-NLS-1$ - /* CONTEXT_ID xcui0030 for System ID Browse Button */ - public static final String XCUI_DOCTYPE_SYSTEM_BROWSE = PLUGIN_NAME + ".xcui0060"; //$NON-NLS-1$ /* CONTEXT_ID xcui0300 for Edit Element Instruction Dialog */ public static final String XCUI_ELEMENT_DIALOG = PLUGIN_NAME + ".xcui0600"; //$NON-NLS-1$ |