diff options
Diffstat (limited to 'jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors')
76 files changed, 0 insertions, 12073 deletions
diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/AbstractPropertySheetPageFactory.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/AbstractPropertySheetPageFactory.java deleted file mode 100644 index 849acb55c..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/AbstractPropertySheetPageFactory.java +++ /dev/null @@ -1,32 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2001, 2009 Oracle 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: - * Oracle Corporation - initial API and implementation - *******************************************************************************/ - -package org.eclipse.jst.pagedesigner.editors; - -import org.eclipse.core.resources.IFile; -import org.eclipse.ui.views.properties.IPropertySheetPage; - -/** - * Abstract class that should be extended to provide a property sheet page - * factory. - * - * @author cbateman - * - */ -public abstract class AbstractPropertySheetPageFactory implements - IPropertySheetPageFactory -{ - - /* (non-Javadoc) - * @see org.eclipse.jst.pagedesigner.editors.IPropertySheetPageFactory#createPage(org.eclipse.core.resources.IFile) - */ - public abstract IPropertySheetPage createPage(IFile file); -} diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/DesignerStructuredTextEditorJSP.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/DesignerStructuredTextEditorJSP.java deleted file mode 100644 index 369fd4eea..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/DesignerStructuredTextEditorJSP.java +++ /dev/null @@ -1,180 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2006 Sybase, Inc. 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: - * Sybase, Inc. - initial API and implementation - *******************************************************************************/ -package org.eclipse.jst.pagedesigner.editors; - -import org.eclipse.core.resources.IFile; -import org.eclipse.core.runtime.CoreException; -import org.eclipse.jface.action.IAction; -import org.eclipse.jface.text.IDocument; -import org.eclipse.jface.text.ITextViewer; -import org.eclipse.jst.pagedesigner.dnd.internal.DesignerSourceDropTargetListener; -import org.eclipse.jst.pagedesigner.utils.StructuredModelUtil; -import org.eclipse.swt.dnd.DND; -import org.eclipse.swt.dnd.DropTarget; -import org.eclipse.ui.IEditorInput; -import org.eclipse.ui.texteditor.IDocumentProvider; -import org.eclipse.ui.texteditor.ITextEditorDropTargetListener; -import org.eclipse.wst.sse.core.StructuredModelManager; -import org.eclipse.wst.sse.core.internal.provisional.IModelStateListener; -import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel; -import org.eclipse.wst.sse.ui.StructuredTextEditor; - -/** - * @author mengbo - */ -public class DesignerStructuredTextEditorJSP extends StructuredTextEditor -{ - private ITextEditorDropTargetListener _dropTargetListener; - private DropTarget _dropTarget; - private IStructuredModel _structuredModel; - private IModelStateListener _modelStateListener; - - @Override - protected void initializeDrop(final ITextViewer viewer) - { - int operations = DND.DROP_COPY | DND.DROP_MOVE; - _dropTarget = new DropTarget(viewer.getTextWidget(), operations); - _dropTargetListener = - new DesignerSourceDropTargetListener(this); - _dropTarget.setTransfer(_dropTargetListener.getTransfers()); - _dropTarget.addDropListener(_dropTargetListener); - } - - @Override - public IAction getAction(final String actionID) - { - try - { - return super.getAction(actionID); - } catch (final Exception e) - { - return null; - } - } - - @Override - public Object getAdapter(final Class required) - { - if (ITextEditorDropTargetListener.class.equals(required)) - { - final DesignerSourceDropTargetListener listener = new DesignerSourceDropTargetListener( - this); - return listener; - } - return super.getAdapter(required); - } - - /* (non-Javadoc) - * @see org.eclipse.wst.sse.ui.StructuredTextEditor#doSetInput(org.eclipse.ui.IEditorInput) - */ - @Override - protected void doSetInput(IEditorInput input) throws CoreException { - super.doSetInput(input); - addModelStateListener(); - } - - @Override - public void dispose() - { - if (_dropTargetListener != null) - { - _dropTargetListener = null; - } - if (_dropTarget != null) - { - _dropTarget.dispose(); - _dropTarget = null; - } - removeModelStateListener(); - if (_structuredModel != null) { - _structuredModel.releaseFromRead(); - _structuredModel = null; - } - super.dispose(); - } - - private IStructuredModel getStructuredModel() { - IStructuredModel model = null; - if (_structuredModel != null) { - model = _structuredModel; - } else { - IDocumentProvider provider = getDocumentProvider(); - if (provider != null) { - IDocument document = provider.getDocument(getEditorInput()); - _structuredModel = StructuredModelManager.getModelManager().getExistingModelForRead(document); - model = _structuredModel; - } - } - return model; - } - - private void addModelStateListener() { - IStructuredModel model = getStructuredModel(); - if (model != null) { - if (_modelStateListener == null) { - _modelStateListener = new ModelStateListener(); - } else { - model.removeModelStateListener(_modelStateListener); - } - model.addModelStateListener(_modelStateListener); - } - } - - private void removeModelStateListener() { - IStructuredModel model = getStructuredModel(); - if (model != null) { - if (_modelStateListener != null) { - model.removeModelStateListener(_modelStateListener); - _modelStateListener = null; - } - } - } - - private class ModelStateListener implements IModelStateListener { - - public void modelAboutToBeChanged(IStructuredModel model) { - //do nothing - } - - public void modelChanged(IStructuredModel model) { - //do nothing - } - - public void modelDirtyStateChanged(IStructuredModel model, boolean isDirty) { - //Bug 330412 - [WPE] Drag 'n' Drop of tag from palette doesn't notify team system of edit - //Bug 330413 - [WPE] Modifying tag attribute using property sheet doesn't notify team system of edit - if (isDirty) { - IFile file = StructuredModelUtil.getFileFor(model); - if (file != null) { - file.getWorkspace().validateEdit(new IFile[]{file}, null); - } - } - } - - public void modelResourceDeleted(IStructuredModel model) { - //do nothing - } - - public void modelResourceMoved(IStructuredModel oldModel, IStructuredModel newModel) { - //do nothing - } - - public void modelAboutToBeReinitialized(IStructuredModel structuredModel) { - //do nothing - } - - public void modelReinitialized(IStructuredModel structuredModel) { - //do nothing - } - } - -} diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/HTMLEditor.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/HTMLEditor.java deleted file mode 100644 index 2763d4b5b..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/HTMLEditor.java +++ /dev/null @@ -1,1156 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2006 Sybase, Inc. 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: - * Sybase, Inc. - initial API and implementation - *******************************************************************************/ -package org.eclipse.jst.pagedesigner.editors; - -import java.io.File; -import java.io.InputStream; -import java.util.ArrayList; -import java.util.Iterator; -import java.util.List; - -import org.eclipse.core.resources.IFile; -import org.eclipse.core.resources.IResource; -import org.eclipse.core.runtime.CoreException; -import org.eclipse.core.runtime.IConfigurationElement; -import org.eclipse.core.runtime.IExtension; -import org.eclipse.core.runtime.IExtensionPoint; -import org.eclipse.core.runtime.IProgressMonitor; -import org.eclipse.core.runtime.NullProgressMonitor; -import org.eclipse.core.runtime.Platform; -import org.eclipse.gef.DefaultEditDomain; -import org.eclipse.gef.EditPart; -import org.eclipse.gef.ui.views.palette.PalettePage; -import org.eclipse.gef.ui.views.palette.PaletteViewerPage; -import org.eclipse.jface.preference.IPreferenceStore; -import org.eclipse.jface.text.IDocument; -import org.eclipse.jface.text.TextSelection; -import org.eclipse.jface.viewers.IPostSelectionProvider; -import org.eclipse.jface.viewers.ISelectionChangedListener; -import org.eclipse.jface.viewers.ISelectionProvider; -import org.eclipse.jface.viewers.SelectionChangedEvent; -import org.eclipse.jst.jsf.common.ui.internal.logging.Logger; -import org.eclipse.jst.jsf.common.ui.internal.utils.ResourceUtils; -import org.eclipse.jst.pagedesigner.IJMTConstants; -import org.eclipse.jst.pagedesigner.PDPlugin; -import org.eclipse.jst.pagedesigner.dnd.internal.DesignerSourceMouseTrackAdapter; -import org.eclipse.jst.pagedesigner.editors.pagedesigner.PageDesignerResources; -import org.eclipse.jst.pagedesigner.jsp.core.pagevar.IPageVariablesProvider; -import org.eclipse.jst.pagedesigner.jsp.core.pagevar.adapter.IDocumentPageVariableAdapter; -import org.eclipse.jst.pagedesigner.parts.DocumentEditPart; -import org.eclipse.jst.pagedesigner.preview.PreviewHandlerNew; -import org.eclipse.jst.pagedesigner.preview.WindowsIEBrowser; -import org.eclipse.jst.pagedesigner.properties.WPETabbedPropertySheetPage; -import org.eclipse.jst.pagedesigner.tools.RangeSelectionTool; -import org.eclipse.jst.pagedesigner.ui.common.PartActivationHandler; -import org.eclipse.jst.pagedesigner.ui.common.sash.SashEditorPart; -import org.eclipse.jst.pagedesigner.ui.preferences.PDPreferences; -import org.eclipse.jst.pagedesigner.utils.EditorUtil; -import org.eclipse.jst.pagedesigner.utils.PreviewUtil; -import org.eclipse.swt.SWT; -import org.eclipse.swt.layout.FillLayout; -import org.eclipse.swt.widgets.Composite; -import org.eclipse.swt.widgets.Display; -import org.eclipse.ui.IEditorInput; -import org.eclipse.ui.IEditorPart; -import org.eclipse.ui.IEditorSite; -import org.eclipse.ui.IFileEditorInput; -import org.eclipse.ui.IPropertyListener; -import org.eclipse.ui.IStorageEditorInput; -import org.eclipse.ui.IWorkbench; -import org.eclipse.ui.IWorkbenchPart; -import org.eclipse.ui.IWorkbenchWindow; -import org.eclipse.ui.PartInitException; -import org.eclipse.ui.PlatformUI; -import org.eclipse.ui.contexts.IContextService; -import org.eclipse.ui.part.MultiPageEditorPart; -import org.eclipse.ui.part.MultiPageEditorSite; -import org.eclipse.ui.part.MultiPageSelectionProvider; -import org.eclipse.ui.views.contentoutline.IContentOutlinePage; -import org.eclipse.ui.views.properties.IPropertySheetPage; -import org.eclipse.ui.views.properties.tabbed.ITabbedPropertySheetPageContributor; -import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel; -import org.eclipse.wst.sse.ui.StructuredTextEditor; -import org.eclipse.wst.sse.ui.internal.provisional.extensions.ISourceEditingTextTools; -import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel; -import org.eclipse.wst.xml.ui.internal.provisional.IDOMSourceEditingTextTools; -import org.w3c.dom.Document; - -/** - * The HTMLEditor is a multi paged editor. It will use the StructuredTextEditor - * as the chief editor, and delegate most operations to it. - * - * @author mengbo - */ -public final class HTMLEditor extends MultiPageEditorPart implements - IPropertyListener, ITabbedPropertySheetPageContributor { - // private static final String PAGE_NAME_DESIGN = "Design"; //$NON-NLS-1$ - // private static final String PAGE_NAME_SOURCE = "Source"; //$NON-NLS-1$ - /** - * Tabbed property contributor id for WPE - */ - public final static String TABBED_PROPERTIES_CONTRIBUTOR_ID = "org.eclipse.jst.pagedesigner.tabPropertyContributor"; //$NON-NLS-1$ - - // four different modes for the designer when displayed in a sash editor. - /** - * editor split is vertical - */ - public static final int MODE_SASH_VERTICAL = 0; - - /** - * editor split is horizontal - */ - public static final int MODE_SASH_HORIZONTAL = 1; - - /** - * no split, only designer canvas - */ - public static final int MODE_DESIGNER = 2; - - /** - * no split, only SSE source - */ - public static final int MODE_SOURCE = 3; - - private Logger _log = PDPlugin.getLogger(HTMLEditor.class); - - private boolean _sash = true; - - private int _mode = 0; - - private SashEditorPart _sashEditorPart = null; - - private int _previewPageIndex; - - /** The design viewer */ - private SimpleGraphicalEditor _designViewer; - - /** The text editor. */ - private StructuredTextEditor _textEditor; - - private PartActivationHandler _partListener; - - private PaletteViewerPage _paletteViewerPage; - - private DefaultEditDomain _editDomain; - - private WindowsIEBrowser _browser; - - private Composite _previewComposite; - - private List PREVIEW_FILES_LIST = new ArrayList(); - - private IPropertySheetPage _tabbedPropSheet; - - private ISelectionChangedListener _selChangedListener; - - // TODO:This class is never used locally -// private class TextInputListener implements ITextInputListener { -// public void inputDocumentAboutToBeChanged(IDocument oldInput, -// IDocument newInput) { -// // do nothing -// } -// -// public void inputDocumentChanged(IDocument oldInput, IDocument newInput) { -// if (_designViewer != null && newInput != null) -// _designViewer.setModel(getModel()); -// } -// } - - /** - * Default constructor - */ - public HTMLEditor() { - super(); - } - - /* - * This method is just to make firePropertyChanged accessbible from some - * (anonomous) inner classes. - */ - private void _firePropertyChange(int property) { - super.firePropertyChange(property); - } - - /* - * (non-Javadoc) - * - * @see com.ibm.xtools.common.ui.properties.ITabbedPropertySheetPageContributor#getContributorId() - */ - public String getContributorId() { - return TABBED_PROPERTIES_CONTRIBUTOR_ID; - } - - private void connectSashPage() { - ISelectionProvider selectionProvider = _sashEditorPart.getSite() - .getSelectionProvider(); - if (selectionProvider instanceof IPostSelectionProvider) { - ((IPostSelectionProvider) selectionProvider) - .addPostSelectionChangedListener(getSelectionChangedListener(selectionProvider)); - } else { - selectionProvider - .addSelectionChangedListener(getSelectionChangedListener(selectionProvider)); - } - } - - private void disconnectSashPage() { - //attempted fix for bug 283569... was not able to repro, but should protect against NPE - if (_sashEditorPart != null - && _sashEditorPart.getSite() != null - && _sashEditorPart.getSite().getSelectionProvider() != null - && _selChangedListener != null) { - - final ISelectionProvider selectionProvider = _sashEditorPart.getSite() - .getSelectionProvider(); - if (selectionProvider != null) { - if (selectionProvider instanceof IPostSelectionProvider) { - ((IPostSelectionProvider) selectionProvider) - .removePostSelectionChangedListener(getSelectionChangedListener(selectionProvider)); - } else { - selectionProvider - .removeSelectionChangedListener(getSelectionChangedListener(selectionProvider)); - } - } - } - } - - private ISelectionChangedListener getSelectionChangedListener(ISelectionProvider selectionProvider) { - if (_selChangedListener == null) { - if (selectionProvider instanceof IPostSelectionProvider) { - _selChangedListener = new ISelectionChangedListener() { - public void selectionChanged(SelectionChangedEvent event) { - ((MultiPageSelectionProvider) getSite() - .getSelectionProvider()) - .firePostSelectionChanged(event); - } - }; - } - else { - _selChangedListener = new ISelectionChangedListener() { - public void selectionChanged(SelectionChangedEvent event) { - ((MultiPageSelectionProvider) getSite() - .getSelectionProvider()) - .firePostSelectionChanged(event); - } - }; - } - } - return _selChangedListener; - } - - /** - * Creates the source page of the multi-page editor. - * @throws PartInitException - */ - protected void sash_createAndAddDesignSourcePage() throws PartInitException { - // create source page - _textEditor = createTextEditor(); - _textEditor.setEditorPart(this); - _textEditor.addPropertyListener(this); - // create design page - _designViewer = new SimpleGraphicalEditor(this, getEditDomain()); - - // create SashEditor - _sashEditorPart = new SashEditorPart() { - protected void createPages() throws PartInitException { - addPage(_designViewer, getEditorInput()); - addPage(_textEditor, getEditorInput()); - } - }; - int sashIndex = addPage(_sashEditorPart, getEditorInput()); - - // Set the sash editor mode from the stored file property - // or the default preference - initDesignerMode(); - - setPageText(sashIndex, PDPlugin.getResourceString("HTMLEditor.Design")); //$NON-NLS-1$ - - // the update's critical, to get viewer selection manager and - // highlighting to work - _textEditor.update(); - - firePropertyChange(PROP_TITLE); - - // Changes to the Text Viewer's document instance should also force an - // input refresh - // _textEditor.getTextViewer().addTextInputListener(new - // TextInputListener()); - connectSashPage(); - } - - /** - * @see org.eclipse.ui.part.MultiPageEditorPart#createSite(org.eclipse.ui.IEditorPart) - */ - protected IEditorSite createSite(IEditorPart editor) { - return new MultiPageEditorSite(this, editor); - } - - private void tabbed_createAndAddDesignSourcePage() - throws PartInitException { - // create source page - _textEditor = createTextEditor(); - _textEditor.setEditorPart(this); - _textEditor.addPropertyListener(this); - - // create design page - SimpleGraphicalEditor editor = new SimpleGraphicalEditor(this, - getEditDomain()); - - // add design page - int designPageIndex = addPage(editor, null); - - _designViewer = editor; - // // note: By adding the design page as a Control instead of an - // // IEditorPart, page switches will indicate - // // a "null" active editor when the design page is made active - setPageText(designPageIndex, PDPlugin - .getResourceString("HTMLEditor.Design")); //$NON-NLS-1$ - - // add source page - int sourcePageIndex = addPage(_textEditor, getEditorInput()); - setPageText(sourcePageIndex, PDPlugin - .getResourceString("HTMLEditor.Source")); //$NON-NLS-1$ - // the update's critical, to get viewer selection manager and - // highlighting to work - _textEditor.update(); - - firePropertyChange(PROP_TITLE); - - // Changes to the Text Viewer's document instance should also force an - // input refresh - // _textEditor.getTextViewer().addTextInputListener(new - // TextInputListener()); - } - - private void createAndAddPreviewPage() { - _previewComposite = new Composite(getContainer(), 0); - FillLayout filllayout = new FillLayout(); - _previewComposite.setLayout(filllayout); - - _previewPageIndex = addPage(_previewComposite); - // JSPSourceEditor.Page.Preview.PageText=Preview - setPageText(_previewPageIndex, PageDesignerResources.getInstance() - .getString("JSPSourceEditor.Page.Preview.PageText")); //$NON-NLS-1$ - - } - - private WindowsIEBrowser getPreviewBrowser() { - if (_browser == null) { - _browser = new WindowsIEBrowser(); - if (_browser != null) { - _browser.create(_previewComposite, SWT.NONE); - _previewComposite.layout(); - } - } - return _browser; - } - /** - * Connects the design viewer with the viewer selection manager. Should be - * done after createSourcePage() is done because we need to get the - * ViewerSelectionManager from the TextEditor. setModel is also done here - * because getModel() needs to reference the TextEditor. - */ - protected void connectDesignPage() { - if (_designViewer != null) { - _designViewer.setModel(getModel()); - // _designViewer.getSynchronizer().listenToModel(getModel()); - ISelectionProvider designSelectionProvider = _designViewer - .getSite().getSelectionProvider(); - if (designSelectionProvider instanceof IPostSelectionProvider) { - ((IPostSelectionProvider) designSelectionProvider) - .addPostSelectionChangedListener(new ISelectionChangedListener() { - public void selectionChanged( - SelectionChangedEvent event) { - if (getActiveEditor() != _textEditor) { - _designViewer.getSynchronizer() - .selectionChanged(event); - } - } - }); - } else { - designSelectionProvider - .addSelectionChangedListener(new ISelectionChangedListener() { - public void selectionChanged( - SelectionChangedEvent event) { - if (getActiveEditor() != _textEditor) { - _designViewer.getSynchronizer() - .selectionChanged(event); - } - } - }); - } - ISelectionProvider textSelectionProvider = _textEditor.getSite() - .getSelectionProvider(); - if (textSelectionProvider instanceof IPostSelectionProvider) { - ((IPostSelectionProvider) textSelectionProvider) - .addPostSelectionChangedListener(new ISelectionChangedListener() { - public void selectionChanged( - SelectionChangedEvent event) { - if (event.getSelection() instanceof TextSelection) { - TextSelection textSelection = ((TextSelection) event - .getSelection()); - _designViewer - .getSynchronizer() - .textSelectionChanged( - textSelection.getOffset(), - textSelection.getOffset() - + textSelection - .getLength()); - } - } - }); - } else { - textSelectionProvider - .addSelectionChangedListener(new ISelectionChangedListener() { - public void selectionChanged( - SelectionChangedEvent event) { - TextSelection textSelection = ((TextSelection) event - .getSelection()); - _designViewer.getSynchronizer() - .textSelectionChanged( - textSelection.getOffset(), - textSelection.getOffset() - + textSelection - .getLength()); - } - }); - } - } - } - - /** - * Creates the pages of this multi-page editor. - * <p> - * Subclasses of <code>MultiPageEditor</code> must implement this method. - * </p> - */ - protected void createPages() { - try { - // source page MUST be created before design page, now - if (_sash) { - sash_createAndAddDesignSourcePage(); - } else { - tabbed_createAndAddDesignSourcePage(); - } - connectDesignPage(); - createAndAddPreviewPage(); - DesignerSourceMouseTrackAdapter adapter = new DesignerSourceMouseTrackAdapter( - _textEditor, getEditDomain()); - _textEditor.getTextViewer().getTextWidget().addMouseListener( - adapter); - _textEditor.getTextViewer().getTextWidget().addMouseMoveListener( - adapter); - } catch (PartInitException exception) { - //$NON-NLS-1$ = "An error has occurred when initializing the input for the the editor's source page." - if (_log != null) { - // throw new SourceEditingRuntimeException( - // "An error has occurred when initializing the input for the - // the editor's source page."); - } - } - // TODO: add a catch block here for any exception the design - // page throws and convert it into a more informative message. - } - - /** - * Method createTextEditor. - * - * @return StructuredTextEditor - */ - protected StructuredTextEditor createTextEditor() { - return new DesignerStructuredTextEditorJSP(); - } - - private void disconnectDesignPage() { - if (_designViewer != null) { - _designViewer.setModel(null); - _designViewer.dispose(); - } - } - - public void dispose() { - //System.out.println("dispose of HTML Editor"); - deletePreviewFiles(); - - disconnectSashPage(); - disconnectDesignPage(); - - IWorkbenchWindow window = getSite().getWorkbenchWindow(); - window.getPartService().removePartListener(_partListener); - window.getShell().removeShellListener(_partListener); - getSite().getPage().removePartListener(_partListener); - - if (_textEditor != null) { - _textEditor.removePropertyListener(this); - _textEditor.setEditorPart(null); - _textEditor.dispose(); - } - - // moved to last when added window ... seems like - // we'd be in danger of losing some data, like site, - // or something. - _sashEditorPart = null; - _tabbedPropSheet = null; - _partListener = null; - _editDomain = null; - _designViewer = null; - _browser = null; - _previewComposite = null; - _paletteViewerPage = null; - _log = null; - _selChangedListener = null; - _textEditor = null; - - super.dispose(); - - } - - public void doSave(IProgressMonitor monitor) { - _textEditor.doSave(monitor); - } - - /* - * (non-Javadoc) Saves the contents of this editor to another object. <p> - * Subclasses must override this method to implement the open-save-close - * lifecycle for an editor. For greater details, see <code> IEditorPart - * </code></p> - * - * @see IEditorPart - */ - public void doSaveAs() { - _textEditor.doSaveAs(); - } - - private void editorInputIsAcceptable(IEditorInput input) - throws PartInitException { - if (input instanceof IFileEditorInput) { - // verify that it can be opened - CoreException[] coreExceptionArray = new CoreException[1]; - if (fileDoesNotExist((IFileEditorInput) input, coreExceptionArray)) { - // todo use message formatter for {0} - Throwable coreException = coreExceptionArray[0]; - - // C.B: this is a strange piece of logic. It was referenceing - // the internal sub-class of CoreException, ResourceException. - // need to review fileDoesNotExist. - if (coreException instanceof CoreException) { - // I'm assuming this is always 'does not exist' - // we'll refresh local go mimic behavior of default - // editor, where the - // troublesome file is refreshed (and will cause it to - // 'disappear' from Navigator. - try { - ((IFileEditorInput) input).getFile() - .refreshLocal(IResource.DEPTH_ZERO, - new NullProgressMonitor()); - } catch (CoreException ce) { - if (_log != null) { - _log.error("Error.HTMLEditor.0", ce); //$NON-NLS-1$ - } - } - throw new PartInitException("Resource " + input.getName() //$NON-NLS-1$ - + " does not exist."); //$NON-NLS-1$ - } - throw new PartInitException("Editor could not be open on " //$NON-NLS-1$ - + input.getName()); - } - } else if (input instanceof IStorageEditorInput) { - InputStream contents = null; - try { - contents = ((IStorageEditorInput) input).getStorage() - .getContents(); - if (contents == null) { - throw new PartInitException("Editor could not be open on " //$NON-NLS-1$ - + input.getName()); - } - } catch (CoreException noStorageExc) { - // Error in geting storage contents - _log.error("Error.HTMLEditor.1", noStorageExc); //$NON-NLS-1$ - } - finally - { - ResourceUtils.ensureClosed(contents); - } - } - } - - /** - * Initializes the editor part with a site and input. <p> - * Subclasses of <code> EditorPart </code> must implement this method. - * Within the implementation subclasses should verify that the input type is - * acceptable and then save the site and input. Here is sample code: </p><pre> - * if (!(input instanceof IFileEditorInput)) throw new - * PartInitException("Invalid Input: Must be IFileEditorInput"); - * setSite(site); setInput(editorInput); </pre> - * @param input - * @param coreException - * @return true if the input doesn't exist - */ - protected boolean fileDoesNotExist(IFileEditorInput input, - Throwable[] coreException) { - boolean result = false; - InputStream inStream = null; - if ((!(input.exists())) || (!(input.getFile().exists()))) { - result = true; - } else { - try - { - inStream = input.getFile().getContents(true); - } - catch (CoreException e) - { - // very likely to be file not found - result = true; - coreException[0] = e; - // The core has exception - _log.error("Error.HTMLEditor.3", e); //$NON-NLS-1$ - } - finally - { - ResourceUtils.ensureClosed(inStream); - } - } - return result; - } - - public Object getAdapter(Class key) { - Object result = null; - if (key == IDesignViewer.class) { - result = _designViewer; - } else if (key == PalettePage.class) { - return getPaletteViewerPage(); - } else if (key == IPropertySheetPage.class) { - // XXX: we can delegate this to the fTextEditor, but that use some - // more - // complicate mechanism, and don't work with page designer well, so - // do it simple now, fix later. - // return _textEditor.getAdapter(key); - return getPropertySheetPage(); - } else if (key == IContentOutlinePage.class) { - if (_textEditor != null) { - result = _textEditor.getAdapter(key); - } - } else if (key == IPageVariablesProvider.class) { - Object obj = ((IDOMModel) getModel()).getDocument().getAdapterFor( - IDocumentPageVariableAdapter.class); - if (obj instanceof IPageVariablesProvider) { - return obj; - } - return null; - } else { - // DMW: I'm bullet-proofing this because - // its been reported (on 4.03 version) a null pointer sometimes - // happens here on startup, when an editor has been left - // open when workbench shutdown. - if (_textEditor != null) { - result = _textEditor.getAdapter(key); - } - } - return result; - } - - - /** - * IExtendedSimpleEditor method - * @return IDocument - */ - public IDocument getDocument() { - if (getTextEditor() == null) { - return null; - } - - Object apapter = _textEditor.getAdapter(ISourceEditingTextTools.class); - if (apapter != null) { - return ((ISourceEditingTextTools) apapter).getDocument(); - } - - return null; - } - - /** - * IExtendedMarkupEditor method - * @return the dom document - */ - public Document getDOMDocument() { - if (getTextEditor() == null) { - return null; - } - - Object adapter = _textEditor.getAdapter(ISourceEditingTextTools.class); - if (adapter instanceof IDOMSourceEditingTextTools) { - return ((IDOMSourceEditingTextTools) adapter).getDOMDocument(); - } - return null; - } - - /** - * IExtendedSimpleEditor method - * @return the editor part - */ - public IEditorPart getEditorPart() { - return this; - } - - /** - * @return the structured model - */ - public IStructuredModel getModel() { - IStructuredModel model = null; - if (_textEditor != null) { - model = ((DesignerStructuredTextEditorJSP) _textEditor).getModel(); - } - return model; - } - - - /** - * @return the SSE editor delegate - */ - public StructuredTextEditor getTextEditor() { - return _textEditor; - } - - - /* - * (non-Javadoc) Method declared on IWorkbenchPart. - */ - public String getTitle() { - String title = null; - if (getTextEditor() == null) { - if (getEditorInput() != null) { - title = getEditorInput().getName(); - } - } else { - title = getTextEditor().getTitle(); - } - if (title == null) { - title = getPartName(); - } - return title; - } - - public void init(IEditorSite site, IEditorInput input) - throws PartInitException { - super.init(site, input); - editorInputIsAcceptable(input); - try { - // super.init(site, input); - // setSite(site); - setInput(input); - if (_partListener == null) { - _partListener = new PartActivationHandler(this) { - public void handleActivation() { - safelySanityCheckState(); - } - }; - } - // we want to listen for our own activation - IWorkbenchWindow window = getSite().getWorkbenchWindow(); - window.getPartService().addPartListener(_partListener); - window.getShell().addShellListener(_partListener); - - // TODO: is this the right place to do this? - // enable our editor context - IContextService contextService = (IContextService) getSite() - .getService(IContextService.class); - contextService.activateContext("org.eclipse.jst.pagedesigner.editorContext"); //$NON-NLS-1$ - - } catch (Exception e) { - // Error in editor initialization - _log.error("Error.HTMLEditor.5", e); //$NON-NLS-1$ - } - setPartName(input.getName()); - } - - /* - * (non-Javadoc) Returns whether the "save as" operation is supported by - * this editor. <p> Subclasses must override this method to implement the - * open-save-close lifecycle for an editor. For greater details, see <code> - * IEditorPart </code></p> - * - * @see IEditorPart - */ - public boolean isSaveAsAllowed() { - return _textEditor != null && _textEditor.isSaveAsAllowed(); - } - - /* - * (non-Javadoc) Returns whether the contents of this editor should be saved - * when the editor is closed. <p> This method returns <code> true </code> if - * and only if the editor is dirty ( <code> isDirty </code> ). </p> - */ - public boolean isSaveOnCloseNeeded() { - // overriding super class since it does a lowly isDirty! - if (_textEditor != null) { - return _textEditor.isSaveOnCloseNeeded(); - } - return isDirty(); - } - - /** - * Posts the update code "behind" the running operation. - */ - private void postOnDisplayQue(Runnable runnable) { - IWorkbench workbench = PlatformUI.getWorkbench(); - IWorkbenchWindow[] windows = workbench.getWorkbenchWindows(); - if (windows != null && windows.length > 0) { - Display display = windows[0].getShell().getDisplay(); - display.asyncExec(runnable); - } else { - runnable.run(); - } - } - - /** - * Indicates that a property has changed. - * - * @param source - * the object whose property has changed - * @param propId - * the id of the property which has changed; property ids are - * generally defined as constants on the source class - */ - public void propertyChanged(Object source, int propId) { - switch (propId) { - // had to implement input changed "listener" so that - // strucutedText could tell it containing editor that - // the input has change, when a 'resource moved' event is - // found. - case IEditorPart.PROP_INPUT: { - if (source == _textEditor) { - if (_textEditor.getEditorInput() != getEditorInput()) { - setInput(_textEditor.getEditorInput()); - // title should always change when input changes. - // create runnable for following post call - Runnable runnable = new Runnable() { - public void run() { - _firePropertyChange(IWorkbenchPart.PROP_TITLE); - } - }; - // Update is just to post things on the display queue - // (thread). We have to do this to get the dirty - // property to get updated after other things on the - // queue are executed. - postOnDisplayQue(runnable); - } - } - break; - } - case IWorkbenchPart.PROP_TITLE: { - // // update the input if the title is changed. why? It seems input - // change event will be fired at last. - // if (source == _textEditor) - // { - // if (_textEditor.getEditorInput() != getEditorInput()) - // { - // setInput(_textEditor.getEditorInput()); - // } - // } - // break; - } - default: { - // propagate changes. Is this needed? Answer: Yes. - // PROP_PART_NAME, PROP_DIRTY etc. - if (source == _textEditor) { - firePropertyChange(propId); - } - break; - } - } - - } - - private void safelySanityCheckState() { - // If we're called before editor is created, simply ignore since we - // delegate this function to our embedded TextEditor - if (getTextEditor() == null) { - return; - } - - getTextEditor().safelySanityCheckState(getEditorInput()); - - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.ui.part.EditorPart#setInput(org.eclipse.ui.IEditorInput) - */ - protected void setInput(IEditorInput input) { - // If driven from the Source page, it's "model" may not be up to date - // with the input just yet. We'll rely on later notification from the - // TextViewer to set us straight - super.setInput(input); - if (_designViewer != null) { - - _designViewer.setModel(getModel()); - } - setPartName(input.getName()); - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.ui.part.EditorPart#isDirty() - */ - public boolean isDirty() { - if (getTextEditor() == null) { - return false; - } - return getTextEditor().isDirty(); - } - - private IPropertySheetPage getPropertySheetPage() - { - if (_tabbedPropSheet == null || _tabbedPropSheet.getControl() == null - || _tabbedPropSheet.getControl().isDisposed()) - { - IPropertySheetPageFactory factory = getPageFactory(); - if (factory != null) - { - final IFile file = ((IFileEditorInput)getEditorInput()).getFile(); - _tabbedPropSheet = factory.createPage(file); - } - else - { - _tabbedPropSheet = new WPETabbedPropertySheetPage(this,this); - } - } - return _tabbedPropSheet; - } - - private IPropertySheetPageFactory getPageFactory() - { - //List<IElementEditFactory> result = new ArrayList<IElementEditFactory>(); - IExtensionPoint extensionPoint = Platform.getExtensionRegistry() - .getExtensionPoint(PDPlugin.getPluginId(), - IJMTConstants.EXTENSION_POINT_PAGEDESIGNER); - IExtension[] extensions = extensionPoint.getExtensions(); - - for (int i = 0; i < extensions.length; i++) - { - IExtension ext = extensions[i]; - IConfigurationElement[] elementEditElement = ext - .getConfigurationElements(); - - for (int j = 0; j < elementEditElement.length; j++) - { - final IConfigurationElement element = elementEditElement[j]; - if (element.getName().equals( - IJMTConstants.PROPERTY_PAGE_FACTORY)) - { - elementEditElement[j].getAttribute("class"); //$NON-NLS-1$ - Object obj; - try - { - obj = elementEditElement[j] - .createExecutableExtension("class"); //$NON-NLS-1$ - - // TODO: we need a policy based solution here, - // but this will do for now - if (obj instanceof IPropertySheetPageFactory) - { - return (IPropertySheetPageFactory) obj; - } - } - catch (CoreException e) - { - PDPlugin.log("Problem loading element edit extension for "+element.toString(), e); //$NON-NLS-1$ - } - } - } - } - return null; - } - - /** - * @return PaletteViewerPage - */ - private PaletteViewerPage getPaletteViewerPage() - { - if (_paletteViewerPage == null) - { - _paletteViewerPage = _designViewer.createPaletteViewerPage(); - } - return _paletteViewerPage; - } - - /** - * @return the edit domain - */ - public DefaultEditDomain getEditDomain() { - if (_editDomain == null) { - _editDomain = new DefaultEditDomain(this); - - // XXX: if i don't do the following line, system will default use - // SelectionTool. Don't know where else to set this. Since it is - // kind of duplicate - // to the DesignerPaletteRoot. - _editDomain.setDefaultTool(new RangeSelectionTool()); - _editDomain.loadDefaultTool(); - - // next config the _editDomain - // _editDomain.setPaletteRoot(new JSFPaletteRoot()); - } - return _editDomain; - } - - /** - * (non-Javadoc) - * - * @see org.eclipse.ui.part.MultiPageEditorPart#pageChange(int) - */ - protected void pageChange(int newPageIndex) { - super.pageChange(newPageIndex); - - deletePreviewFiles(); - - if (newPageIndex == _previewPageIndex) { - // preview page activate, need to regenerate the preview text and - // display it. - StringBuffer result = new StringBuffer(); - try { - // PreviewHandler.generatePreview(this.getModel(), - // this.getEditorInput(), result); - DocumentEditPart part = (DocumentEditPart) this._designViewer - .getGraphicViewer().getContents(); - PreviewHandlerNew.generatePreview(part, result); - } catch (Exception ex) { - result = new StringBuffer(); - result - .append(this.getModel().getStructuredDocument() - .getText()); - // Error in page changing - _log.info("Error.HTMLEditor.6", ex); //$NON-NLS-1$ - ex.printStackTrace(); - } - File file = PreviewUtil.toFile(result, getEditorInput()); - if (file != null) { - PREVIEW_FILES_LIST.add(file); - getPreviewBrowser().loadFile(file); - } else { - getPreviewBrowser().getBrowser().setUrl("about:blank"); //$NON-NLS-1$ - } - } - } - - /** - * @return Returns the _designViewer. - */ - public IDesignViewer getDesignViewer() { - return _designViewer; - } - - /** - * @param mode - */ - public void setDesignerMode(int mode) { - if (_sashEditorPart != null && _mode != mode) { - switch (mode) { - case MODE_SASH_HORIZONTAL: - _sashEditorPart.setOrientation(SWT.HORIZONTAL); - break; - case MODE_DESIGNER: - _sashEditorPart.setMaximizedEditor(this._designViewer); - break; - case MODE_SOURCE: - _sashEditorPart.setMaximizedEditor(this._textEditor); - break; - case MODE_SASH_VERTICAL: - default: - _sashEditorPart.setOrientation(SWT.VERTICAL); - } - if (getEditorInput() != null) { - EditorUtil.setEditorInputDesignModeProperty(getEditorInput(), String.valueOf(mode)); - } - } - this._mode = mode; - } - - /* - * Set the sash editor mode from the stored file property - * or the default preference. - */ - private void initDesignerMode() { - int preferredMode = MODE_SASH_VERTICAL; - - // If the user has already selected a mode for the file, use it. - String prop = null; - if (getEditorInput() != null) { - prop = EditorUtil.getEditorInputDesignModeProperty(getEditorInput()); - } - if (prop != null) { - try { - preferredMode = Integer.parseInt(prop); - } catch (NumberFormatException e) { - // do nothing; - } - } else { - // Otherwise, get the default mode from preferences. - IPreferenceStore pStore = PDPlugin.getDefault().getPreferenceStore(); - preferredMode = pStore.getInt(PDPreferences.SASH_EDITOR_MODE_PREF); - } - - setDesignerMode(preferredMode); - } - - /** - * @return the current design mode - */ - public int getDesignerMode() { - return this._mode; - } - - public IEditorPart getActiveEditor() { - IEditorPart result = null; - if (_sash) { - result = _sashEditorPart.getActiveEditor(); - } else { - if (_designViewer.getGraphicViewer().getControl().isFocusControl()) { - result = _designViewer; - } else if (_textEditor.getTextViewer().getControl() - .isFocusControl()) { - result = _textEditor; - } - } - return result; - } - - public String getPartName() { - if (_textEditor != null) { - return _textEditor.getPartName(); - } - return super.getPartName(); - } - - private void deletePreviewFiles() { - Iterator itPreviewFiles = PREVIEW_FILES_LIST.iterator(); - while (itPreviewFiles.hasNext()) { - File file = (File)itPreviewFiles.next(); - if (file != null && file.exists()) { - file.delete(); - } - } - PREVIEW_FILES_LIST.clear(); - } - - /** - * Refreshes the design page. Allows an external action to force a refresh - * after an external change, such as a DT skin change. - */ - public void refreshDesignViewer() { - EditPart contentEditPart = _designViewer.getGraphicViewer().getRootEditPart().getContents(); - if (contentEditPart instanceof DocumentEditPart) { - ((DocumentEditPart)contentEditPart).styleChanged(); - } - } - -} diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/IDesignViewer.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/IDesignViewer.java deleted file mode 100644 index fc05338e1..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/IDesignViewer.java +++ /dev/null @@ -1,41 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2006 Sybase, Inc. 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: - * Sybase, Inc. - initial API and implementation - *******************************************************************************/ -package org.eclipse.jst.pagedesigner.editors; - -import org.eclipse.jst.pagedesigner.viewer.IHTMLGraphicalViewer; -import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel; - -/** - * This is copied from the xmleditor plugin. Represents the design viewer that - * need can be used to show the design page. - * - * @author mengbo - */ -public interface IDesignViewer { - /** - * @return the title - */ - String getTitle(); - - /** - * @param model - */ - void setModel(IStructuredModel model); - - // void setViewerSelectionManager(ViewerSelectionManager - // viewerSelectionManager); - - /** - * @return the graphical viewer - */ - public IHTMLGraphicalViewer getGraphicViewer(); -} diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/IPropertySheetPageFactory.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/IPropertySheetPageFactory.java deleted file mode 100644 index 3e37903d9..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/IPropertySheetPageFactory.java +++ /dev/null @@ -1,35 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2001, 2009 Oracle 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: - * Oracle Corporation - initial API and implementation - *******************************************************************************/ - -package org.eclipse.jst.pagedesigner.editors; - -import org.eclipse.core.resources.IFile; -import org.eclipse.ui.views.properties.IPropertySheetPage; - -/** - * A factory that can be used with the pageDesignerExtension to override - * the default property sheet page provided by the WPE when tag elements are - * selected by the user. - * - * This interface should not be implemented or extended by clients. Use - * AbstractPropertySheetPageFactory instead. - * - * @author cbateman - * - */ -public interface IPropertySheetPageFactory -{ - /** - * @param file - * @return the property sheet page for the file. - */ - IPropertySheetPage createPage(final IFile file); -} diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/OutlineConfiguration.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/OutlineConfiguration.java deleted file mode 100644 index d35de2dea..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/OutlineConfiguration.java +++ /dev/null @@ -1,81 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2006 Sybase, Inc. 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: - * Sybase, Inc. - initial API and implementation - *******************************************************************************/ -package org.eclipse.jst.pagedesigner.editors; - -import java.util.ArrayList; -import java.util.List; - -import org.eclipse.jface.text.ITextSelection; -import org.eclipse.jface.viewers.ISelection; -import org.eclipse.jface.viewers.IStructuredSelection; -import org.eclipse.jface.viewers.StructuredSelection; -import org.eclipse.jface.viewers.TreeViewer; -import org.eclipse.jst.jsp.ui.views.contentoutline.JSPContentOutlineConfiguration; -import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel; -import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion; - -/** - * the HTML editor's outline view configuration - * - */ -public class OutlineConfiguration extends JSPContentOutlineConfiguration { - private Object[] _selections = new Object[0]; - - public ISelection getSelection(TreeViewer viewer, ISelection selection) { - if ((viewer.getInput() instanceof IStructuredModel) - && (selection instanceof ITextSelection)) { - _selections = getSelectedObjects((IStructuredModel) viewer - .getInput(), (ITextSelection) selection); - if (_selections != null) { - return super.getSelection(viewer, new StructuredSelection( - _selections)); - } - } - else if (selection instanceof IStructuredSelection) - { - return super.getSelection(viewer, selection); - } - return super.getSelection(viewer, new StructuredSelection(_selections)); - } - - private Object[] getSelectedObjects(IStructuredModel model, - ITextSelection selection) { - Object[] selectedStructures = null; - if (model != null) { - IndexedRegion region = model - .getIndexedRegion(selection.getOffset()); - int end = selection.getOffset() + selection.getLength(); - if (region != null) { - if (end <= region.getEndOffset()) { - // single selection - selectedStructures = new Object[1]; - selectedStructures[0] = region; - } else { - // multiple selection - int maxLength = model.getStructuredDocument().getLength(); - List structures = new ArrayList(2); - while (region != null && region.getEndOffset() <= end - && region.getEndOffset() < maxLength) { - structures.add(region); - region = model - .getIndexedRegion(region.getEndOffset() + 1); - } - selectedStructures = structures.toArray(); - } - } - } - if (selectedStructures == null) { - selectedStructures = new Object[0]; - } - return selectedStructures; - } -} diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/PageDesignerActionConstants.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/PageDesignerActionConstants.java deleted file mode 100644 index cbe7381e6..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/PageDesignerActionConstants.java +++ /dev/null @@ -1,142 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2006 Sybase, Inc. 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: - * Sybase, Inc. - initial API and implementation - *******************************************************************************/ -package org.eclipse.jst.pagedesigner.editors; - -import org.eclipse.gef.ui.actions.GEFActionConstants; -import org.eclipse.jface.action.IMenuManager; -import org.eclipse.jface.action.Separator; -import org.eclipse.ui.IWorkbenchActionConstants; - -/** - * Common constants used to id specific locations in the canvas context menu. - * - * @see SimpleGraphicalEditor.ContextMenuListener for construction order - * - * @author mengbo - */ -public class PageDesignerActionConstants -{ - /** - * Id for the standard Edit sub-menu - */ - public static final String EDIT_SUBMENU_ID = "org.eclipse.jst.pagedesigner.context.submenu.edit"; //$NON-NLS-1$ - /** - * Id for the standard Select sub-menu - */ - public static final String SELECT_SUBMENU_ID = "org.eclipse.jst.pagedesigner.context.submenu.select"; //$NON-NLS-1$ - /** - * Id for the standard Insert sub-menu - */ - public static final String INSERT_SUBMENU_ID = "org.eclipse.jst.pagedesigner.context.submenu.insert"; //$NON-NLS-1$ - /** - * Id for the standard Navigate sub-menu - */ - public static final String NAVIGATE_SUBMENU_ID = "org.eclipse.jst.pagedesigner.context.submenu.navigate"; //$NON-NLS-1$ - /** - * Id for the standard Style sub-menu - */ - public static final String STYLE_SUBMENU_ID = "org.eclipse.jst.pagedesigner.context.submenu.style"; //$NON-NLS-1$ - /** - * Id for the standard Show(View) sub-menu - */ - public static final String SHOWVIEW_SUBMENU_ID = "org.eclipse.jst.pagedesigner.viewMenuMgr"; //$NON-NLS-1$ - - /** - * Undo action group - */ - public static final String GROUP_UNDO = GEFActionConstants.GROUP_UNDO; - /** - * Standard Edit sub-menu action group - */ - public static final String GROUP_EDIT = GEFActionConstants.GROUP_EDIT; - /** - * Group for container injected actions - */ - public static final String GROUP_CONTAINER = "org.eclipse.jst.pagedesigner.container"; //$NON-NLS-1$ - /** - * Standard Style sub-menu action group - */ - public static final String GROUP_STYLE = "org.eclipse.jst.pagedesigner.style"; //$NON-NLS-1$ - /** - * Group for third-party contributed tag-specific actions - */ - public static final String GROUP_SPECIAL = "org.eclipse.jst.pagedesigner.special"; //$NON-NLS-1$ - /** - * Standard Select sub-menu action group - */ - public static final String GROUP_SELECT = "org.eclipse.jst.pagedesigner.select"; //$NON-NLS-1$ - /** - * Standard Insert sub-menu action group - */ - public static final String GROUP_INSERT = "org.eclipse.jst.pagedesigner.insert"; //$NON-NLS-1$ - /** - * Standard Navigate sub-menu action group - */ - public static final String GROUP_NAVIGATE = "org.eclipse.jst.pagedesigner.navigate"; //$NON-NLS-1$ - - - /** - * Add standard group separators for the Edit sub-menu - * - * @param menu - */ - public static final void addStandardEditActionGroups(IMenuManager menu) - { - menu.add(new Separator(GROUP_UNDO)); - menu.add(new Separator(GROUP_EDIT)); - } - - /** - * Adds standard group separators to the given MenuManager. - * - * @param menu the MenuManager - */ - public static final void addStandardActionGroups(IMenuManager menu) { - menu.add(new Separator(GROUP_CONTAINER)); - menu.add(new Separator(GROUP_SPECIAL)); - menu.add(new Separator(IWorkbenchActionConstants.MB_ADDITIONS)); - } - - /** - * Add standard group separators for the Style sub-menu - * @param menu - */ - public static void addStandardStyleActionGroups(IMenuManager menu) - { - menu.add(new Separator(GROUP_STYLE)); - } - - /** - * Add standard group separators for the Select sub-menu - * @param menu - */ - public static void addStandardSelectActionGroups(IMenuManager menu) { - menu.add(new Separator(GROUP_SELECT)); - } - - /** - * Add standard group separators for the Insert sub-menu - * @param menu - */ - public static void addStandardInsertActionGroups(IMenuManager menu) { - menu.add(new Separator(GROUP_INSERT)); - } - - /** - * Add standard group separators for the Navigate sub-menu - * @param menu - */ - public static void addStandardNavigateActionGroups( - IMenuManager menu) { - menu.add(new Separator(GROUP_NAVIGATE)); - } -} diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/SelectionSynchronizer.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/SelectionSynchronizer.java deleted file mode 100644 index 33025aa4d..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/SelectionSynchronizer.java +++ /dev/null @@ -1,168 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2006 Sybase, Inc. 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: - * Sybase, Inc. - initial API and implementation - *******************************************************************************/ -package org.eclipse.jst.pagedesigner.editors; - -import org.eclipse.jface.text.ITextSelection; -import org.eclipse.jface.viewers.ISelection; -import org.eclipse.jface.viewers.ISelectionChangedListener; -import org.eclipse.jface.viewers.SelectionChangedEvent; -import org.eclipse.jst.pagedesigner.utils.SelectionHelper; -import org.eclipse.swt.custom.StyledText; - -/** - * This class handles selection synchronization between the designer and other - * parts. It listens event from both ViewerSelectionManager and the - * IDesignerView, and convert the events to each other. - * <p> - * SelectionSynchronizer will be registered on the ViewerSelectionManager, - * basically listens to selection change of other parts, and make the designer - * sync with them. - * <p> - * As ViewerSelectionManager is firing out both textSelectionChange and - * nodeSelectionChange, we only need to listen to one of them. As - * textSelectionChange provide more information than nodeSelectionChange, so - * we'll listen only to textSelectionChange. - * - * @author mengbo - * @version 1.5 - */ -public class SelectionSynchronizer implements ISelectionChangedListener { - private boolean _firingChange = false; - - private SimpleGraphicalEditor _editor; - - /** - * @param editor - */ - public SelectionSynchronizer(SimpleGraphicalEditor editor) { - _editor = editor; - } - - /** - * @return true if the status check is okay - */ - protected boolean statusCheckOk() { - try { - StyledText text = _editor.getHTMLEditor().getTextEditor() - .getTextViewer().getTextWidget(); - if (text == null || text.isDisposed()) { - return false; - } - return true; - } catch (NullPointerException ex) { - return false; - } - } - - /** - * This is for event from the designer. - */ - public void selectionChanged(SelectionChangedEvent event) { - ISelection selection = event.getSelection(); - - if (!_firingChange) { - // check current status - if (!statusCheckOk()) { - return; - } - - _firingChange = true; - try { - // convert the designer selection into SSE selection - // (IStructureSelection of nodes - // or textSelection, and let the ViewerSelectionManager to - // handle it. - // if (selection instanceof IStructuredSelection) - // { - // IStructuredSelection nodeSel = - // SelectionHelper.convertFromDesignSelection((IStructuredSelection)selection); - // can't use DoubleClickEvent, since it requre a Viewer. - // _viewerSelectionManager.doubleClick(new - // DoubleClickEvent(null, nodeSel)); - // } - // else if (selection instanceof DesignRange) - // { - // ITextSelection srcselection = - // SelectionHelper.convertFromDesignSelection((DesignRange)selection); - // event = new SelectionChangedEvent(_editor.getGraphicViewer(), - // srcselection); - // _viewerSelectionManager.selectionChanged(event); - // } - ITextSelection srcselection = SelectionHelper - .convertFromDesignSelectionToTextSelection(selection); - - // ideally, we should let the text editor display the selection - // through calls to _viewerSelectionManager, - // but seemed _viewerSelectionManager don't support that, so we - // do workaround by calling the text editor (lium) - _editor.getHTMLEditor().getTextEditor().selectAndReveal( - srcselection.getOffset(), srcselection.getLength()); - } finally { - _firingChange = false; - } - } - } - - /** - * We are listening to the selection change in ViewerSelectionManager. The - * original source of the event could be source view or the outline view or - * other party that participate in the ViewerSelectionManager. - * @param start - * @param end - */ - public void textSelectionChanged(int start, int end) { - if (!_firingChange) { - try { - _firingChange = true; - - // XXX: workaround a SSE problem. In SSE, when user select a - // range, it will fire two textSelectionChange event - // the first one indicate the correct range, the second one is - // zero size for caret position. - // @see ViewerSelectionManagerImpl.caretMoved - // We try to ignore the second event by checking whether the - // current real selection is empty - if (start == end) { - ITextSelection sel = (ITextSelection) _editor - .getHTMLEditor().getTextEditor() - .getSelectionProvider().getSelection(); - if (sel.getLength() != 0) { - return; - } - } - - if (start > end) { - int temp = start; - start = end; - end = temp; - } - int offset = start; - int length = end - start; - - ITextSelection oldSelection = SelectionHelper - .convertFromDesignSelectionToTextSelection(_editor - .getGraphicViewer().getSelection()); - if (oldSelection != null && oldSelection.getOffset() == offset - && oldSelection.getLength() == length) { - return; - } - - ISelection selection = SelectionHelper - .convertToDesignerSelection(this._editor - .getGraphicViewer(), offset, length); - _editor.getGraphicViewer().setSelection(selection); - } finally { - _firingChange = false; - } - } - } -} diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/SimpleGraphicalEditor.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/SimpleGraphicalEditor.java deleted file mode 100644 index 8d3bdecb9..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/SimpleGraphicalEditor.java +++ /dev/null @@ -1,897 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2006 Sybase, Inc. 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: - * Sybase, Inc. - initial API and implementation - *******************************************************************************/ -package org.eclipse.jst.pagedesigner.editors; - -import java.util.List; - -import org.eclipse.core.resources.IFile; -import org.eclipse.core.resources.IProject; -import org.eclipse.core.runtime.CoreException; -import org.eclipse.core.runtime.IConfigurationElement; -import org.eclipse.core.runtime.IExtension; -import org.eclipse.core.runtime.IExtensionPoint; -import org.eclipse.core.runtime.IProgressMonitor; -import org.eclipse.core.runtime.Platform; -import org.eclipse.gef.DefaultEditDomain; -import org.eclipse.gef.EditPart; -import org.eclipse.gef.GraphicalViewer; -import org.eclipse.gef.dnd.TemplateTransferDragSourceListener; -import org.eclipse.gef.editparts.ScalableRootEditPart; -import org.eclipse.gef.palette.PaletteRoot; -import org.eclipse.gef.ui.actions.ActionRegistry; -import org.eclipse.gef.ui.actions.UpdateAction; -import org.eclipse.gef.ui.palette.FlyoutPaletteComposite.FlyoutPreferences; -import org.eclipse.gef.ui.palette.PaletteViewer; -import org.eclipse.gef.ui.palette.PaletteViewerProvider; -import org.eclipse.gef.ui.parts.GraphicalEditorWithFlyoutPalette; -import org.eclipse.gef.ui.parts.GraphicalViewerKeyHandler; -import org.eclipse.gef.ui.views.palette.PaletteViewerPage; -import org.eclipse.jface.action.IAction; -import org.eclipse.jface.action.IMenuListener; -import org.eclipse.jface.action.IMenuManager; -import org.eclipse.jface.action.MenuManager; -import org.eclipse.jface.text.IDocument; -import org.eclipse.jface.viewers.ISelection; -import org.eclipse.jface.viewers.IStructuredSelection; -import org.eclipse.jst.pagedesigner.IJMTConstants; -import org.eclipse.jst.pagedesigner.PDPlugin; -import org.eclipse.jst.pagedesigner.actions.container.ContainerActionGroup; -import org.eclipse.jst.pagedesigner.actions.menuextension.CustomedContextMenuActionGroup; -import org.eclipse.jst.pagedesigner.actions.range.RangeActionGroup; -import org.eclipse.jst.pagedesigner.actions.single.SingleElementActionGroup; -import org.eclipse.jst.pagedesigner.commands.CopyAction; -import org.eclipse.jst.pagedesigner.commands.CutAction; -import org.eclipse.jst.pagedesigner.commands.DeleteAction; -import org.eclipse.jst.pagedesigner.commands.PasteAction; -import org.eclipse.jst.pagedesigner.dnd.internal.LocalSelectionDropTargetListener; -import org.eclipse.jst.pagedesigner.dnd.internal.PDTemplateTransferDropTargetListener; -import org.eclipse.jst.pagedesigner.dnd.internal.ResouceDropTargetListener; -import org.eclipse.jst.pagedesigner.editors.actions.ActionsMessages; -import org.eclipse.jst.pagedesigner.editors.actions.DesignerUndoRedoAction; -import org.eclipse.jst.pagedesigner.editors.actions.RelatedViewActionGroup; -import org.eclipse.jst.pagedesigner.editors.actions.SkinsMenuItemBuilder; -import org.eclipse.jst.pagedesigner.editors.palette.DesignerPaletteCustomizer; -import org.eclipse.jst.pagedesigner.editors.palette.DesignerPaletteRootFactory; -import org.eclipse.jst.pagedesigner.editors.palette.DesignerPaletteViewerProvider; -import org.eclipse.jst.pagedesigner.editors.palette.IPaletteFactory; -import org.eclipse.jst.pagedesigner.jsp.core.internal.pagevar.DocumentPageVariableAdapter; -import org.eclipse.jst.pagedesigner.jsp.core.pagevar.adapter.PageVariableAdapterFactory; -import org.eclipse.jst.pagedesigner.parts.CSSStyleAdapterFactory; -import org.eclipse.jst.pagedesigner.parts.DocumentEditPart; -import org.eclipse.jst.pagedesigner.parts.HTMLEditPartsFactory; -import org.eclipse.jst.pagedesigner.parts.RefresherFactory; -import org.eclipse.jst.pagedesigner.utils.SelectionHelper; -import org.eclipse.jst.pagedesigner.viewer.IHTMLGraphicalViewer; -import org.eclipse.swt.events.MouseAdapter; -import org.eclipse.swt.events.MouseEvent; -import org.eclipse.swt.widgets.Composite; -import org.eclipse.swt.widgets.Control; -import org.eclipse.swt.widgets.Menu; -import org.eclipse.ui.IEditorInput; -import org.eclipse.ui.IFileEditorInput; -import org.eclipse.ui.IPageLayout; -import org.eclipse.ui.ISharedImages; -import org.eclipse.ui.IWorkbenchCommandConstants; -import org.eclipse.ui.IWorkbenchPart; -import org.eclipse.ui.PartInitException; -import org.eclipse.ui.PlatformUI; -import org.eclipse.ui.actions.ActionContext; -import org.eclipse.wst.sse.core.internal.PropagatingAdapter; -import org.eclipse.wst.sse.core.internal.provisional.IModelStateListener; -import org.eclipse.wst.sse.core.internal.provisional.INodeAdapterFactory; -import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel; -import org.eclipse.wst.sse.core.internal.undo.IDocumentSelectionMediator; -import org.eclipse.wst.sse.core.internal.undo.UndoDocumentEvent; -import org.eclipse.wst.xml.core.internal.provisional.document.IDOMDocument; -import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel; - -/** - * @author mengbo - */ -public class SimpleGraphicalEditor extends GraphicalEditorWithFlyoutPalette implements - IDesignViewer, IDocumentSelectionMediator { - - private HTMLEditor _delegate; - - private IHTMLGraphicalViewer _viewer; - - private IStructuredModel _model; - - /** Palette component, holding the tools and shapes. */ - private PaletteRoot _palette; - - private PaletteViewerPage _paletteViewerPage; - - private SelectionSynchronizer _synchronizer = new SelectionSynchronizer( - this); - - private IModelStateListener _internalModelListener = new IModelStateListener() { - public void modelAboutToBeChanged(IStructuredModel model) { - // do nothing - } - - public void modelChanged(IStructuredModel model) { - updateActionsWhenModelChange(); - } - - public void modelDirtyStateChanged(IStructuredModel model, - boolean isDirty) { - // do nothing - } - - public void modelResourceDeleted(IStructuredModel model) { - // do nothing - } - - public void modelResourceMoved(IStructuredModel oldModel, - IStructuredModel newModel) { - // do nothing - } - - public void modelAboutToBeReinitialized(IStructuredModel structuredModel) { - // do nothing - } - - public void modelReinitialized(IStructuredModel structuredModel) { - // do nothing - } - }; - - private PaletteViewerProvider _paletteViewerProvider; - - /** - * TODO: why isn't this private? - */ - protected IPaletteFactory _paletteViewerPageFactory; - - /** - * @param delegate - * @param editdomain - */ - public SimpleGraphicalEditor(HTMLEditor delegate, - DefaultEditDomain editdomain) { - _delegate = delegate; - initPaletteFactory(); - this.setEditDomain(editdomain); - } - - protected void createGraphicalViewer(Composite parent) { - _viewer = IHTMLGraphicalViewer.Factory.createGraphicalViewer(this); - Control control = _viewer.createControl(parent); - PlatformUI.getWorkbench().getHelpSystem().setHelp(control, - PDPlugin.getResourceString("SimpleGraphicalEditor.help.id")); //$NON-NLS-1$ - setGraphicalViewer(_viewer); - configureGraphicalViewer(); - hookGraphicalViewer(); - initializeGraphicalViewer(); - initializeContextMenu(); - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.gef.ui.parts.GraphicalEditor#dispose() - */ - public void dispose() { - if (_model != null) { - _model.getUndoManager().disconnect(this); - } - - super.dispose(); - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.gef.ui.parts.GraphicalEditor#initializeGraphicalViewer() - */ - protected void initializeGraphicalViewer() { - ScalableRootEditPart rootEditPart = new ScalableRootEditPart(); - _viewer.setRootEditPart(rootEditPart); - - _viewer.getViewport().setContentsTracksWidth(true); - - _viewer.setKeyHandler(new GraphicalViewerKeyHandler(_viewer)); - - // initialize the viewer with input - // IStructuredModel sModel = - // StructuredModelManager.getModelManager().createUnManagedStructuredModelFor(ContentTypeIdForHTML.ContentTypeID_HTML); - // IDOMDocument designDoc = ((IDOMModel)sModel).getDocument(); - // HTMLEditPartsFactory factory = new HTMLEditPartsFactory(designDoc); - HTMLEditPartsFactory factory = new HTMLEditPartsFactory(null); - - _viewer.setEditPartFactory(factory); - - // for sync with source view. - - _viewer.addDropTargetListener(new LocalSelectionDropTargetListener( - _viewer)); - _viewer.addDropTargetListener(new PDTemplateTransferDropTargetListener( - _viewer)); - _viewer.addDropTargetListener(new ResouceDropTargetListener(_viewer)); - - // add double click support. - _viewer.getControl().addMouseListener(new MouseAdapter() { - public void mouseDoubleClick(MouseEvent e) { - try { - getSite().getPage().showView(IPageLayout.ID_PROP_SHEET); - } catch (PartInitException e1) { - // ignore - } - } - }); - - super.initializeGraphicalViewer(); - } - - /** - * - */ - protected void initializeContextMenu() { - Control gviewer = _viewer.getControl(); - MenuManager menuMgr = new MenuManager(); - menuMgr.setRemoveAllWhenShown(true); - Menu menu = menuMgr.createContextMenu(gviewer); - gviewer.setMenu(menu); - menuMgr.addMenuListener(new ContextMenuListener()); - getSite().registerContextMenu( - "HTMLVisualEditor.contextMenu", menuMgr, _viewer); //$NON-NLS-1$ - } - - private void updateActionsWhenModelChange() { - // update undo/redo action - IAction action = this.getAction(IWorkbenchCommandConstants.EDIT_UNDO); - ((UpdateAction) action).update(); - - action = this.getAction(IWorkbenchCommandConstants.EDIT_REDO); - ((UpdateAction) action).update(); - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.gef.ui.parts.GraphicalEditor#createActions() - */ - protected void createActions() { - super.createActions(); - ActionRegistry registry = getActionRegistry(); - ISharedImages sharedImages = PlatformUI.getWorkbench() - .getSharedImages(); - - IAction action; - - action = new DesignerUndoRedoAction(true, this); - action.setImageDescriptor(sharedImages - .getImageDescriptor(ISharedImages.IMG_TOOL_UNDO)); - action.setDisabledImageDescriptor(sharedImages - .getImageDescriptor(ISharedImages.IMG_TOOL_UNDO_DISABLED)); - action.setActionDefinitionId(IWorkbenchCommandConstants.EDIT_UNDO); - action.setId(IWorkbenchCommandConstants.EDIT_UNDO); - getSite().getKeyBindingService().registerAction(action); - registry.registerAction(action); - - action = new DesignerUndoRedoAction(false, this); - action.setImageDescriptor(sharedImages - .getImageDescriptor(ISharedImages.IMG_TOOL_REDO)); - action.setDisabledImageDescriptor(sharedImages - .getImageDescriptor(ISharedImages.IMG_TOOL_REDO_DISABLED)); - action.setActionDefinitionId(IWorkbenchCommandConstants.EDIT_REDO); - action.setId(IWorkbenchCommandConstants.EDIT_REDO); - getSite().getKeyBindingService().registerAction(action); - registry.registerAction(action); - - action = new DeleteAction(this); - action.setImageDescriptor(sharedImages - .getImageDescriptor(ISharedImages.IMG_TOOL_DELETE)); - action.setDisabledImageDescriptor(sharedImages - .getImageDescriptor(ISharedImages.IMG_TOOL_DELETE_DISABLED)); - action.setActionDefinitionId(IWorkbenchCommandConstants.EDIT_DELETE); - action.setId(IWorkbenchCommandConstants.EDIT_DELETE); - getSite().getKeyBindingService().registerAction(action); - this.getSelectionActions().add(action.getId()); - registry.registerAction(action); - - action = new CopyAction(this); - action.setImageDescriptor(sharedImages - .getImageDescriptor(ISharedImages.IMG_TOOL_COPY)); - action.setDisabledImageDescriptor(sharedImages - .getImageDescriptor(ISharedImages.IMG_TOOL_COPY_DISABLED)); - action.setActionDefinitionId(IWorkbenchCommandConstants.EDIT_COPY); - action.setId(IWorkbenchCommandConstants.EDIT_COPY); - getSite().getKeyBindingService().registerAction(action); - this.getSelectionActions().add(action.getId()); - registry.registerAction(action); - - action = new CutAction(this); - action.setImageDescriptor(sharedImages - .getImageDescriptor(ISharedImages.IMG_TOOL_CUT)); - action.setDisabledImageDescriptor(sharedImages - .getImageDescriptor(ISharedImages.IMG_TOOL_CUT_DISABLED)); - action.setActionDefinitionId(IWorkbenchCommandConstants.EDIT_CUT); - action.setId(IWorkbenchCommandConstants.EDIT_CUT); - getSite().getKeyBindingService().registerAction(action); - this.getSelectionActions().add(action.getId()); - registry.registerAction(action); - - action = new PasteAction(this); - action.setImageDescriptor(sharedImages - .getImageDescriptor(ISharedImages.IMG_TOOL_PASTE)); - action.setDisabledImageDescriptor(sharedImages - .getImageDescriptor(ISharedImages.IMG_TOOL_PASTE_DISABLED)); - action.setActionDefinitionId(IWorkbenchCommandConstants.EDIT_PASTE); - action.setId(IWorkbenchCommandConstants.EDIT_PASTE); - getSite().getKeyBindingService().registerAction(action); - this.getSelectionActions().add(action.getId()); - registry.registerAction(action); - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.ui.ISaveablePart#doSave(org.eclipse.core.runtime.IProgressMonitor) - */ - public void doSave(IProgressMonitor monitor) { - if (_delegate != null) { - _delegate.doSave(monitor); - } - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.ui.ISaveablePart#doSaveAs() - */ - public void doSaveAs() { - if (_delegate != null) { - _delegate.doSaveAs(); - } - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.ui.ISaveablePart#isDirty() - */ - public boolean isDirty() { - if (_delegate != null) { - return _delegate.isDirty(); - } - return false; - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.ui.ISaveablePart#isSaveAsAllowed() - */ - public boolean isSaveAsAllowed() { - if (_delegate != null) { - return _delegate.isSaveAsAllowed(); - } - return false; - } - - /* - * (non-Javadoc) - * - * @see com.sybase.html.editor.IDesignViewer#setModel(com.ibm.sse.model.IStructuredModel) - */ - public void setModel(IStructuredModel model) { - if (_model != null) { - if (_model.getUndoManager() != null) - _model.getUndoManager().disconnect(this); - _model.removeModelStateListener(_internalModelListener); - } - - this._model = model; - - if (_model != null) { - _model.addModelStateListener(_internalModelListener); - if (_model.getUndoManager() != null) { - _model.getUndoManager().connect(this); - updateActionsWhenModelChange(); - } - } - - if (model instanceof IDOMModel) { - IDOMDocument doc = ((IDOMModel) model).getDocument(); - PropagatingAdapter adapter = (PropagatingAdapter) doc - .getAdapterFor(PropagatingAdapter.class); - if (adapter != null) { - INodeAdapterFactory factory = RefresherFactory.getInstance(); - adapter.addAdaptOnCreateFactory(factory); - adapter.initializeForFactory(factory, doc); - // CSSStyleAdapterFactory fac2 = - // CSSStyleAdapterFactory.getInstance(); - // adapter.addAdaptOnCreateFactory(fac2); - // adapter.initializeForFactory(fac2, doc); - } - ((IDOMModel) model).getFactoryRegistry().addFactory( - CSSStyleAdapterFactory.getInstance()); - - // _viewer.getDestDocumentForDesign().getModel().getFactoryRegistry().addFactory(CSSStyleAdapterFactory.getInstance()); - ((IDOMModel) model).getFactoryRegistry().addFactory( - new PageVariableAdapterFactory()); - doc.addAdapter(new DocumentPageVariableAdapter(doc)); - _viewer.setContents(((IDOMModel) model).getDocument()); - } else { - _viewer.setContents((EditPart) null); - } - } - - /** - * @return the selection synchronizer - */ - protected SelectionSynchronizer getSynchronizer() { - return _synchronizer; - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.gef.ui.parts.GraphicalEditor#updateActions(java.util.List) - */ - protected void updateActions(List actionIds) { - super.updateActions(actionIds); - } - - /** - * @param id - * @return the action for the id - */ - public IAction getAction(Object id) { - // lium: following lines commented out, see comments in - // DesignerUndoRedoAction - // if (ITextEditorActionConstants.UNDO.equals(id) || - // ITextEditorActionConstants.REDO.equals(id)) - // { - // return _delegate.getTextEditor().getAction((String) id); - // } - return getActionRegistry().getAction(id); - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.gef.ui.parts.GraphicalEditorWithFlyoutPalette#getPalettePreferences() - */ - protected FlyoutPreferences getPalettePreferences() { - return DesignerPaletteRootFactory.createPalettePreferences(); - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.gef.ui.parts.GraphicalEditorWithFlyoutPalette#getPaletteRoot() - */ - protected PaletteRoot getPaletteRoot() { - if (_palette == null) { - if (_paletteViewerPageFactory != null) { - _palette = _paletteViewerPageFactory.createPaletteRoot(_delegate.getEditorInput()); - } - if (_palette == null) { - _palette = DesignerPaletteRootFactory - .createPaletteRoot(getCurrentFile(_delegate.getEditorInput())); - } - } - return _palette; - - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.gef.ui.parts.GraphicalEditorWithFlyoutPalette#createPaletteViewerProvider() - */ - protected PaletteViewerProvider createPaletteViewerProvider() { - if (_paletteViewerProvider == null) { - if (_paletteViewerPageFactory != null) { - _paletteViewerProvider = _paletteViewerPageFactory.createPaletteViewerProvider(getEditDomain()); - } - if (_paletteViewerProvider == null) {//if still null - return new DesignerPaletteViewerProvider(getEditDomain()) { - protected void configurePaletteViewer(PaletteViewer viewer) { - super.configurePaletteViewer(viewer); - viewer.setCustomizer(new DesignerPaletteCustomizer()); - - // create a drag source listener for this palette viewer - // together with an appropriate transfer drop target listener, - // this will enable - // model element creation by dragging a - // CombinatedTemplateCreationEntries - // from the palette into the editor - // @see ShapesEditor#createTransferDropTargetListener() - viewer - .addDragSourceListener(new TemplateTransferDragSourceListener( - viewer)); - } - }; - } - } - return _paletteViewerProvider; - } - - /** - * @return the palette viewer page - */ - protected PaletteViewerPage createPaletteViewerPage() { - if (_paletteViewerPageFactory != null) { - _paletteViewerPage = _paletteViewerPageFactory.createPaletteViewerPage(createPaletteViewerProvider()); - } - if (_paletteViewerPage == null) { - DefaultEditDomain editDomain = getEditDomain(); -// PaletteItemManager manager = PaletteItemManager -// .getInstance(getCurrentFile(getEditorInput())); -// manager.reset(); - PaletteRoot paletteRoot = getPaletteRoot(); - editDomain.setPaletteRoot(paletteRoot); - -// _paletteViewerPage = (PaletteViewerPage) super.getAdapter(PalettePage.class); - // if possible, try to use the - if (_paletteViewerPage == null) - { - PaletteViewerProvider provider = getPaletteViewerProvider2(); - _paletteViewerPage = new PaletteViewerPage(provider); - } - } - return _paletteViewerPage; - } - - PaletteViewerProvider getPaletteViewerProvider2() - { - return getPaletteViewerProvider(); - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.jst.pagedesigner.editors.IDesignViewer#getGraphicViewer() - */ - public IHTMLGraphicalViewer getGraphicViewer() { - return _viewer; - } - - /** - * @return the html editor delegate - */ - public HTMLEditor getHTMLEditor() { - return _delegate; - } - -// private IProject getCurrentProject(IEditorInput input) { -// IProject curProject = null; -// IFile inputFile = null; -// if (input instanceof IFileEditorInput) { -// inputFile = ((IFileEditorInput) input).getFile(); -// curProject = inputFile.getProject(); -// } -// return curProject; -// } - - private IFile getCurrentFile(IEditorInput input) { - IFile inputFile = null; - if (input instanceof IFileEditorInput) { - inputFile = ((IFileEditorInput) input).getFile(); - } - return inputFile; - } - /* - * (non-Javadoc) - * - * @see org.eclipse.ui.ISelectionListener#selectionChanged(org.eclipse.ui.IWorkbenchPart, - * org.eclipse.jface.viewers.ISelection) - */ - public void selectionChanged(IWorkbenchPart part, ISelection selection) { - if (_viewer != null) { - GraphicalViewer viewerViewer = getGraphicalViewer(); - if (viewerViewer != null && viewerViewer.getControl() != null - && viewerViewer.getControl().isFocusControl()) { - updateActions(getSelectionActions()); - if (selection instanceof IStructuredSelection && // - !(((IStructuredSelection) selection).getFirstElement() instanceof DocumentEditPart)) { - ((IHTMLGraphicalViewer) viewerViewer) - .updateRangeSelection(selection); - } - } - } else { - super.selectionChanged(part, selection); - } - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.wst.sse.core.internal.undo.IDocumentSelectionMediator#getDocument() - */ - public IDocument getDocument() { - if (_model != null) { - return _model.getStructuredDocument(); - } - return null; - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.wst.sse.core.internal.undo.IDocumentSelectionMediator#undoOperationSelectionChanged(org.eclipse.wst.sse.core.internal.undo.UndoDocumentEvent) - */ - public void undoOperationSelectionChanged(UndoDocumentEvent event) { - IDocumentSelectionMediator requester = event.getRequester(); - if (this == requester) { - // ok, the undo/redo operation is initialized by designer page. - // we should set selection in designer. - // However, when this method is called, the modelChanged event is - // not fired yet, so the - // editpart hasn't refreshed yet. So we register a - // modelStateListener, and do the selection - // in modelChangedEvent. (lium) - final int offset = event.getOffset(); - final int length = event.getLength(); - - _model.addModelStateListener(new IModelStateListener() { - public void modelAboutToBeChanged(IStructuredModel model) { - // nothing to do - } - - public void modelChanged(IStructuredModel model) { - _model.removeModelStateListener(this); - ISelection sel = SelectionHelper - .convertToDesignerSelection(getGraphicViewer(), - offset, length); - if (sel != null) { - getGraphicViewer().setSelection(sel); - } - } - - public void modelDirtyStateChanged(IStructuredModel model, - boolean isDirty) { - // do nothing - } - - public void modelResourceDeleted(IStructuredModel model) { - // do nothign - } - - public void modelResourceMoved(IStructuredModel oldModel, - IStructuredModel newModel) { - // do nothing - } - - public void modelAboutToBeReinitialized( - IStructuredModel structuredModel) { - // do nothing - } - - public void modelReinitialized(IStructuredModel structuredModel) { - // do nothing - } - }); - } - } - - private final class ContextMenuListener implements IMenuListener - { - public void menuAboutToShow(IMenuManager menuMgr1) - { - // add standarized sub-menus - addEditSubMenu(menuMgr1); - addSelectSubMenu(menuMgr1); - addInsertSubMenu(menuMgr1); - /* - * Bug 172959 - [WPE] WPE context menu Navigate->Java->Value doesn't work.. - * - addNavigateSubMenu(menuMgr1); - */ - addStyleSubMenu(menuMgr1); - - // add separators that mark standard append locations in the main - // context menu - PageDesignerActionConstants.addStandardActionGroups(menuMgr1); - - // TODO: Run/Debug? - - // insert ElementEdit contributed menu items - final ContainerActionGroup containerActionGroup = - new ContainerActionGroup(); - ActionContext context = new ActionContext(_viewer - .getSelection()); - context.setInput(_viewer); - containerActionGroup.setContext(context); - containerActionGroup.fillContextMenu(menuMgr1); - containerActionGroup.setContext(null); - - // TODO: TableActionGroup - - // if on a text context, (instead of a ElementEditPart), - // add text styling actions - final RangeActionGroup rangeActionGroup = new RangeActionGroup(); - context = new ActionContext(_viewer.getSelection()); - context.setInput(_viewer); - rangeActionGroup.setContext(context); - rangeActionGroup.fillContextMenu(menuMgr1); - rangeActionGroup.setContext(null); - - // Add actions for single ElementEditPart's that are common - // to all - final SingleElementActionGroup singleActionGroup = - new SingleElementActionGroup(); - singleActionGroup.setContext(new ActionContext(_viewer - .getSelection())); - singleActionGroup.fillContextMenu(menuMgr1); - singleActionGroup.setContext(null); - - // add "Show In" actions... - final RelatedViewActionGroup viewMenu = new RelatedViewActionGroup(getEditDomain()); - context = new ActionContext(_viewer.getSelection()); - viewMenu.setContext(context); - viewMenu.fillContextMenu(menuMgr1); - - // add extension point contributed menu actions - CustomedContextMenuActionGroup customedMenu = new CustomedContextMenuActionGroup(); - customedMenu.setContext(new ActionContext(_viewer - .getSelection())); - customedMenu.setModel(_model); - customedMenu.setParentControl(_viewer.getControl()); - customedMenu.fillContextMenu(menuMgr1); - customedMenu.setContext(null); - customedMenu.setParentControl(null); - customedMenu.setModel(null); - - //add skins menu - IEditorInput editorInput = _delegate.getEditorInput(); - if (editorInput instanceof IFileEditorInput) { - IFile file = ((IFileEditorInput)editorInput).getFile(); - IProject project = file.getProject(); - if (project != null) { - SkinsMenuItemBuilder builder = new SkinsMenuItemBuilder(project); - builder.buildMenuManagers(menuMgr1); - } - } - } - - /* - * Bug 172959 - [WPE] WPE context menu Navigate->Java->Value doesn't work.. - * - private void addNavigateSubMenu(IMenuManager menu) { - final IMenuManager navigateSubmenu = - new MenuManager(ActionsMessages.getString("Navigate.Menu") //$NON-NLS-1$ - , PageDesignerActionConstants.NAVIGATE_SUBMENU_ID); - menu.add(navigateSubmenu); - PageDesignerActionConstants.addStandardNavigateActionGroups(navigateSubmenu); - } - */ - - private void addEditSubMenu(IMenuManager menu) - { - final IMenuManager editSubmenu - = new MenuManager(ActionsMessages.getString("Edit.Menu") //$NON-NLS-1$ - , PageDesignerActionConstants.EDIT_SUBMENU_ID); - menu.add(editSubmenu); - PageDesignerActionConstants.addStandardEditActionGroups(editSubmenu); - - // FIXME: for UNDO/REDO, maybe need also wrap them in - // DesignerCommand. - // otherwise don't have validate() called after the source - // change. - editSubmenu.appendToGroup(PageDesignerActionConstants.GROUP_UNDO, - getAction(IWorkbenchCommandConstants.EDIT_UNDO)); - editSubmenu.appendToGroup(PageDesignerActionConstants.GROUP_UNDO, - getAction(IWorkbenchCommandConstants.EDIT_REDO)); - - editSubmenu.appendToGroup(PageDesignerActionConstants.GROUP_EDIT, - getAction(IWorkbenchCommandConstants.EDIT_CUT)); - editSubmenu.appendToGroup(PageDesignerActionConstants.GROUP_EDIT, - getAction(IWorkbenchCommandConstants.EDIT_COPY)); - editSubmenu.appendToGroup(PageDesignerActionConstants.GROUP_EDIT, - getAction(IWorkbenchCommandConstants.EDIT_PASTE)); - editSubmenu.appendToGroup(PageDesignerActionConstants.GROUP_EDIT, - getAction(IWorkbenchCommandConstants.EDIT_DELETE)); - - } - - private void addStyleSubMenu(IMenuManager menu) - { - final IMenuManager styleSubmenu = - new MenuManager(ActionsMessages.getString("Style.Menu") //$NON-NLS-1$ - , PageDesignerActionConstants.STYLE_SUBMENU_ID); - menu.add(styleSubmenu); - PageDesignerActionConstants.addStandardStyleActionGroups(styleSubmenu); - } - private void addInsertSubMenu(IMenuManager menu) { - final IMenuManager insertSubmenu = - new MenuManager(ActionsMessages.getString("Insert.Menu") //$NON-NLS-1$ - , PageDesignerActionConstants.INSERT_SUBMENU_ID); - menu.add(insertSubmenu); - PageDesignerActionConstants.addStandardInsertActionGroups(insertSubmenu); - } - - private void addSelectSubMenu(IMenuManager menu) - { - final IMenuManager selectSubMenu = - new MenuManager(ActionsMessages.getString("Select.Menu") //$NON-NLS-1$ - , PageDesignerActionConstants.SELECT_SUBMENU_ID); - menu.add(selectSubMenu); - PageDesignerActionConstants.addStandardSelectActionGroups(selectSubMenu); - } - } - - - /** - * @return the palette viewer page - */ - public PaletteViewerPage getPaletteViewerPage() { - if (_paletteViewerPage == null) { - _paletteViewerPage = createPaletteViewerPage(); - } - return _paletteViewerPage; - } - - /** - * @return the palette factory - */ - protected IPaletteFactory initPaletteFactory() - { - if (_paletteViewerPageFactory == null) { - //List<IElementEditFactory> result = new ArrayList<IElementEditFactory>(); - IExtensionPoint extensionPoint = Platform.getExtensionRegistry() - .getExtensionPoint(PDPlugin.getPluginId(), - IJMTConstants.EXTENSION_POINT_PAGEDESIGNER); - IExtension[] extensions = extensionPoint.getExtensions(); - - for (int i = 0; i < extensions.length; i++) - { - IExtension ext = extensions[i]; - IConfigurationElement[] elementEditElement = ext - .getConfigurationElements(); - - for (int j = 0; j < elementEditElement.length; j++) - { - final IConfigurationElement element = elementEditElement[j]; - if (element.getName().equals( - IJMTConstants.PALETTE_FACTORY)) - { - elementEditElement[j].getAttribute("class"); //$NON-NLS-1$ - Object obj; - try - { - obj = elementEditElement[j] - .createExecutableExtension("class"); //$NON-NLS-1$ - - // TODO: we need a policy based solution here, - // but this will do for now - if (obj instanceof IPaletteFactory) - { - _paletteViewerPageFactory = (IPaletteFactory) obj; - } - } - catch (CoreException e) - { - PDPlugin.log("Problem loading element edit extension for "+element.toString(), e); //$NON-NLS-1$ - } - } - } - } - } - return _paletteViewerPageFactory; - } -// -// @Override -// public Object getAdapter(Class type) { -// if (type == PalettePage.class) { -// return getPaletteViewerPage(); -// } -// return super.getAdapter(type); -// } - - - -} diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/actions/ActionsMessages.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/actions/ActionsMessages.java deleted file mode 100644 index b5da9485e..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/actions/ActionsMessages.java +++ /dev/null @@ -1,42 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2006 Sybase, Inc. 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: - * Sybase, Inc. - initial API and implementation - *******************************************************************************/ -package org.eclipse.jst.pagedesigner.editors.actions; - -import java.util.MissingResourceException; -import java.util.ResourceBundle; - -/** - * @author mengbo - * @version 1.5 - */ -public class ActionsMessages { - private static final String BUNDLE_NAME = "org.eclipse.jst.pagedesigner.editors.actions.ActionsMessages"; //$NON-NLS-1$ - - private static final ResourceBundle RESOURCE_BUNDLE = ResourceBundle - .getBundle(BUNDLE_NAME); - - private ActionsMessages() { - // no external instantiation - } - - /** - * @param key - * @return the resource for the key - */ - public static String getString(String key) { - try { - return RESOURCE_BUNDLE.getString(key); - } catch (MissingResourceException e) { - return '!' + key + '!'; - } - } -} diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/actions/ActionsMessages.properties b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/actions/ActionsMessages.properties deleted file mode 100644 index d57d3c14f..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/actions/ActionsMessages.properties +++ /dev/null @@ -1,44 +0,0 @@ -############################################################################### -# Copyright (c) 2001, 2007 Oracle 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: -# Oracle Corporation - initial API and implementation -############################################################################### -DesignActionBarFactory.Underline=Underline -DesignActionBarFactory.Italic=Italic -DesignActionBarFactory.Bold=Bold -DesignActionBarFactory.Small=Small -DesignActionBarFactory.Big=Big -DesignActionBarFactory.Paragraph=Paragraph -DesignActionBarFactory.Underline.Text=Underline -DesignActionBarFactory.Italic.Text=Italic -DesignActionBarFactory.Bold.Text=Bold -DesignActionBarFactory.Small.Text=Small -DesignActionBarFactory.Big.Text=Big -PaletteViewAction.Menu.PaletteView=Palette -RelatedViewActionGroup.Menu.ShowView=Show -PropertiesViewAction.Menu.Properties=Properties -DataBindingViewAction.Menu.DataBinding=DataBinding -OutlineViewAction.Menu.OutlineView=Outline -DesignerStyleActionGroup.CommandLabel.V=V -DesignerStyleActionGroup.CommandLabel.H=H -DesignerStyleActionGroup.CommandLabel.D=D -DesignerStyleActionGroup.CommandLabel.S=S -DesignerStyleActionGroup.CommandLabel.V.Tooltip=Show Design Page and Source Page as Horizontal Panes -DesignerStyleActionGroup.CommandLabel.H.Tooltip=Show Design Page and Source Page as Vertical Panes -DesignerStyleActionGroup.CommandLabel.D.Tooltip=Only Show Design Page -DesignerStyleActionGroup.CommandLabel.S.Tooltip=Only Show Source Page -DesignerUndoRedoAction.UNDO=Undo -DesignerUndoRedoAction.REDO=Redo -DesignerUndoRedoAction.UNDO_LABEL=Undo {0} -DesignerUndoRedoAction.REDO_LABEL=Redo {0} -Select.Menu=Select -Edit.Menu=Edit -Navigate.Menu=Navigate -Style.Menu=Style -Insert.Menu=Insert -ManageSkinsAction.Text=Manage Skins diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/actions/ChangeStyleAction.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/actions/ChangeStyleAction.java deleted file mode 100644 index 70e5a6813..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/actions/ChangeStyleAction.java +++ /dev/null @@ -1,206 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2006 Sybase, Inc. 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: - * Sybase, Inc. - initial API and implementation - *******************************************************************************/ -package org.eclipse.jst.pagedesigner.editors.actions; - -import org.eclipse.jface.action.Action; -import org.eclipse.jface.resource.ImageDescriptor; -import org.eclipse.jface.viewers.SelectionChangedEvent; -import org.eclipse.jst.pagedesigner.commands.DesignerCommand; -import org.eclipse.jst.pagedesigner.commands.range.ApplyStyleCommand; -import org.eclipse.jst.pagedesigner.range.RangeUtil; -import org.eclipse.jst.pagedesigner.viewer.DesignRange; -import org.eclipse.jst.pagedesigner.viewer.HTMLGraphicalViewerListenenerAdapter; -import org.eclipse.jst.pagedesigner.viewer.IHTMLGraphicalViewer; -import org.eclipse.jst.pagedesigner.viewer.IHTMLGraphicalViewerListener; -import org.eclipse.ui.texteditor.IUpdate; - -/** - * @author mengbo - */ -public abstract class ChangeStyleAction extends Action implements IUpdate { - private IHTMLGraphicalViewer _viewer; - - private String _expectedTag; - - private IHTMLGraphicalViewerListener _listener = new HTMLGraphicalViewerListenenerAdapter() - { - /* - * (non-Javadoc) - * - * @see org.eclipse.jst.pagedesigner.viewer.IHTMLGraphicalViewerListener#selectionChangeFinished() - */ - public void selectionChangeFinished() { - update(); - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.jface.viewers.ISelectionChangedListener#selectionChanged(org.eclipse.jface.viewers.SelectionChangedEvent) - */ - public void selectionChanged(SelectionChangedEvent event) { - update(); - } - }; - - /** - * @param text - * @param name - * @param image - * @param style - */ - public ChangeStyleAction(String text, String name, ImageDescriptor image, - int style) { - super(text, style); - _expectedTag = name; - this.setImageDescriptor(image); - } - - /** - * @param viewer - */ - public void setViewer(IHTMLGraphicalViewer viewer) { - if (viewer == _viewer) { - return; - } - if (_viewer != null) { - _viewer.removeHTMLViewerListener(_listener); - } - _viewer = viewer; - if (_viewer != null) { - _viewer.addHTMLViewerListener(_listener); - } - update(); - } - - /** - * - */ - public void update() - { - boolean update = checkForUpdateAndMaybeDisableState(); - - if (update) - { - updateState(); - } - } - - /** - * Update the state - */ - protected void updateState() - { - DesignRange range = _viewer.getRangeSelection(); - updateStatus(RangeUtil.normalize(range)); - } - - /** - * Update the checked/enabled state - * @return true if we should update status - */ - protected final boolean checkForUpdateAndMaybeDisableState() - { - if (_viewer == null) { - this.setChecked(false); - this.setEnabled(false); - return false; - } - if (!_viewer.isInRangeMode()) { - // XXX: later we may support in range mode. - this.setChecked(false); - this.setEnabled(false); - return false; - } - DesignRange range = _viewer.getRangeSelection(); - if (range == null || !range.isValid()) { - this.setChecked(false); - this.setEnabled(false); - return false; - } - return true; - } - - - /** - * @return the viewer's current design range - */ - protected final DesignRange getDesignRange() - { - return _viewer.getRangeSelection(); - } - /** - * @param range - */ - private void updateStatus(DesignRange range) { - if (range.isEmpty()) { - this.setEnabled(false); - this.setChecked(false); // FIXME: not handling checked status yet. - } else { - this.setEnabled(true); - this.setChecked(false); - } - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.jface.action.Action#run() - */ - public void run() { - if (_viewer == null || !_viewer.isInRangeMode()) { - return; - } - DesignRange range = _viewer.getRangeSelection(); - if (range == null || !range.isValid()) { - return; - } - if (range.isEmpty()) - return; // nothing to do to empty range. - - // if currently checked, means unapply the style. If current not - // checked, means apply the style - boolean apply = !this.isChecked(); - if (apply) { - applyStyle(); - } else { - // not supported yet. - } - } - - /** - * - */ - private void applyStyle() { - DesignerCommand command = new ApplyStyleCommand(_viewer, - getExpectedTag(), getExpectedCSSProperty(), - getExpectedCSSPropertyValue()); - command.execute(); - } - - /** - * @return the expected property value - */ - protected abstract String getExpectedCSSPropertyValue(); - - /** - * @return the expected property - */ - protected abstract String getExpectedCSSProperty(); - - /** - * @return the expected tag - */ - protected String getExpectedTag() { - return _expectedTag; - } -} diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/actions/DataBindingViewAction.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/actions/DataBindingViewAction.java deleted file mode 100644 index 1b2032d68..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/actions/DataBindingViewAction.java +++ /dev/null @@ -1,59 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2006 Sybase, Inc. 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: - * Sybase, Inc. - initial API and implementation - *******************************************************************************/ -package org.eclipse.jst.pagedesigner.editors.actions; - -import org.eclipse.jface.action.Action; -import org.eclipse.jst.jsf.common.ui.internal.logging.Logger; -import org.eclipse.jst.pagedesigner.PDPlugin; -import org.eclipse.ui.IWorkbench; -import org.eclipse.ui.IWorkbenchPage; -import org.eclipse.ui.IWorkbenchWindow; -import org.eclipse.ui.PartInitException; -import org.eclipse.ui.PlatformUI; - -/** - * @author mengbo - * @version 1.5 - */ -public class DataBindingViewAction extends Action { - - private static Logger _log = PDPlugin - .getLogger(DataBindingViewAction.class); - - /** - * Default constructor - */ - public DataBindingViewAction() { - setText(ActionsMessages - .getString("DataBindingViewAction.Menu.DataBinding")); //$NON-NLS-1$ - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.jface.action.IAction#run() - */ - public void run() { - try { - getPage().showView( - "org.eclipse.jst.pagedesigner.databinding.ui.views.DataBindingsView");//$NON-NLS-1$ - } catch (PartInitException e) { - _log.error("Error opening the DataBindingView"); //$NON-NLS-1$ - } - } - - private IWorkbenchPage getPage() { - IWorkbench workbench = PlatformUI.getWorkbench(); - IWorkbenchWindow window = workbench.getActiveWorkbenchWindow(); - return window.getActivePage(); - } -} diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/actions/DesignActionBarFactory.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/actions/DesignActionBarFactory.java deleted file mode 100644 index 1a3c1b430..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/actions/DesignActionBarFactory.java +++ /dev/null @@ -1,122 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2006 Sybase, Inc. 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: - * Sybase, Inc. - initial API and implementation - *******************************************************************************/ -package org.eclipse.jst.pagedesigner.editors.actions; - -import org.eclipse.jface.action.IAction; -import org.eclipse.jst.pagedesigner.IHTMLConstants; -import org.eclipse.jst.pagedesigner.PDPlugin; -import org.eclipse.jst.pagedesigner.actions.range.ChangeStyleAction; -import org.eclipse.jst.pagedesigner.actions.range.DesignerToolBarAction; -import org.eclipse.jst.pagedesigner.actions.range.HTagsInsertGroupAction; - -/** - * @author mengbo - */ -public class DesignActionBarFactory { - - private static final String TOOLBAR_PARAGRAPH_IMAGE_FILE = "PD_Toolbar_paragraph.gif"; //$NON-NLS-1$ - private static final String TOOLBAR_LARGEFONT_DISABLED_IMAGE_FILE = "PD_Toolbar_largefont_disabled.gif"; //$NON-NLS-1$ - private static final String TOOLBAR_LARGEFONT_IMAGE_FILE = "PD_Toolbar_largefont.gif"; //$NON-NLS-1$ - private static final String TOOLBAR_SMALLFONT_DISABLED_IMAGE_FILE = "PD_Toolbar_smallfont_disabled.gif"; //$NON-NLS-1$ - private static final String TOOLBAR_SMALLFONT_IMAGE_FILE = "PD_Toolbar_smallfont.gif"; //$NON-NLS-1$ - private static final String TOOLBAR_BOLD_DISABLED_IMAGE_FILE = "PD_Toolbar_bold_disabled.gif"; //$NON-NLS-1$ - private static final String TOOLBAR_BOLD_IMAGE_FILE = "PD_Toolbar_bold.gif"; //$NON-NLS-1$ - private static final String TOOLBAR_ITALIC_DISABLED_IMAGE_FILE = "PD_Toolbar_italic_disabled.gif"; //$NON-NLS-1$ - private static final String TOOLBAR_ITALIC_IMAGE_FILE = "PD_Toolbar_italic.gif"; //$NON-NLS-1$ - private static final String TOOLBAR_UNDERLINE_DISABLED_IMAGE_FILE = "PD_Toolbar_underline_disabled.gif"; //$NON-NLS-1$ - private static final String TOOLBAR_UNDERLINE_IMAGE_FILE = "PD_Toolbar_underline.gif"; //$NON-NLS-1$ - - private static DesignActionBarFactory _instance; - - private DesignActionBarFactory() { - // no external instantiation - } - - /** - * @return get the factory singleton - */ - public static DesignActionBarFactory getInstance() { - if (_instance == null) { - _instance = new DesignActionBarFactory(); - } - return _instance; - } - - /** - * @param name - * @return the tool bar action - */ - public DesignerToolBarAction getStyleAction(String name) { - DesignerToolBarAction action = null; - - if (name.equals(IHTMLConstants.TAG_U)) { - action = new ChangeStyleAction(ActionsMessages - .getString("DesignActionBarFactory.Underline.Text"), name, //$NON-NLS-1$ - PDPlugin.getDefault().getImageDescriptor( - TOOLBAR_UNDERLINE_IMAGE_FILE), PDPlugin.getDefault() - .getImageDescriptor( - TOOLBAR_UNDERLINE_DISABLED_IMAGE_FILE), - IAction.AS_CHECK_BOX); - action.setToolTipText(ActionsMessages - .getString("DesignActionBarFactory.Underline")); //$NON-NLS-1$ - } else if (name.equals(IHTMLConstants.TAG_I)) { - action = new ChangeStyleAction(ActionsMessages - .getString("DesignActionBarFactory.Italic.Text"), name, //$NON-NLS-1$ - PDPlugin.getDefault().getImageDescriptor( - TOOLBAR_ITALIC_IMAGE_FILE), PDPlugin.getDefault() - .getImageDescriptor( - TOOLBAR_ITALIC_DISABLED_IMAGE_FILE), - IAction.AS_CHECK_BOX); - action.setToolTipText(ActionsMessages - .getString("DesignActionBarFactory.Italic")); //$NON-NLS-1$ - } else if (name.equals(IHTMLConstants.TAG_B)) { - action = new ChangeStyleAction(ActionsMessages - .getString("DesignActionBarFactory.Bold.Text"), name, //$NON-NLS-1$ - PDPlugin.getDefault().getImageDescriptor( - TOOLBAR_BOLD_IMAGE_FILE), - PDPlugin.getDefault().getImageDescriptor( - TOOLBAR_BOLD_DISABLED_IMAGE_FILE), - IAction.AS_CHECK_BOX); - action.setToolTipText(ActionsMessages - .getString("DesignActionBarFactory.Bold")); //$NON-NLS-1$ - } else if (name.equals(IHTMLConstants.TAG_SMALL)) { - action = new ChangeStyleAction(ActionsMessages - .getString("DesignActionBarFactory.Small.Text"), name, //$NON-NLS-1$ - PDPlugin.getDefault().getImageDescriptor( - TOOLBAR_SMALLFONT_IMAGE_FILE), PDPlugin.getDefault() - .getImageDescriptor( - TOOLBAR_SMALLFONT_DISABLED_IMAGE_FILE), - IAction.AS_CHECK_BOX); - action.setToolTipText(ActionsMessages - .getString("DesignActionBarFactory.Small")); //$NON-NLS-1$ - } else if (name.equals(IHTMLConstants.TAG_BIG)) { - action = new ChangeStyleAction(ActionsMessages - .getString("DesignActionBarFactory.Big.Text"), name, //$NON-NLS-1$ - PDPlugin.getDefault().getImageDescriptor( - TOOLBAR_LARGEFONT_IMAGE_FILE), PDPlugin.getDefault() - .getImageDescriptor( - TOOLBAR_LARGEFONT_DISABLED_IMAGE_FILE), - IAction.AS_CHECK_BOX); - action.setToolTipText(ActionsMessages - .getString("DesignActionBarFactory.Big")); //$NON-NLS-1$ - } else if (name - .equalsIgnoreCase(DesignPageActionContributor.PARAGRAPH_ACTION_ID)) { - action = new HTagsInsertGroupAction(PDPlugin.getDefault() - .getImageDescriptor(TOOLBAR_PARAGRAPH_IMAGE_FILE), - IAction.AS_DROP_DOWN_MENU); - action.setToolTipText(ActionsMessages - .getString("DesignActionBarFactory.Paragraph")); //$NON-NLS-1$ - } - - return action; - } -} diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/actions/DesignPageActionContributor.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/actions/DesignPageActionContributor.java deleted file mode 100644 index a1782ec5d..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/actions/DesignPageActionContributor.java +++ /dev/null @@ -1,237 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2006 Sybase, Inc. 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: - * Sybase, Inc. - initial API and implementation - *******************************************************************************/ -package org.eclipse.jst.pagedesigner.editors.actions; - -import org.eclipse.jface.action.Action; -import org.eclipse.jface.action.ActionContributionItem; -import org.eclipse.jface.action.IAction; -import org.eclipse.jface.action.IContributionItem; -import org.eclipse.jface.action.IContributionManager; -import org.eclipse.jface.action.IMenuManager; -import org.eclipse.jface.action.IToolBarManager; -import org.eclipse.jst.jsf.common.ui.internal.logging.Logger; -import org.eclipse.jst.pagedesigner.IHTMLConstants; -import org.eclipse.jst.pagedesigner.PDPlugin; -import org.eclipse.jst.pagedesigner.actions.range.DesignerToolBarAction; -import org.eclipse.jst.pagedesigner.editors.HTMLEditor; -import org.eclipse.jst.pagedesigner.editors.IDesignViewer; -import org.eclipse.jst.pagedesigner.editors.SimpleGraphicalEditor; -import org.eclipse.jst.pagedesigner.viewer.IHTMLGraphicalViewer; -import org.eclipse.ui.IActionBars; -import org.eclipse.ui.IEditorPart; -import org.eclipse.ui.IEditorSite; -import org.eclipse.ui.IWorkbenchCommandConstants; -import org.eclipse.ui.IWorkbenchPage; -import org.eclipse.ui.IWorkbenchPartSite; -import org.eclipse.ui.part.EditorActionBarContributor; -import org.eclipse.ui.texteditor.ITextEditorActionConstants; - -/** - * sub action contributor for the designer page. - * - * @author mengbo - */ -public class DesignPageActionContributor extends EditorActionBarContributor { - private static final Logger _log = PDPlugin - .getLogger(DesignPageActionContributor.class); - - /** - * paragraph - */ - public static final String PARAGRAPH_ACTION_ID = "paragraph"; //$NON-NLS-1$ - - private IEditorPart _editorPart; - - /** - * @param manager - * @param id - */ - protected void doRemove(IContributionManager manager, String id) { - try { - if (manager.find(id) != null) { - manager.remove(id); - } - } catch (Exception e) { - _log.info("Error:", e); //$NON-NLS-1$ - } - } - - public void init(IActionBars bars, IWorkbenchPage page) { - super.init(bars); - init(bars); - } - - public void init(IActionBars bars) { - IToolBarManager toolbar = bars.getToolBarManager(); - initToolbar(toolbar); - } - - /** - * @param toolbar - */ - private void initToolbar(IToolBarManager toolbar) { - DesignActionBarFactory factory = DesignActionBarFactory.getInstance(); - - Action action = factory.getStyleAction(IHTMLConstants.TAG_U); - toolbar.add(action); - - action = factory.getStyleAction(IHTMLConstants.TAG_B); - toolbar.add(action); - - action = factory.getStyleAction(IHTMLConstants.TAG_I); - toolbar.add(action); - - action = factory.getStyleAction(IHTMLConstants.TAG_SMALL); - toolbar.add(action); - - action = factory.getStyleAction(IHTMLConstants.TAG_BIG); - toolbar.add(action); - // action = factory.getStyleAction(PARAGRAPH_ACTION_ID); - // toolbar.add(action); - } - - /** - * @param menuManager - * @param action - * @param id - */ - protected void addActionWithId(IMenuManager menuManager, Action action, - String id) { - action.setId(id); - menuManager.add(action); - } - - /** - * @param enabled - */ - public void setViewerSpecificContributionsEnabled(boolean enabled) { - HTMLEditor htmlEditor = null; - if (_editorPart instanceof HTMLEditor) { - htmlEditor = (HTMLEditor) _editorPart; - } else if (_editorPart instanceof SimpleGraphicalEditor) { - htmlEditor = ((SimpleGraphicalEditor) _editorPart).getHTMLEditor(); - } - - if (htmlEditor == null) - return; - - SimpleGraphicalEditor graphicalEditor = (SimpleGraphicalEditor) htmlEditor - .getDesignViewer(); - IWorkbenchPartSite site = htmlEditor.getSite(); - if (site instanceof IEditorSite) { - IActionBars actionBars = ((IEditorSite) site).getActionBars(); - - if (enabled) { - // // we always let the text editor to handle UNDO and REDO - // actionBars.setGlobalActionHandler(ITextEditorActionConstants.UNDO, - // textEditor - // .getAction(ITextEditorActionConstants.UNDO)); - // actionBars.setGlobalActionHandler(ITextEditorActionConstants.REDO, - // textEditor - // .getAction(ITextEditorActionConstants.REDO)); - // lium: the above behavior changed, since we now use - // DesignerUndoRedoAction. - // see comments in DesignerUndoRedoAction - actionBars.setGlobalActionHandler( - ITextEditorActionConstants.UNDO, graphicalEditor - .getAction(IWorkbenchCommandConstants.EDIT_UNDO)); - actionBars.setGlobalActionHandler( - ITextEditorActionConstants.REDO, graphicalEditor - .getAction(IWorkbenchCommandConstants.EDIT_REDO)); - - // cut/copy/paste is delegated to design actions - actionBars - .setGlobalActionHandler( - ITextEditorActionConstants.DELETE, - graphicalEditor - .getAction(IWorkbenchCommandConstants.EDIT_DELETE)); - actionBars.setGlobalActionHandler( - ITextEditorActionConstants.CUT, graphicalEditor - .getAction(IWorkbenchCommandConstants.EDIT_CUT)); - actionBars.setGlobalActionHandler( - ITextEditorActionConstants.COPY, graphicalEditor - .getAction(IWorkbenchCommandConstants.EDIT_COPY)); - actionBars - .setGlobalActionHandler( - ITextEditorActionConstants.PASTE, - graphicalEditor - .getAction(IWorkbenchCommandConstants.EDIT_PASTE)); - } else { - actionBars.setGlobalActionHandler( - ITextEditorActionConstants.UNDO, null); - actionBars.setGlobalActionHandler( - ITextEditorActionConstants.REDO, null); - - actionBars.setGlobalActionHandler( - ITextEditorActionConstants.DELETE, null); - actionBars.setGlobalActionHandler( - ITextEditorActionConstants.CUT, null); - actionBars.setGlobalActionHandler( - ITextEditorActionConstants.COPY, null); - actionBars.setGlobalActionHandler( - ITextEditorActionConstants.PASTE, null); - } - } - } - - /** - * The active editor passed in could be the following: HTMLEditor, - * SimpleGraphicalEditor, null. - */ - public void setActiveEditor(IEditorPart targetEditor) { - _editorPart = targetEditor; - - // temp code. - if (targetEditor instanceof SimpleGraphicalEditor) { - IHTMLGraphicalViewer graphicalViewer = ((SimpleGraphicalEditor) targetEditor).getGraphicViewer(); - setViewerOnActions(graphicalViewer); - } else if (targetEditor instanceof HTMLEditor) { - //Bug 264080 - getDesignViewer may return null - IDesignViewer designViewer = ((HTMLEditor) targetEditor).getDesignViewer(); - if (designViewer != null) { - IHTMLGraphicalViewer graphicalViewer = designViewer.getGraphicViewer(); - setViewerOnActions(graphicalViewer); - } - } else { - setViewerOnActions(null); - } - - // TODO... uncomment this and investigate NPE - // - // add the cut/copy/paste for text fields - // ActionHandlerPlugin.connectPart(editorPart); - } - - private void setViewerOnActions(IHTMLGraphicalViewer viewer) { - IContributionItem[] items = getActionBars().getToolBarManager() - .getItems(); - if (items != null) { - for (int i = 0; i < items.length; i++) { - if (items[i] instanceof ActionContributionItem) { - IAction action = ((ActionContributionItem) items[i]) - .getAction(); - if (action instanceof DesignerToolBarAction) { - ((DesignerToolBarAction) action).setViewer(viewer); - } - } - } - } - - } - - /** - * @see org.eclipse.ui.IEditorActionBarContributor#dispose() - */ - public void dispose() { - // TODO: anything to dispose? - } -} diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/actions/DesignerStyleActionGroup.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/actions/DesignerStyleActionGroup.java deleted file mode 100644 index 6c121dfb8..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/actions/DesignerStyleActionGroup.java +++ /dev/null @@ -1,243 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2006 Sybase, Inc. 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: - * Sybase, Inc. - initial API and implementation - *******************************************************************************/ -package org.eclipse.jst.pagedesigner.editors.actions; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; - -import org.eclipse.jface.action.Action; -import org.eclipse.jface.action.IAction; -import org.eclipse.jface.action.IToolBarManager; -import org.eclipse.jface.action.Separator; -import org.eclipse.jface.commands.ActionHandler; -import org.eclipse.jface.resource.ImageDescriptor; -import org.eclipse.jst.pagedesigner.PDPlugin; -import org.eclipse.jst.pagedesigner.editors.HTMLEditor; -import org.eclipse.ui.IActionBars; -import org.eclipse.ui.actions.ActionGroup; -import org.eclipse.ui.handlers.IHandlerActivation; -import org.eclipse.ui.handlers.IHandlerService; - -/** - * @author mengbo - * @version 1.5 - */ -public class DesignerStyleActionGroup extends ActionGroup -{ - private static HashMap IMAGE_NAMES = new HashMap(); - - private static final String VERTICAL = ActionsMessages - .getString("DesignerStyleActionGroup.CommandLabel.V"); //$NON-NLS-1$ - - private static final String HORIZONTAL = ActionsMessages - .getString("DesignerStyleActionGroup.CommandLabel.H"); //$NON-NLS-1$ - - private static final String DESIGN = ActionsMessages - .getString("DesignerStyleActionGroup.CommandLabel.D"); //$NON-NLS-1$ - - private static final String SOURCE = ActionsMessages - .getString("DesignerStyleActionGroup.CommandLabel.S"); //$NON-NLS-1$ - - private static final String VERTICAL_TOOLTIP = ActionsMessages - .getString("DesignerStyleActionGroup.CommandLabel.V.Tooltip"); //$NON-NLS-1$ - - private static final String HORIZONTAL_TOOLTIP = ActionsMessages - .getString("DesignerStyleActionGroup.CommandLabel.H.Tooltip"); //$NON-NLS-1$ - - private static final String DESIGN_TOOLTIP = ActionsMessages - .getString("DesignerStyleActionGroup.CommandLabel.D.Tooltip"); //$NON-NLS-1$ - - private static final String SOURCE_TOOLTIP = ActionsMessages - .getString("DesignerStyleActionGroup.CommandLabel.S.Tooltip"); //$NON-NLS-1$ - static { - IMAGE_NAMES.put(VERTICAL, "PD_Toolbar_vsplit.gif"); //$NON-NLS-1$ - IMAGE_NAMES.put(HORIZONTAL, "PD_Toolbar_hsplit.gif"); //$NON-NLS-1$ - IMAGE_NAMES.put(DESIGN, "PD_Toolbar_designer.gif"); //$NON-NLS-1$ - IMAGE_NAMES.put(SOURCE, "PD_Toolbar_source.gif"); //$NON-NLS-1$ - } - - private class ChangeDesignerStyleAction extends Action { - int _mode; - - ChangeDesignerStyleAction(String actionId, String text, ImageDescriptor image, int mode) { - super(text, IAction.AS_RADIO_BUTTON); - this.setImageDescriptor(image); - _mode = mode; - setId(actionId); - } - - /** - * @return the mode - */ - public int getMode() { - return _mode; - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.jface.action.Action#run() - */ - public void run() { - //final IWorkbenchPart editorPart = getActivePart(); - if (_htmlEditor != null) { - _htmlEditor.setDesignerMode(_mode); - updateActionBars(); - } - } - - }; - - private HTMLEditor _htmlEditor; - - private final ChangeDesignerStyleAction[] _actions; - - private final List<ActionHandler> _actionHandlers; - - private final List<IHandlerActivation> _handlers; - - /** - * constructor - */ - public DesignerStyleActionGroup() - { - ChangeDesignerStyleAction verAction = new ChangeDesignerStyleAction( - "org.eclipse.jst.pagedesigner.vertical", //$NON-NLS-1$ - VERTICAL, PDPlugin.getDefault().getImageDescriptor( - (String) IMAGE_NAMES.get(VERTICAL)), - HTMLEditor.MODE_SASH_VERTICAL); - verAction - .setActionDefinitionId("org.eclipse.jst.pagedesigner.vertical"); //$NON-NLS-1$ - verAction.setToolTipText(VERTICAL_TOOLTIP); - - ChangeDesignerStyleAction horAction = new ChangeDesignerStyleAction( - "org.eclipse.jst.pagedesigner.horizotal", //$NON-NLS-1$ - HORIZONTAL, PDPlugin.getDefault().getImageDescriptor( - (String) IMAGE_NAMES.get(HORIZONTAL)), - HTMLEditor.MODE_SASH_HORIZONTAL); - horAction - .setActionDefinitionId("org.eclipse.jst.pagedesigner.horizotal"); //$NON-NLS-1$ - horAction.setToolTipText(HORIZONTAL_TOOLTIP); - - ChangeDesignerStyleAction designAction = new ChangeDesignerStyleAction( - "org.eclipse.jst.pagedesigner.design", //$NON-NLS-1$ - DESIGN, PDPlugin.getDefault().getImageDescriptor( - (String) IMAGE_NAMES.get(DESIGN)), - HTMLEditor.MODE_DESIGNER); - designAction - .setActionDefinitionId("org.eclipse.jst.pagedesigner.design"); //$NON-NLS-1$ - designAction.setToolTipText(DESIGN_TOOLTIP); - - ChangeDesignerStyleAction sourceAction = new ChangeDesignerStyleAction( - "org.eclipse.jst.pagedesigner.source", //$NON-NLS-1$ - SOURCE, PDPlugin.getDefault().getImageDescriptor( - (String) IMAGE_NAMES.get(SOURCE)), - HTMLEditor.MODE_SOURCE); - sourceAction - .setActionDefinitionId("org.eclipse.jst.pagedesigner.source"); //$NON-NLS-1$ - sourceAction.setToolTipText(SOURCE_TOOLTIP); - - _actions = new ChangeDesignerStyleAction[] { verAction, horAction, - designAction, sourceAction }; - _actionHandlers = new ArrayList<ActionHandler>(); - for (int i = 0; i < _actions.length; i++) - { - _actionHandlers.add(new ActionHandler(_actions[i])); - } - _handlers = new ArrayList<IHandlerActivation>(); - } - - - public void updateActionBars() { - if (_htmlEditor == null) { - for (int i = 0; i < _actions.length; i++) { - _actions[i].setEnabled(false); - } - } else { - for (int i = 0; i < _actions.length; i++) { - _actions[i].setEnabled(true); - _actions[i].setChecked(_actions[i].getMode() == _htmlEditor - .getDesignerMode()); - } - } - } - - /** - * @param editor - */ - public void setHTMLEditor(HTMLEditor editor) - { - if (_htmlEditor != editor) - { - if (_htmlEditor != null) - { - deactivateHandlers(); - } - - this._htmlEditor = editor; - if (_htmlEditor != null) - { - activateHandlers(); - } - updateActionBars(); - } - } - - private void deactivateHandlers() - { - final IHandlerService service = (IHandlerService) _htmlEditor.getSite() - .getService(IHandlerService.class); - if (service != null) - { - for (final IHandlerActivation activation : _handlers) - { - service.deactivateHandler(activation); - } - } - _handlers.clear(); - } - - private void activateHandlers() - { - final IHandlerService service = (IHandlerService) _htmlEditor.getSite() - .getService(IHandlerService.class); - for (int i = 0; i < _actions.length; i++) - { - _handlers.add(service.activateHandler(_actions[i].getId(), _actionHandlers.get(i))); - } - } - - /** - * @param actionBars - */ - public void fillActionBars(IActionBars actionBars) - { - IToolBarManager toolbar = actionBars.getToolBarManager(); - for (int i = 0; i < _actions.length; i++) - { - toolbar.add(_actions[i]); - } - toolbar.add(new Separator()); - } - - /** - * dispose the action - */ - public void dispose() - { - for (final ActionHandler actionHandler : _actionHandlers) - { - actionHandler.dispose(); - } - } -} diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/actions/DesignerUndoRedoAction.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/actions/DesignerUndoRedoAction.java deleted file mode 100644 index 3d563acdf..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/actions/DesignerUndoRedoAction.java +++ /dev/null @@ -1,109 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2006 Sybase, Inc. 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: - * Sybase, Inc. - initial API and implementation - *******************************************************************************/ -package org.eclipse.jst.pagedesigner.editors.actions; - -import java.text.MessageFormat; - -import org.eclipse.emf.common.command.Command; -import org.eclipse.gef.ui.actions.UpdateAction; -import org.eclipse.jface.action.Action; -import org.eclipse.jst.pagedesigner.editors.SimpleGraphicalEditor; -import org.eclipse.wst.sse.core.internal.undo.IStructuredTextUndoManager; - -/** - * SSE has a IDocumentSelectionMediator mechanism, basically it let the viewer - * that invoke the redo/undo to reset the selection after redo/undo. - * - * To utilize this feature, we can't directly use the undo/redo action of the - * text editor for the designer, since in that way it will be the TextEditor to - * handle selection after redo/undo. - * - * @author mengbo - * @version 1.5 - */ -public class DesignerUndoRedoAction extends Action implements UpdateAction { - private boolean _undo = true; // if false means redo - - private final SimpleGraphicalEditor _designer; - - /** - * @param undo - * @param designer - * - */ - public DesignerUndoRedoAction(boolean undo, SimpleGraphicalEditor designer) { - this._undo = undo; - this._designer = designer; - - if (undo) { - setText(ActionsMessages.getString("DesignerUndoRedoAction.UNDO")); //$NON-NLS-1$ - } else { - setText(ActionsMessages.getString("DesignerUndoRedoAction.REDO")); //$NON-NLS-1$ - } - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.gef.ui.actions.UpdateAction#update() - */ - public void update() { - IStructuredTextUndoManager undoManager = _designer.getHTMLEditor() - .getModel().getUndoManager(); - if (_undo) { - Command c = undoManager.getUndoCommand(); - this.setEnabled(undoManager.undoable()); - if (c != null) { - String label = c.getLabel(); - this - .setText(MessageFormat - .format( - ActionsMessages - .getString("DesignerUndoRedoAction.UNDO_LABEL"), new Object[] { label })); //$NON-NLS-1$ - } else { - this.setText(ActionsMessages - .getString("DesignerUndoRedoAction.UNDO")); //$NON-NLS-1$ - } - } else { - Command c = undoManager.getRedoCommand(); - this.setEnabled(undoManager.redoable()); - if (c != null) { - String label = c.getLabel(); - this - .setText(MessageFormat - .format( - ActionsMessages - .getString("DesignerUndoRedoAction.REDO_LABEL"), new Object[] { label })); //$NON-NLS-1$ - } else { - this.setText(ActionsMessages - .getString("DesignerUndoRedoAction.REDO")); //$NON-NLS-1$ - } - } - - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.jface.action.Action#run() - */ - public void run() { - IStructuredTextUndoManager undoManager = _designer.getHTMLEditor() - .getModel().getUndoManager(); - if (_undo) { - undoManager.undo(_designer); - } else { - undoManager.redo(_designer); - } - } - -} diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/actions/ManageSkinsAction.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/actions/ManageSkinsAction.java deleted file mode 100644 index 4a9a79d44..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/actions/ManageSkinsAction.java +++ /dev/null @@ -1,181 +0,0 @@ -package org.eclipse.jst.pagedesigner.editors.actions; - -import org.eclipse.core.resources.IFile; -import org.eclipse.core.resources.IProject; -import org.eclipse.jface.action.Action; -import org.eclipse.jface.action.IMenuCreator; -import org.eclipse.jface.preference.PreferenceDialog; -import org.eclipse.jface.viewers.ISelection; -import org.eclipse.jface.viewers.ISelectionChangedListener; -import org.eclipse.jface.viewers.ISelectionProvider; -import org.eclipse.jface.viewers.StructuredSelection; -import org.eclipse.jst.pagedesigner.PDPlugin; -import org.eclipse.jst.pagedesigner.editors.HTMLEditor; -import org.eclipse.swt.SWT; -import org.eclipse.swt.events.SelectionEvent; -import org.eclipse.swt.events.SelectionListener; -import org.eclipse.swt.widgets.Control; -import org.eclipse.swt.widgets.Menu; -import org.eclipse.swt.widgets.MenuItem; -import org.eclipse.ui.IEditorInput; -import org.eclipse.ui.IEditorPart; -import org.eclipse.ui.IFileEditorInput; -import org.eclipse.ui.dialogs.PropertyDialogAction; -import org.eclipse.ui.internal.Workbench; - -/** - * Action to change the current DT skin. - * - * @author Ian Trimble - Oracle - */ -public class ManageSkinsAction extends Action { - - /** - * Constructs an instance. - */ - public ManageSkinsAction() { - super(ActionsMessages.getString("ManageSkinsAction.Text"), AS_DROP_DOWN_MENU); //$NON-NLS-1$ - setImageDescriptor(PDPlugin.getDefault().getImageDescriptor("skin.png")); //$NON-NLS-1$ - } - - /* (non-Javadoc) - * @see org.eclipse.jface.action.Action#run() - */ - @Override - public void run() { - IEditorPart editorPart = Workbench.getInstance().getActiveWorkbenchWindow().getActivePage().getActiveEditor(); - if (editorPart instanceof HTMLEditor) { - IEditorInput editorInput = editorPart.getEditorInput(); - if (editorInput instanceof IFileEditorInput) { - IFile file = ((IFileEditorInput)editorInput).getFile(); - IProject project = file.getProject(); - if (project != null) { - SelectionProvider selectionProvider = new SelectionProvider(); - selectionProvider.setSelection(new StructuredSelection(project)); - PropertyDialogAction propertyDialogAction = new PropertyDialogAction(editorPart.getEditorSite(), selectionProvider); - PreferenceDialog dialog = propertyDialogAction.createDialog(); - if (dialog != null) { - dialog.setSelectedNode("org.eclipse.jst.pagedesigner.WPEPropertyPage"); //$NON-NLS-1$ - //yes, we create AGAIN - cannot find another way to get the selected node to stick - dialog = propertyDialogAction.createDialog(); - if (dialog != null) { - dialog.open(); - } - } - } - } - } - } - - /* (non-Javadoc) - * @see org.eclipse.jface.action.Action#getMenuCreator() - */ - @Override - public IMenuCreator getMenuCreator() { - return new MenuCreator(); - } - - - - /** - * Simple selection provider for creation of the property dialog. - */ - private class SelectionProvider implements ISelectionProvider { - private ISelection selection; - /* - * (non-Javadoc) - * @see org.eclipse.jface.viewers.ISelectionProvider#addSelectionChangedListener(org.eclipse.jface.viewers.ISelectionChangedListener) - */ - public void addSelectionChangedListener(ISelectionChangedListener listener) { - //do nothing - we don't care here - } - /* - * (non-Javadoc) - * @see org.eclipse.jface.viewers.ISelectionProvider#removeSelectionChangedListener(org.eclipse.jface.viewers.ISelectionChangedListener) - */ - public void removeSelectionChangedListener(ISelectionChangedListener listener) { - //do nothing - we don't care here - } - /* - * (non-Javadoc) - * @see org.eclipse.jface.viewers.ISelectionProvider#setSelection(org.eclipse.jface.viewers.ISelection) - */ - public void setSelection(ISelection selection) { - this.selection = selection; - } - /* - * (non-Javadoc) - * @see org.eclipse.jface.viewers.ISelectionProvider#getSelection() - */ - public ISelection getSelection() { - return selection; - } - } - - - - /** - * Store last created menu so we can dispose on next creation. - */ - private static Menu lastMenu; - /** - * Menu creator for the drop-down button. - */ - private class MenuCreator implements IMenuCreator { - /* - * (non-Javadoc) - * @see org.eclipse.jface.action.IMenuCreator#dispose() - */ - public void dispose() { - if (lastMenu != null) { - lastMenu.dispose(); - } - } - /* - * (non-Javadoc) - * @see org.eclipse.jface.action.IMenuCreator#getMenu(org.eclipse.swt.widgets.Control) - */ - public Menu getMenu(Control control) { - dispose(); - lastMenu = new Menu(control); - buildMenu(lastMenu); - return lastMenu; - } - /* - * (non-Javadoc) - * @see org.eclipse.jface.action.IMenuCreator#getMenu(org.eclipse.swt.widgets.Menu) - */ - public Menu getMenu(Menu menu) { - dispose(); - lastMenu = new Menu(menu); - buildMenu(lastMenu); - return lastMenu; - } - private void buildMenu(Menu menu) { - MenuItem menuItem = new MenuItem(lastMenu, SWT.PUSH); - menuItem.setText(ActionsMessages.getString("ManageSkinsAction.Text")); //$NON-NLS-1$ - menuItem.addSelectionListener(new SelectionListener() { - public void widgetSelected(SelectionEvent event) { - run(); - } - public void widgetDefaultSelected(SelectionEvent event) { - widgetSelected(event); - } - }); - IEditorPart editorPart = Workbench.getInstance().getActiveWorkbenchWindow().getActivePage().getActiveEditor(); - if (editorPart instanceof HTMLEditor) { - IEditorInput editorInput = editorPart.getEditorInput(); - if (editorInput instanceof IFileEditorInput) { - IFile file = ((IFileEditorInput)editorInput).getFile(); - IProject project = file.getProject(); - if (project != null) { - SkinsMenuItemBuilder skinsMenuItemBuilder = - new SkinsMenuItemBuilder(project); - skinsMenuItemBuilder.buildMenuItems(menu); - } - } - } - } - } - -} diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/actions/OutlineViewAction.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/actions/OutlineViewAction.java deleted file mode 100644 index b22073ef8..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/actions/OutlineViewAction.java +++ /dev/null @@ -1,35 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2001, 2007 Oracle 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: - * Oracle Corporation - initial API and implementation - *******************************************************************************/ -package org.eclipse.jst.pagedesigner.editors.actions; - -import org.eclipse.ui.IPageLayout; - -/** - * A show view action that shows the outline view - * - */ -public class OutlineViewAction extends ShowViewAction -{ - /** - * the action id - */ - public final static String ID = "org.eclipse.jst.pagedesigner.editors.actions.OutlineViewAction"; //$NON-NLS-1$ - - /** - * Default constructor - */ - public OutlineViewAction() - { - super(ActionsMessages - .getString("OutlineViewAction.Menu.OutlineView") //$NON-NLS-1$ - , IPageLayout.ID_OUTLINE); - } -} diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/actions/PageDesignerActionBarContributor2.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/actions/PageDesignerActionBarContributor2.java deleted file mode 100644 index b081c16fa..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/actions/PageDesignerActionBarContributor2.java +++ /dev/null @@ -1,350 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2006 Sybase, Inc. 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: - * Sybase, Inc. - initial API and implementation - *******************************************************************************/ -package org.eclipse.jst.pagedesigner.editors.actions; - -import org.eclipse.jface.action.IMenuManager; -import org.eclipse.jface.action.IStatusLineManager; -import org.eclipse.jface.action.IToolBarManager; -import org.eclipse.jface.action.Separator; -import org.eclipse.jst.pagedesigner.IJMTConstants; -import org.eclipse.jst.pagedesigner.editors.HTMLEditor; -import org.eclipse.jst.pagedesigner.editors.SimpleGraphicalEditor; -import org.eclipse.jst.pagedesigner.ui.common.sash.NestedEditorActionBarContributor; -import org.eclipse.ui.IActionBars; -import org.eclipse.ui.IEditorPart; -import org.eclipse.wst.sse.ui.StructuredTextEditor; -import org.eclipse.wst.sse.ui.internal.ExtendedEditorActionBuilder; -import org.eclipse.wst.sse.ui.internal.IExtendedContributor; -import org.eclipse.wst.sse.ui.internal.ISourceViewerActionBarContributor; - -/** - * This is the actionbar contributor for HTML Editor. As HTMLEditor is - * multipaged, so this contributor will also handle on which page currently is - * activated. - * - * @author mengbo - */ -public class PageDesignerActionBarContributor2 extends - NestedEditorActionBarContributor implements IExtendedContributor { - - private DesignPageActionContributor _designViewerActionBarContributor = null; - - private ISourceViewerActionBarContributor _sourceViewerActionContributor = null; - - private HTMLEditor _htmlEditor = null; - - // EditorExtension - private static final String EDITOR_ID = IJMTConstants.EDITORID_HTML; - - private IExtendedContributor _extendedContributor; - - private DesignerStyleActionGroup _group = new DesignerStyleActionGroup(); - - /** - * Default constructor - */ - public PageDesignerActionBarContributor2() { - super(); - - _sourceViewerActionContributor = new SourcePageActionContributor(); - _designViewerActionBarContributor = new DesignPageActionContributor(); - - // Read action extensions. - ExtendedEditorActionBuilder builder = new ExtendedEditorActionBuilder(); - _extendedContributor = builder.readActionExtensions(EDITOR_ID); - } - - public void init(IActionBars actionBars) { - super.init(actionBars); - - if (actionBars != null) { - initCommonActionBarContributor(actionBars); - actionBars.getToolBarManager().add(new ManageSkinsAction()); - actionBars.getToolBarManager().add(new Separator()); - initDesignViewerActionBarContributor(actionBars); - initSourceViewerActionContributor(actionBars); - } - } - - /** - * @param actionBars - */ - private void initCommonActionBarContributor(IActionBars actionBars) { - _group.fillActionBars(actionBars); - } - - /** - * @param actionBars - */ - protected void initDesignViewerActionBarContributor(IActionBars actionBars) { - if (_designViewerActionBarContributor != null) - _designViewerActionBarContributor.init(actionBars, getPage()); - } - - /** - * @param actionBars - */ - protected void initSourceViewerActionContributor(IActionBars actionBars) { - if (_sourceViewerActionContributor != null) - _sourceViewerActionContributor.init(actionBars, getPage()); - } - - public void dispose() { - super.dispose(); - if (_designViewerActionBarContributor != null) { - _designViewerActionBarContributor.dispose(); - } - if (_sourceViewerActionContributor != null) { - _sourceViewerActionContributor.dispose(); - } - if (_extendedContributor != null) { - _extendedContributor.dispose(); - } - if (_group != null) { - _group.dispose(); - } - } - - /** - * @see org.eclipse.ui.part.EditorActionBarContributor#contributeToMenu(IMenuManager) - */ - public final void contributeToMenu(IMenuManager menu) { - super.contributeToMenu(menu); - addToMenu(menu); - if (_extendedContributor != null) - _extendedContributor.contributeToMenu(menu); - } - - private void addToMenu(IMenuManager menu) { - // IMenuManager menuMgr = new MenuManager(PD_EDITOR_MENU_LABEL, - // IJMTConstants.PD_EDITOR_MENU_ID); - // menu.insertBefore(IWorkbenchActionConstants.M_NAVIGATE, menuMgr); - // - // menuMgr.add(action); - // menuMgr.setRemoveAllWhenShown(true); - // - // menuMgr.addMenuListener(new IMenuListener() - // { - // public void menuAboutToShow(IMenuManager menuMgr) - // { - // PageDesignerActionConstants.addStandardActionGroups(menuMgr); - // RelatedViewActionGroup viewMenu = new RelatedViewActionGroup(); - // viewMenu.fillContextMenu(menuMgr); - // updateEditorMenu(menuMgr); - // } - // }); - } - - /** - * @see IExtendedContributor#contributeToPopupMenu(IMenuManager) - */ - public final void contributeToPopupMenu(IMenuManager menu) { - // TODO: this method is empty addToPopupMenu(menu); - if (_extendedContributor != null) - _extendedContributor.contributeToPopupMenu(menu); - } - -// protected void addToPopupMenu(IMenuManager menu) { -// // do nothing -// } - - /** - * @see org.eclipse.ui.part.EditorActionBarContributor#contributeToToolBar(IToolBarManager) - */ - public final void contributeToToolBar(IToolBarManager toolBarManager) { - super.contributeToToolBar(toolBarManager); - // TODO: this method is empty addToToolBar(toolBarManager); - if (_extendedContributor != null) - _extendedContributor.contributeToToolBar(toolBarManager); - } - -// protected void addToToolBar(IToolBarManager toolBarManager) { -// } - - /** - * @see org.eclipse.ui.part.EditorActionBarContributor#contributeToStatusLine(IStatusLineManager) - */ - public final void contributeToStatusLine(IStatusLineManager manager) { - super.contributeToStatusLine(manager); - // TODO: this method does nothing addToStatusLine(manager); - if (_extendedContributor != null) - _extendedContributor.contributeToStatusLine(manager); - } - -// protected void addToStatusLine(IStatusLineManager manager) { -// } - - /** - * @see IExtendedContributor#updateToolbarActions() - */ - public void updateToolbarActions() { - if (_extendedContributor != null) { - _extendedContributor.updateToolbarActions(); - } - _group.setHTMLEditor(_htmlEditor); - } - - public void setActiveEditor(IEditorPart targetEditor) { - if (targetEditor instanceof HTMLEditor) { - _htmlEditor = (HTMLEditor) targetEditor; - //StructuredTextEditor textEditor = _htmlEditor.getTextEditor(); - // TODO: never read this._model = textEditor.getModel(); - } - super.setActiveEditor(targetEditor); - updateToolbarActions(); - if (_extendedContributor != null) - _extendedContributor.setActiveEditor(targetEditor); - } - - public void setInnerActivePage(IEditorPart activeEditor) { - // This contributor is designed for StructuredTextMultiPageEditorPart. - // To safe-guard this from problems caused by unexpected usage by - // other editors, the following - // check is added. - if (_htmlEditor != null) { - if (activeEditor instanceof StructuredTextEditor) { - activateSourcePage((StructuredTextEditor) activeEditor); - } else if (activeEditor instanceof SimpleGraphicalEditor) { - //SimpleGraphicalEditor graphEditor = (SimpleGraphicalEditor) activeEditor; - activateDesignPage((SimpleGraphicalEditor) activeEditor); - // TODO: never read this._viewer = graphEditor.getGraphicViewer(); - } else { - // currently we don't have special action for preview. - deactivateSourceAndDesignPage(activeEditor); - // TODO: never read this._viewer = null; - } - } - - updateToolbarActions(); - - IActionBars actionBars = getActionBars(); - if (actionBars != null) { - // update menu bar and tool bar - actionBars.updateActionBars(); - } - } - - /** - * @param activeEditor - * - */ - protected void deactivateSourceAndDesignPage(IEditorPart activeEditor) { - if (_designViewerActionBarContributor != null) { - _designViewerActionBarContributor.setActiveEditor(_htmlEditor); - _designViewerActionBarContributor - .setViewerSpecificContributionsEnabled(false); - } - if (_sourceViewerActionContributor != null) { - _sourceViewerActionContributor.setActiveEditor(_htmlEditor); - _sourceViewerActionContributor - .setViewerSpecificContributionsEnabled(false); - } - } - - /** - * @param activeEditor - */ - protected void activateDesignPage(SimpleGraphicalEditor activeEditor) { - - if (_sourceViewerActionContributor != null /* - * && - * _sourceViewerActionContributor - * instanceof - * ISourceViewerActionBarContributor - */) { - // previously I was trying setActiveEditor(null) here. But as in the - // super class will - // compare the editor with original one, if same then directly - // return. So will not disable - // those actions. (lium) - _sourceViewerActionContributor.setActiveEditor(_htmlEditor); - _sourceViewerActionContributor - .setViewerSpecificContributionsEnabled(false); - } - - if (_designViewerActionBarContributor != null) { - _designViewerActionBarContributor.setActiveEditor(activeEditor); - _designViewerActionBarContributor - .setViewerSpecificContributionsEnabled(true); - } - } - - /** - * @param activeEditor - */ - protected void activateSourcePage(StructuredTextEditor activeEditor) { - if (_designViewerActionBarContributor != null /* - * && - * _designViewerActionBarContributor - * instanceof - * IDesignViewerActionBarContributor - */) { - // _designViewerActionBarContributor only recogonize HTMLEditor and - // its own GraphicEditor. so not setting source editor to it. - _designViewerActionBarContributor.setActiveEditor(_htmlEditor); - _designViewerActionBarContributor - .setViewerSpecificContributionsEnabled(false); - } - - if (_sourceViewerActionContributor != null /* - * && - * _sourceViewerActionContributor - * instanceof - * ISourceViewerActionBarContributor - */) { - _sourceViewerActionContributor.setActiveEditor(activeEditor); - _sourceViewerActionContributor.setViewerSpecificContributionsEnabled(true); - } - } - - // TODO: dead? -// private void updateEditorMenu(IMenuManager menuMgr) { -// if (this._viewer == null) { -// return; -// } else { -// if (menuMgr != null) { -// ContainerActionGroup containerActionGroup = new ContainerActionGroup(); -// ActionContext context = new ActionContext(this._viewer -// .getSelection()); -// context.setInput(this._viewer); -// containerActionGroup.setContext(context); -// containerActionGroup.fillContextMenu(menuMgr); -// containerActionGroup.setContext(null); -// -// RangeActionGroup rangeActionGroup = new RangeActionGroup(); -// context = new ActionContext(this._viewer.getSelection()); -// context.setInput(this._viewer); -// rangeActionGroup.setContext(context); -// rangeActionGroup.fillContextMenu(menuMgr); -// rangeActionGroup.setContext(null); -// -// SingleElementActionGroup singleActionGroup = new SingleElementActionGroup(); -// singleActionGroup.setContext(new ActionContext(this._viewer -// .getSelection())); -// singleActionGroup.fillContextMenu(menuMgr); -// singleActionGroup.setContext(null); -// -// if (this._model != null) { -// CustomedContextMenuActionGroup customedMenu = new CustomedContextMenuActionGroup(); -// customedMenu.setContext(new ActionContext(_viewer -// .getSelection())); -// customedMenu.setModel(_model); -// customedMenu.setParentControl(_viewer.getControl()); -// customedMenu.fillContextMenu(menuMgr); -// customedMenu.setContext(null); -// customedMenu.setParentControl(null); -// customedMenu.setModel(null); -// } -// } -// } -// } -} diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/actions/PaletteViewAction.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/actions/PaletteViewAction.java deleted file mode 100644 index 45cd989be..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/actions/PaletteViewAction.java +++ /dev/null @@ -1,111 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2006 Sybase, Inc. 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: - * Sybase, Inc. - initial API and implementation - *******************************************************************************/ -package org.eclipse.jst.pagedesigner.editors.actions; - -import org.eclipse.gef.EditDomain; -import org.eclipse.gef.ui.views.palette.PaletteView; -import org.w3c.dom.Element; - -/** - * @author mengbo - * @version 1.5 - */ -public class PaletteViewAction extends ShowViewAction { - /** - * the action id - */ - public final static String ID = "org.eclipse.jst.pagedesigner.editors.actions.PaletteViewAction"; //$NON-NLS-1$ - - /** - * @param element - * @param editDomain - */ - public PaletteViewAction(Element element, EditDomain editDomain) { - super(ActionsMessages.getString("PaletteViewAction.Menu.PaletteView") //$NON-NLS-1$ - , PaletteView.ID); - //_element = element; - //_editDomain = editDomain; - } - - /** - * Add to default behavior because pallete view doesn't automatically track - * selection to currently selected edit part - */ - public void run() - { - super.run(); - - //TODO: for some reason getting a palette item to select doesn't work -// if (_element != null && _editDomain != null) -// { -// PaletteItemManager manager = PaletteItemManager -// .getInstance(getProject(_element)); -// if (manager != null) { -// IPaletteItemCategory category = manager.findOrCreateCategory(CMUtil -// .getElementNamespaceURI(_element), null); -// -// if (category != null) { -// String name = _element.getLocalName(); -// if (category.getURI().equals(IJMTConstants.URI_JSP)) { -// name = _element.getTagName(); -// } -// IPaletteItemDescriptor descriptor = category -// .getItemByTagName(name); -// if (descriptor != null) -// { -// PaletteEntry paletteEntry = descriptor.getPaletteEntry(); -// final RootEditPart editPart = -// _editDomain.getPaletteViewer().getRootEditPart(); -// EditPart newSelection = findMatchingPart(editPart.getContents(), paletteEntry); -// -// if (newSelection != null) -// { -// _editDomain.getPaletteViewer().setSelection(new StructuredSelection(newSelection)); -// } -// } -// } -// } -// } - } - -// private EditPart findMatchingPart(EditPart curPart, PaletteEntry paletteEntry) -// { -// EditPart match = null; -// -// if (curPart.getModel() == paletteEntry) -// { -// return curPart; -// } -// -// for (final Iterator it = curPart.getChildren().iterator(); it.hasNext();) -// { -// match = findMatchingPart((EditPart)it.next(), paletteEntry); -// -// if (match != null) -// { -// break; -// } -// } -// -// return match; -// } -// private IProject getProject(Element element) { -// if (element instanceof IDOMElement) { -// IDOMModel model = ((IDOMElement) element).getModel(); -// IFile file = StructuredModelUtil.getFileFor(model); -// if (file != null) { -// return file.getProject(); -// } -// } -// return null; -// } -} diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/actions/PropertiesViewAction.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/actions/PropertiesViewAction.java deleted file mode 100644 index bf4098b57..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/actions/PropertiesViewAction.java +++ /dev/null @@ -1,34 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2006 Sybase, Inc. 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: - * Sybase, Inc. - initial API and implementation - *******************************************************************************/ -package org.eclipse.jst.pagedesigner.editors.actions; - -import org.eclipse.ui.IPageLayout; - -/** - * @author mengbo - */ -public class PropertiesViewAction extends ShowViewAction { - /** - * the id - */ - public final static String ID = "org.eclipse.jst.pagedesigner.editors.actions.PropertiesViewAction"; //$NON-NLS-1$ - - /** - * Default constructor - */ - public PropertiesViewAction() - { - super(ActionsMessages - .getString("PropertiesViewAction.Menu.Properties") //$NON-NLS-1$ - , IPageLayout.ID_PROP_SHEET); - } -} diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/actions/RelatedViewActionGroup.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/actions/RelatedViewActionGroup.java deleted file mode 100644 index d4e70ad28..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/actions/RelatedViewActionGroup.java +++ /dev/null @@ -1,148 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2006 Sybase, Inc. 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: - * Sybase, Inc. - initial API and implementation - *******************************************************************************/ -package org.eclipse.jst.pagedesigner.editors.actions; - -import java.util.Arrays; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -import org.eclipse.core.runtime.IConfigurationElement; -import org.eclipse.core.runtime.Platform; -import org.eclipse.gef.EditDomain; -import org.eclipse.jface.action.Action; -import org.eclipse.jface.action.IMenuListener; -import org.eclipse.jface.action.IMenuManager; -import org.eclipse.jface.action.MenuManager; -import org.eclipse.jface.resource.ImageDescriptor; -import org.eclipse.jface.viewers.ISelection; -import org.eclipse.jface.viewers.IStructuredSelection; -import org.eclipse.jst.pagedesigner.editors.PageDesignerActionConstants; -import org.eclipse.jst.pagedesigner.parts.ElementEditPart; -import org.eclipse.ui.IWorkbenchActionConstants; -import org.eclipse.ui.actions.ActionContext; -import org.eclipse.ui.actions.ActionGroup; -import org.eclipse.ui.plugin.AbstractUIPlugin; -import org.w3c.dom.Element; - -/** - * @author mengbo - * @version 1.5 - */ -public class RelatedViewActionGroup extends ActionGroup -{ - private final EditDomain _editDomain; - - /** - * @param editDomain - */ - public RelatedViewActionGroup(EditDomain editDomain) - { - _editDomain = editDomain; - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.ui.actions.ActionGroup#fillContextMenu(org.eclipse.jface.action.IMenuManager) - */ - public void fillContextMenu(IMenuManager menu) { - super.fillContextMenu(menu); - - final IMenuManager viewMgr = new MenuManager(ActionsMessages - .getString("RelatedViewActionGroup.Menu.ShowView"),//$NON-NLS-1$ - PageDesignerActionConstants.SHOWVIEW_SUBMENU_ID); - viewMgr.add(new Action() { - // add noop action; TODO: why? - }); - viewMgr.setRemoveAllWhenShown(true); - final ActionContext context = getContext(); - viewMgr.addMenuListener(new IMenuListener() { - public void menuAboutToShow(IMenuManager manager) { - // TODO: don't like this at all - String[] views = { "org.eclipse.ui.views.PropertySheet", //$NON-NLS-1$ - "org.eclipse.gef.ui.palette_view", "org.eclipse.ui.views.ContentOutline"}; //$NON-NLS-1$ //$NON-NLS-2$ - - Map icons = getIconForView(views); - // TODO: is this the best way to do this? - if (manager.find(PropertiesViewAction.ID) == null) { - Action action = new PropertiesViewAction(); - action.setId(PropertiesViewAction.ID); - action.setImageDescriptor((ImageDescriptor) icons - .get(views[0])); - manager.add(action); - } - ISelection selection = context.getSelection(); - if (manager.find(PaletteViewAction.ID) == null) { - if (selection instanceof IStructuredSelection) - { - IStructuredSelection strucSelection = - (IStructuredSelection) selection; - Action action = null; - - if (strucSelection.getFirstElement() instanceof ElementEditPart) - { - Element selectedElem = (Element) - ((ElementEditPart) strucSelection.getFirstElement()).getModel(); - action = new PaletteViewAction(selectedElem, _editDomain); - } - else - { - // if can't determine, just default open the palette - action = new PaletteViewAction(null, null); - } - action.setId(PaletteViewAction.ID); - action.setImageDescriptor((ImageDescriptor) icons - .get(views[1])); - manager.add(action); - } - } - if (manager.find(OutlineViewAction.ID) == null) - { - Action action = new OutlineViewAction(); - action.setId(OutlineViewAction.ID); - action.setImageDescriptor((ImageDescriptor) icons - .get(views[2])); - manager.add(action); - } - - } - }); - menu.appendToGroup(IWorkbenchActionConstants.MB_ADDITIONS, viewMgr); - } - - private Map getIconForView(String[] viewids) { - List views = Arrays.asList(viewids); - Map icons = new HashMap(); - - IConfigurationElement[] elements = Platform.getExtensionRegistry() - .getConfigurationElementsFor("org.eclipse.ui.views"); //$NON-NLS-1$ - for (int i = 0; i < elements.length; i++) { - String name = elements[i].getName(); - String id = elements[i].getAttribute("id"); //$NON-NLS-1$ - if ("view".equals(name) && views.contains(id)) { //$NON-NLS-1$ - String iconPath = elements[i].getAttribute("icon"); //$NON-NLS-1$ - if (iconPath != null) { - icons.put(id, AbstractUIPlugin.imageDescriptorFromPlugin( - elements[i].getDeclaringExtension().getContributor().getName(), - iconPath)); - } else { - icons.put(id, null); - } - if (icons.size() == viewids.length) { - break; - } - } - } - return icons; - } -} diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/actions/ShowViewAction.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/actions/ShowViewAction.java deleted file mode 100644 index 33bc222f8..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/actions/ShowViewAction.java +++ /dev/null @@ -1,60 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2001, 2007 Oracle 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: - * Oracle Corporation - initial API and implementation - *******************************************************************************/ -package org.eclipse.jst.pagedesigner.editors.actions; - -import org.eclipse.jface.action.Action; -import org.eclipse.jst.jsf.common.ui.internal.logging.Logger; -import org.eclipse.jst.pagedesigner.PDPlugin; -import org.eclipse.ui.IWorkbench; -import org.eclipse.ui.IWorkbenchPage; -import org.eclipse.ui.IWorkbenchWindow; -import org.eclipse.ui.PartInitException; -import org.eclipse.ui.PlatformUI; - -/** - * TODO: isn't there a workbench registry action for this? - * @author cbateman - * - */ -public class ShowViewAction extends Action { - private static Logger _log = PDPlugin.getLogger(PropertiesViewAction.class); - private final String _viewId; - - /** - * @param text - * @param viewId - */ - public ShowViewAction(String text, String viewId) - { - _viewId = viewId; - setText(text); - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.jface.action.IAction#run() - */ - public void run() { - try { - getPage().showView(_viewId); - } catch (PartInitException e) { - _log.info("Open the view: "+_viewId, e); //$NON-NLS-1$ - } - - } - - private IWorkbenchPage getPage() { - IWorkbench workbench = PlatformUI.getWorkbench(); - IWorkbenchWindow window = workbench.getActiveWorkbenchWindow(); - return window.getActivePage(); - } -} diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/actions/SkinsMenuItemBuilder.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/actions/SkinsMenuItemBuilder.java deleted file mode 100644 index 680871148..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/actions/SkinsMenuItemBuilder.java +++ /dev/null @@ -1,236 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2009 Oracle Corporation. - * 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: - * Ian Trimble - initial API and implementation - *******************************************************************************/ -package org.eclipse.jst.pagedesigner.editors.actions; - -import java.util.ArrayList; -import java.util.List; - -import org.eclipse.core.resources.IProject; -import org.eclipse.jface.action.Action; -import org.eclipse.jface.action.IMenuManager; -import org.eclipse.jface.action.MenuManager; -import org.eclipse.jface.action.Separator; -import org.eclipse.jst.jsf.common.metadata.Model; -import org.eclipse.jst.jsf.common.metadata.Trait; -import org.eclipse.jst.jsf.common.metadata.internal.TraitValueHelper; -import org.eclipse.jst.jsf.common.metadata.query.ITaglibDomainMetaDataModelContext; -import org.eclipse.jst.jsf.common.metadata.query.TaglibDomainMetaDataQueryHelper; -import org.eclipse.jst.pagedesigner.dtresourceprovider.DTResourceProviderFactory; -import org.eclipse.jst.pagedesigner.dtresourceprovider.DTSkinManager; -import org.eclipse.jst.pagedesigner.dtresourceprovider.IDTResourceProvider; -import org.eclipse.jst.pagedesigner.dtresourceprovider.IDTSkin; -import org.eclipse.jst.pagedesigner.utils.EditorUtil; -import org.eclipse.swt.SWT; -import org.eclipse.swt.events.SelectionEvent; -import org.eclipse.swt.events.SelectionListener; -import org.eclipse.swt.widgets.Menu; -import org.eclipse.swt.widgets.MenuItem; -import org.eclipse.ui.IWorkbenchActionConstants; - -/** - * Builds menu items for managing skins. - * - * @author Ian Trimble - Oracle - */ -public class SkinsMenuItemBuilder { - - private static final String DATAKEY_DTSKIN = "DATAKEY_DTSKIN"; //$NON-NLS-1$ - private static final String DATAKEY_NSURI = "DTATKEY_NSURI"; //$NON-NLS-1$ - - private static List<Menu> menuList = new ArrayList<Menu>(); - - private IProject project; - - /** - * Constructs an instance. - * - * @param project IProject instance for which to get skin information. - */ - public SkinsMenuItemBuilder(IProject project) { - this.project = project; - } - - /** - * Builds menu items (adds a separator and then menu items to end of - * specified menu. - * - * @param menu Menu instance to which to add menu items. - */ - public void buildMenuItems(Menu menu) { - for (Menu oldMenu: menuList) { - oldMenu.dispose(); - } - if (menu != null) { - List<TaglibData> taglibDataList = getTaglibDataList(); - if (taglibDataList.size() > 0) { - new MenuItem(menu, SWT.SEPARATOR); - } - for (TaglibData taglibData: taglibDataList) { - String nsURI = taglibData.getNSURI(); - DTSkinManager dtSkinManager = DTSkinManager.getInstance(project); - IDTSkin currentDTSkin = dtSkinManager.getCurrentSkin(nsURI); - MenuItem menuItem = new MenuItem(menu, SWT.CASCADE); - menuItem.setText(taglibData.getName()); - Menu skinMenu = new Menu(menuItem); - menuList.add(skinMenu); - menuItem.setMenu(skinMenu); - List<IDTSkin> dtSkins = dtSkinManager.getSkins(nsURI); - for (IDTSkin dtSkin: dtSkins) { - MenuItem skinMenuItem; - if (currentDTSkin == dtSkin) { - skinMenuItem = new MenuItem(skinMenu, SWT.CHECK); - skinMenuItem.setSelection(true); - } else { - skinMenuItem = new MenuItem(skinMenu, SWT.PUSH); - } - skinMenuItem.setText(dtSkin.getName()); - skinMenuItem.setData(DATAKEY_DTSKIN, dtSkin); - skinMenuItem.setData(DATAKEY_NSURI, nsURI); - skinMenuItem.addSelectionListener(new SkinSelectionListener()); - } - } - } - } - - /** - * Builds menu managers. - * - * @param parent Parent menu manager to which to append new menu managers. - */ - public void buildMenuManagers(IMenuManager parent) { - List<TaglibData> taglibDataList = getTaglibDataList(); - if (taglibDataList.size() > 0) { - parent.appendToGroup(IWorkbenchActionConstants.MB_ADDITIONS, new Separator()); - } - for (TaglibData taglibData: taglibDataList) { - String nsURI = taglibData.getNSURI(); - MenuManager newMgr = new MenuManager(taglibData.getName()); - DTSkinManager dtSkinManager = DTSkinManager.getInstance(project); - IDTSkin currentDTSkin = dtSkinManager.getCurrentSkin(nsURI); - List<IDTSkin> dtSkins = dtSkinManager.getSkins(nsURI); - for (IDTSkin dtSkin: dtSkins) { - newMgr.add(new ChangeCurrentSkinAction(nsURI, dtSkin, dtSkin == currentDTSkin)); - } - parent.appendToGroup(IWorkbenchActionConstants.MB_ADDITIONS, newMgr); - } - } - - private List<TaglibData> getTaglibDataList() { - List<TaglibData> taglibDataList = new ArrayList<TaglibData>(); - List<IDTResourceProvider> dtResourceProviders = - DTResourceProviderFactory.getInstance().getActiveDTResourceProviders(project); - for (IDTResourceProvider dtResourceProvider: dtResourceProviders) { - TaglibData taglibData = new TaglibData(dtResourceProvider.getId()); - if (!taglibDataList.contains(taglibData)) { - taglibDataList.add(taglibData); - } - } - return taglibDataList; - } - - - - /** - * Used to hold and pass taglib-related data. - */ - private class TaglibData { - private String nsURI; - private String name; - public TaglibData(String nsURI) { - this.nsURI = nsURI; - ITaglibDomainMetaDataModelContext modelContext = TaglibDomainMetaDataQueryHelper.createMetaDataModelContext(project, nsURI); - Model model = TaglibDomainMetaDataQueryHelper.getModel(modelContext); - Trait trait = TaglibDomainMetaDataQueryHelper.getTrait(model, "display-label"); //$NON-NLS-1$ - this.name = TraitValueHelper.getValueAsString(trait); - } - public String getNSURI() { - return nsURI; - } - public String getName() { - if (name == null) { - return nsURI; - } - return name; - } - /* - * (non-Javadoc) - * @see java.lang.Object#hashCode() - */ - public int hashCode() { - int nsURIHashCode = 0; - if (nsURI != null) { - nsURIHashCode = nsURI.hashCode(); - } - int nameHashCode = 0; - if (name != null) { - nameHashCode = name.hashCode(); - } - return nameHashCode | nsURIHashCode ; - } - } - - - - /** - * Selection listener for skin menu items. - */ - private class SkinSelectionListener implements SelectionListener { - /* - * (non-Javadoc) - * @see org.eclipse.swt.events.SelectionListener#widgetSelected(org.eclipse.swt.events.SelectionEvent) - */ - public void widgetSelected(SelectionEvent event) { - String nsURI = (String)event.widget.getData(DATAKEY_NSURI); - IDTSkin dtSkin = (IDTSkin)event.widget.getData(DATAKEY_DTSKIN); - DTSkinManager.getInstance(project).setCurrentSkin(nsURI, dtSkin); - EditorUtil.refreshAllWPEDesignViewers(); - } - /* - * (non-Javadoc) - * @see org.eclipse.swt.events.SelectionListener#widgetDefaultSelected(org.eclipse.swt.events.SelectionEvent) - */ - public void widgetDefaultSelected(SelectionEvent event) { - widgetSelected(event); - } - } - - - - /** - * Action for changing current skin. - */ - private class ChangeCurrentSkinAction extends Action { - private String nsURI; - private IDTSkin dtSkin; - /** - * Creates an instance. - * - * @param nsURI NSURI of taglib. - * @param dtSkin IDTSkin instance. - * @param checked true if IDTSkin instance is current for nsURI. - */ - public ChangeCurrentSkinAction(String nsURI, IDTSkin dtSkin, boolean checked) { - super(dtSkin.getName()); - this.nsURI = nsURI; - this.dtSkin = dtSkin; - setChecked(checked); - } - /* - * (non-Javadoc) - * @see org.eclipse.jface.action.Action#run() - */ - public void run() { - DTSkinManager.getInstance(project).setCurrentSkin(nsURI, dtSkin); - EditorUtil.refreshAllWPEDesignViewers(); - } - } - -} diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/actions/SourcePageActionContributor.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/actions/SourcePageActionContributor.java deleted file mode 100644 index 7d48737e4..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/actions/SourcePageActionContributor.java +++ /dev/null @@ -1,100 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2006 Sybase, Inc. 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: - * Sybase, Inc. - initial API and implementation - *******************************************************************************/ -package org.eclipse.jst.pagedesigner.editors.actions; - -import org.eclipse.jst.pagedesigner.editors.HTMLEditor; -import org.eclipse.ui.IActionBars; -import org.eclipse.ui.IEditorPart; -import org.eclipse.ui.texteditor.ITextEditor; -import org.eclipse.ui.texteditor.ITextEditorActionConstants; -import org.eclipse.wst.xml.ui.internal.actions.ActionContributorXML; - -/** - * SourcePageActionContributor - * - * This class is for multi page editor's source page contributor. - * - * Use XMLEditorActionContributor for single page editor. - */ -public class SourcePageActionContributor extends ActionContributorXML { - - private IActionBars fBars; - - /** - * This method calls: - * <ul> - * <li><code>contributeToMenu</code> with <code>bars</code>' menu - * manager</li> - * <li><code>contributeToToolBar</code> with <code>bars</code>' tool - * bar manager</li> - * <li><code>contributeToStatusLine</code> with <code>bars</code>' - * status line manager</li> - * </ul> - * The given action bars are also remembered and made accessible via - * <code>getActionBars</code>. - * - * @param bars - * the action bars - * - */ - public void init(IActionBars bars) { - fBars = bars; - contributeToMenu(bars.getMenuManager()); - contributeToToolBar(bars.getToolBarManager()); - contributeToStatusLine(bars.getStatusLineManager()); - } - - /** - * Returns this contributor's action bars. - * - * @return the action bars - */ - public IActionBars getActionBars() { - return fBars; - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.wst.sse.ui.internal.ISourceViewerActionBarContributor#setViewerSpecificContributionsEnabled(boolean) - */ - public void setViewerSpecificContributionsEnabled(boolean enabled) { - super.setViewerSpecificContributionsEnabled(enabled); - IEditorPart editor = getActiveEditorPart(); - ITextEditor targetEditor = null; - if (editor instanceof ITextEditor) { - targetEditor = (ITextEditor) editor; - } else if (editor instanceof HTMLEditor) { - targetEditor = ((HTMLEditor) editor).getTextEditor(); - } - if (targetEditor != null) { - if (enabled) { - getActionBars() - .setGlobalActionHandler( - ITextEditorActionConstants.UNDO, - targetEditor - .getAction(ITextEditorActionConstants.UNDO)); - getActionBars() - .setGlobalActionHandler( - ITextEditorActionConstants.REDO, - targetEditor - .getAction(ITextEditorActionConstants.REDO)); - } else { - getActionBars().setGlobalActionHandler( - ITextEditorActionConstants.UNDO, null); - getActionBars().setGlobalActionHandler( - ITextEditorActionConstants.REDO, null); - } - - } - } -} diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/pagedesigner/DelegatingZoomManager.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/pagedesigner/DelegatingZoomManager.java deleted file mode 100644 index d67d8f9a1..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/pagedesigner/DelegatingZoomManager.java +++ /dev/null @@ -1,374 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2006 Sybase, Inc. 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: - * Sybase, Inc. - initial API and implementation - *******************************************************************************/ -package org.eclipse.jst.pagedesigner.editors.pagedesigner; - -import org.eclipse.core.runtime.ListenerList; -import org.eclipse.draw2d.ScalableFigure; -import org.eclipse.draw2d.Viewport; -import org.eclipse.draw2d.geometry.Point; -import org.eclipse.draw2d.geometry.Rectangle; -import org.eclipse.gef.editparts.ZoomListener; -import org.eclipse.gef.editparts.ZoomManager; - -/** - * A delegating ZoomManager. - */ -public class DelegatingZoomManager extends ZoomManager implements ZoomListener { - /** the current ZoomManager all work is delegated to */ - private final static int DEFAULT_ZOOM = 1; - - private final static String ZOOM_AS_TEXT = "100%"; //$NON-NLS-1$ - - private final static String ZOOM_LEVEL_AS_TEXT = "100%"; //$NON-NLS-1$ - - private ZoomManager _currentZoomManager; - - /** listeners */ - private ListenerList _zoomListeners = new ListenerList(ListenerList.IDENTITY); - - /** - * Creates a new DelegatingZoomManager instance. - */ - public DelegatingZoomManager() { - super((ScalableFigure) null, (Viewport) null); - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.gef.editparts.ZoomListener#zoomChanged(double) - */ - public void zoomChanged(double zoom) { - Object[] listeners = _zoomListeners.getListeners(); - for (int i = 0; i < listeners.length; ++i) { - ((ZoomListener) listeners[i]).zoomChanged(zoom); - } - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.gef.editparts.ZoomManager#addZoomListener(org.eclipse.gef.editparts.ZoomListener) - */ - public void addZoomListener(ZoomListener listener) { - _zoomListeners.add(listener); - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.gef.editparts.ZoomManager#removeZoomListener(org.eclipse.gef.editparts.ZoomListener) - */ - public void removeZoomListener(ZoomListener listener) { - _zoomListeners.remove(listener); - } - - /** - * Sets the ZoomManager all work should be delegated to. - * - * @param zoomManager - */ - public void setCurrentZoomManager(ZoomManager zoomManager) { - if (null != _currentZoomManager) { - _currentZoomManager.removeZoomListener(this); - } - - _currentZoomManager = zoomManager; - if (null != _currentZoomManager) { - _currentZoomManager.addZoomListener(this); - zoomChanged(_currentZoomManager.getZoom()); - } - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.gef.editparts.ZoomManager#canZoomIn() - */ - public boolean canZoomIn() { - if (null == _currentZoomManager) { - return false; - } - return _currentZoomManager.canZoomIn(); - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.gef.editparts.ZoomManager#canZoomOut() - */ - public boolean canZoomOut() { - if (null == _currentZoomManager) { - return false; - } - return _currentZoomManager.canZoomOut(); - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.gef.editparts.ZoomManager#getMaxZoom() - */ - public double getMaxZoom() { - if (null == _currentZoomManager) { - return DEFAULT_ZOOM; - } - - return _currentZoomManager.getMaxZoom(); - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.gef.editparts.ZoomManager#getMinZoom() - */ - public double getMinZoom() { - if (null == _currentZoomManager) { - return DEFAULT_ZOOM; - } - return _currentZoomManager.getMinZoom(); - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.gef.editparts.ZoomManager#getNextZoomLevel() - */ - public double getNextZoomLevel() { - if (null == _currentZoomManager) { - return DEFAULT_ZOOM; - } - return _currentZoomManager.getNextZoomLevel(); - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.gef.editparts.ZoomManager#getPreviousZoomLevel() - */ - public double getPreviousZoomLevel() { - if (null == _currentZoomManager) { - return DEFAULT_ZOOM; - } - return _currentZoomManager.getPreviousZoomLevel(); - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.gef.editparts.ZoomManager#getScalableFigure() - */ - public ScalableFigure getScalableFigure() { - if (null == _currentZoomManager) { - return null; - } - - return _currentZoomManager.getScalableFigure(); - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.gef.editparts.ZoomManager#getUIMultiplier() - */ - public double getUIMultiplier() { - if (null == _currentZoomManager) { - return DEFAULT_ZOOM; - } - - return _currentZoomManager.getUIMultiplier(); - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.gef.editparts.ZoomManager#getViewport() - */ - public Viewport getViewport() { - if (null == _currentZoomManager) { - return null; - } - - return _currentZoomManager.getViewport(); - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.gef.editparts.ZoomManager#getZoom() - */ - public double getZoom() { - if (null == _currentZoomManager) { - return DEFAULT_ZOOM; - } - - return _currentZoomManager.getZoom(); - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.gef.editparts.ZoomManager#getZoomAsText() - */ - public String getZoomAsText() { - if (null == _currentZoomManager) { - return ZOOM_AS_TEXT; - } - //$NON-NLS-1$ - - return _currentZoomManager.getZoomAsText(); - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.gef.editparts.ZoomManager#getZoomLevels() - */ - public double[] getZoomLevels() { - if (null == _currentZoomManager) { - return new double[] { DEFAULT_ZOOM }; - } - - return _currentZoomManager.getZoomLevels(); - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.gef.editparts.ZoomManager#getZoomLevelsAsText() - */ - public String[] getZoomLevelsAsText() { - if (null == _currentZoomManager) { - return new String[] { ZOOM_LEVEL_AS_TEXT }; - } - - return _currentZoomManager.getZoomLevelsAsText(); - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.gef.editparts.ZoomManager#setUIMultiplier(double) - */ - public void setUIMultiplier(double multiplier) { - if (null == _currentZoomManager) { - return; - } - - _currentZoomManager.setUIMultiplier(multiplier); - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.gef.editparts.ZoomManager#setViewLocation(org.eclipse.draw2d.geometry.Point) - */ - public void setViewLocation(Point p) { - if (null == _currentZoomManager) { - return; - } - - _currentZoomManager.setViewLocation(p); - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.gef.editparts.ZoomManager#setZoom(double) - */ - public void setZoom(double zoom) { - if (null == _currentZoomManager) { - return; - } - - _currentZoomManager.setZoom(zoom); - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.gef.editparts.ZoomManager#setZoomAnimationStyle(int) - */ - public void setZoomAnimationStyle(int style) { - if (null == _currentZoomManager) { - return; - } - - _currentZoomManager.setZoomAnimationStyle(style); - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.gef.editparts.ZoomManager#setZoomAsText(java.lang.String) - */ - public void setZoomAsText(String zoomString) { - if (null == _currentZoomManager) { - return; - } - - _currentZoomManager.setZoomAsText(zoomString); - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.gef.editparts.ZoomManager#setZoomLevels(double[]) - */ - public void setZoomLevels(double[] zoomLevels) { - if (null == _currentZoomManager) { - return; - } - - _currentZoomManager.setZoomLevels(zoomLevels); - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.gef.editparts.ZoomManager#zoomIn() - */ - public void zoomIn() { - if (null == _currentZoomManager) { - return; - } - - _currentZoomManager.zoomIn(); - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.gef.editparts.ZoomManager#zoomOut() - */ - public void zoomOut() { - if (null == _currentZoomManager) { - return; - } - - _currentZoomManager.zoomOut(); - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.gef.editparts.ZoomManager#zoomTo(org.eclipse.draw2d.geometry.Rectangle) - */ - public void zoomTo(Rectangle rect) { - if (null == _currentZoomManager) { - return; - } - - _currentZoomManager.zoomTo(rect); - } - -} diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/pagedesigner/IPageDesignerConstants.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/pagedesigner/IPageDesignerConstants.java deleted file mode 100644 index bedef5318..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/pagedesigner/IPageDesignerConstants.java +++ /dev/null @@ -1,290 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2006 Sybase, Inc. 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: - * Sybase, Inc. - initial API and implementation - *******************************************************************************/ -package org.eclipse.jst.pagedesigner.editors.pagedesigner; - -/** - * The designer constants - * - * TODO: dead? - * - */ -interface IPageDesignerConstants { - /** - * JSP UI Component Tag Node - */ - public static final String DEFAULT_TAG_NAME = "tagname"; //$NON-NLS-1$ - - /** - * keyword - */ - public static final String ATTR_TYPE_CDATA = "CDATA"; //$NON-NLS-1$ - - /** - * basename attribute - */ - public static final String ATTR_LOADBUNDLE_1 = "basename"; //$NON-NLS-1$ - - /** - * var attribute - */ - public static final String ATTR_LOADBUNDLE_2 = "var"; //$NON-NLS-1$ - - /** - * columns attribute - */ - public static final String ATTR_PANELGRID_1 = "columns"; //$NON-NLS-1$ - - /** - * summary attribute - */ - public static final String ATTR_PANELGRID_2 = "summary"; //$NON-NLS-1$ - - /** - * title attribute - */ - public static final String ATTR_PANELGRID_3 = "title"; //$NON-NLS-1$ - - /** - * action attribute - */ - public static final String ATTR_BUTTON_1 = "action"; //$NON-NLS-1$ - - /** - * value attribute - */ - public static final String ATTR_BUTTON_2 = "value"; //$NON-NLS-1$ - - /** - * url attribute - */ - public static final String ATTR_GRAPHICIMAGE_1 = "url"; //$NON-NLS-1$ - - /** - * binding attribute - */ - public static final String ATTR_GRAPHICIMAGE_2 = "binding"; //$NON-NLS-1$ - - /** - * binding attribute - */ - public static final String ATTR_OUTPUTTEXT_1 = "binding"; //$NON-NLS-1$ - - /** - * value attribute - */ - public static final String ATTR_OUTPUTTEXT_2 = "value"; //$NON-NLS-1$ - - /** - * styleClass attribute - */ - public static final String ATTR_OUTPUTTEXT_3 = "styleClass"; //$NON-NLS-1$ - - /** - * dataWindowBean attribute - */ - public static final String ATTR_DATAWINDOW_1 = "dataWindowBean"; //$NON-NLS-1$ - - /** - * scriptName attribute - */ - public static final String ATTR_DATAWINDOW_2 = "scriptName"; //$NON-NLS-1$ - - /** - * page attribute - */ - public static final String ATTR_INCLUDE = "page"; //$NON-NLS-1$ - - /** - * prefix atttribute - */ - public static final String ATTR_TAGLIB_1 = "prefix"; //$NON-NLS-1$ - - /** - * uri attribute - */ - public static final String ATTR_TAGLIB_2 = "uri"; //$NON-NLS-1$ - - /** - * bundle attribute - */ - public static final String RESOURCE_BUNDLE_MARK = "bundle"; //$NON-NLS-1$ - - /** - * value attribute - */ - public static final String ATTR_RESOURCE_BUNDLE = "value"; //$NON-NLS-1$ - - /** - * value attribute - */ - public static final String ATTR_FACET = "value"; //$NON-NLS-1$ - - /** - * view tag - */ - public static final String TAG_VIEW_TYPE = "view"; //$NON-NLS-1$ - - /** - * for tag - */ - public static final String TAG_FORM_TYPE = "form"; //$NON-NLS-1$ - - /** - * text tag - */ - public static final String TAG_TEXT_TYPE = "text"; //$NON-NLS-1$ - - /** - * loadBundle tag - */ - public static final String TAG_LOADBUNDLE_TYPE = "loadBundle"; //$NON-NLS-1$ - - /** - * panelGrid tag - */ - public static final String TAG_PANELGRID_TYPE = "panelGrid"; //$NON-NLS-1$ - - /** - * - */ - public static final String TAG_IMAGE_TYPE = "image"; //$NON-NLS-1$ - - /** - * outputText tag - */ - public static final String TAG_OUTPUTTEXT_TYPE = "outputText"; //$NON-NLS-1$ - - /** - * - */ - public static final String TAG_BUTTON_TYPE = "button"; //$NON-NLS-1$ - - /** - * - */ - public static final String TAG_DATAWINDOW_TYPE = "datawindow"; //$NON-NLS-1$ - - /** - * - */ - public static final String TAG_TAGLIB_TYPE = "taglib"; //$NON-NLS-1$ - - /** - * - */ - public static final String TAG_INCLUDE_TYPE = "include"; //$NON-NLS-1$ - - /** - * - */ - public static final String TAG_OTHERS_TYPE = ""; //$NON-NLS-1$ - - /** - * - */ - public static final String TAG_NAME_VIEW = "view"; //$NON-NLS-1$ - - /** - * - */ - public static final String TAG_NAME_FORM = "form"; //$NON-NLS-1$ - - /** - * - */ - public static final String TAG_NAME_PANELGRID = "panelGrid"; //$NON-NLS-1$ - - /** - * - */ - public static final String TAG_NAME_PANELGROUP = "panelGroup"; //$NON-NLS-1$ - - /** - * - */ - public static final String TAG_NAME_FACET = "facet"; //$NON-NLS-1$ - - /** - * - */ - public static final String TAG_NAME_DATAWINDOW = "dataWindow"; //$NON-NLS-1$ - - /** - * - */ - public static final String TAG_NAME_OUTPUTTEXT = "outputText"; //$NON-NLS-1$ - - /** - * - */ - public static final String TAG_NAME_INCLUDE = "include"; //$NON-NLS-1$ - - /** - * - */ - public static final String TAG_NAME_LOADBUNDLE = "loadBundle"; //$NON-NLS-1$ - - /** - * - */ - public static final String TAG_NAME_TAGLIB = "taglib"; //$NON-NLS-1$ - - /** - * graphicImage tag - */ - public static final String TAG_NAME_GRAPHICIMAGE = "graphicImage"; //$NON-NLS-1$ - - /** - * commandButton tag - */ - public static final String TAG_NAME_COMMANDBUTTON = "commandButton"; //$NON-NLS-1$ - - /** - * - */ - public static final String REQUEST_TYPE_SELECT = "selection"; //$NON-NLS-1$ - - /** - * - */ - public static final int EOF = -1; - - /** - * - */ - public static final char CHAR_TAB = '\t'; - - /** - * - */ - public static final char CHAR_N_RETURN = '\n'; - - /** - * - */ - public static final String STRING_N_RETURN = "\n"; //$NON-NLS-1$ - - /** - * - */ - public static final String STRING_BLANK = " "; //$NON-NLS-1$ - - /** - * - */ - public static final char CHAR_BLANK = ' '; - - /** - * - */ - public static final String FONT_NAME_HELVETICA = "Helvetica"; //$NON-NLS-1$ -} diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/pagedesigner/JSPEditorMessages.properties b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/pagedesigner/JSPEditorMessages.properties deleted file mode 100644 index beecba524..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/pagedesigner/JSPEditorMessages.properties +++ /dev/null @@ -1,23 +0,0 @@ -############################################################################### -# Copyright (c) 2001, 2007 Oracle 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: -# Oracle Corporation - initial API and implementation -############################################################################### -JSFPalette.DefaultGroup.LabelJSFPallete=Controls -JSPSourceEditor.Page.Preview.PageText=Preview - -CommonResourceDialog.statusMessage=Select an image file -ResourcesOnClasspathDialog.statusMessage=Select a property file -TreeViewerSelectionDialog.Title=Select a file -RangeSelectionTool.CommandLabel.Insert=Insert - -DesignerPaletteCustomizerDialog.label.import=Import -DesignerPaletteCustomizerDialog.label.export=Export - -DesignerSourceDropTargetListener.InserCommandLabel=Create New Item -SourceViewLocalDropCommand.Label.InsertSyntax=Insert Syntax diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/pagedesigner/MessageFormater.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/pagedesigner/MessageFormater.java deleted file mode 100644 index c05fabd7a..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/pagedesigner/MessageFormater.java +++ /dev/null @@ -1,97 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2006 Sybase, Inc. 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: - * Sybase, Inc. - initial API and implementation - *******************************************************************************/ -package org.eclipse.jst.pagedesigner.editors.pagedesigner; - -import java.text.MessageFormat; - -import org.eclipse.jst.jsf.common.ui.internal.logging.Logger; -import org.eclipse.jst.pagedesigner.PDPlugin; - -/** - * @A tool class for message format - */ -public final class MessageFormater { - private static Logger _log = PDPlugin.getLogger(MessageFormater.class); - - /** - * - * @param message - * the parts for filling is {number} - * @param o1 - * @return the formatted string - */ - public static String format(String message, Object o1) { - try { - Object[] args = new Object[] { o1 }; - MessageFormat formatter = new MessageFormat(message); - return formatter.format(args); - } catch (Exception e) { - _log.error("Log.Error.MessageFormater.Format0", e); //$NON-NLS-1$ - return ""; //$NON-NLS-1$ - } - } - - /** - * @param message - * @param o1 - * @param o2 - * @return the formatted string - */ - public static String format(String message, Object o1, Object o2) { - try { - Object[] args = new Object[] { o1, o2 }; - MessageFormat formatter = new MessageFormat(message); - return formatter.format(args); - } catch (Exception e) { - _log.error("Log.Error.MessageFormater.Format0", e); //$NON-NLS-1$ - return ""; //$NON-NLS-1$ - } - } - - /** - * @param message - * @param o1 - * @param o2 - * @param o3 - * @return the formatted string - */ - public static String format(String message, Object o1, Object o2, Object o3) { - try { - Object[] args = new Object[] { o1, o2, o3 }; - MessageFormat formatter = new MessageFormat(message); - return formatter.format(args); - } catch (Exception e) { - _log.error("Log.Error.MessageFormater.Format0", e); //$NON-NLS-1$ - return ""; //$NON-NLS-1$ - } - } - - /** - * @param message - * @param o - * @return the formatted string - */ - public static String format(String message, Object o[]) { - try { - MessageFormat formater = new MessageFormat(message); - return formater.format(o); - } catch (Exception e) { - _log.error("Log.Error.MessageFormater.Format0", e); //$NON-NLS-1$ - return ""; //$NON-NLS-1$ - } - } - - private MessageFormater() - { - // util class, no instantiation - } -} diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/pagedesigner/PageDesignerResources.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/pagedesigner/PageDesignerResources.java deleted file mode 100644 index ec8320445..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/pagedesigner/PageDesignerResources.java +++ /dev/null @@ -1,57 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2006 Sybase, Inc. 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: - * Sybase, Inc. - initial API and implementation - *******************************************************************************/ -package org.eclipse.jst.pagedesigner.editors.pagedesigner; - -import java.util.MissingResourceException; -import java.util.ResourceBundle; - -import org.eclipse.jst.jsf.common.ui.internal.logging.Logger; -import org.eclipse.jst.jsf.common.ui.internal.utils.ResourceUtils; -import org.eclipse.jst.pagedesigner.IJMTConstants; -import org.eclipse.jst.pagedesigner.PDPlugin; - -/** - * @author mengbo - */ -public class PageDesignerResources extends ResourceUtils { - private static Logger _log = PDPlugin - .getLogger(PageDesignerResources.class); - - private static PageDesignerResources _resource; // singleton - - /** - * Empty Constructor. - */ - protected PageDesignerResources() { - try { - _resources = ResourceBundle - .getBundle(IJMTConstants.PAGEDESIGNER_RESOURCE_BUNDLE_FILE); - // NOTE: this throws a runtime "MissingResourceException". - } catch (MissingResourceException ee) { - // catch this and the error is reported in setBundle. - // Log.Error.PageDesignerResources.Open=Error in getting source - // bundle - _log.error("Log.Error.PageDesignerResources.Open", ee); //$NON-NLS-1$ - } - setBundle(_resources, IJMTConstants.PAGEDESIGNER_RESOURCE_BUNDLE_FILE); - } - - /** - * @return the singleton - */ - public static PageDesignerResources getInstance() { - if (_resource == null) { - _resource = new PageDesignerResources(); - } - return _resource; - } -} diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/AbstractPaletteFactory.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/AbstractPaletteFactory.java deleted file mode 100644 index 646bdd572..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/AbstractPaletteFactory.java +++ /dev/null @@ -1,28 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2001, 2009 Oracle 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: - * Oracle Corporation - initial API and implementation - *******************************************************************************/ -package org.eclipse.jst.pagedesigner.editors.palette; - -import org.eclipse.gef.EditDomain; -import org.eclipse.gef.palette.PaletteRoot; -import org.eclipse.gef.ui.palette.PaletteViewerProvider; -import org.eclipse.gef.ui.views.palette.PaletteViewerPage; -import org.eclipse.ui.IEditorInput; - -/** - * Abstract class that all extenders must use to provide alternate palettes - * to the Web Page Editor. See also {@link IPaletteFactory} - */ -public abstract class AbstractPaletteFactory implements IPaletteFactory { - - public PaletteViewerPage createPaletteViewerPage(PaletteViewerProvider provider) {return null;} - public PaletteViewerProvider createPaletteViewerProvider(EditDomain domain) {return null;} - public PaletteRoot createPaletteRoot(IEditorInput editorInput){return null;} -} diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/DesignerPaletteCustomizationsHelper.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/DesignerPaletteCustomizationsHelper.java deleted file mode 100644 index ff887fc81..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/DesignerPaletteCustomizationsHelper.java +++ /dev/null @@ -1,223 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2001, 2007 Oracle 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: - * Oracle Corporation - initial API and implementation - *******************************************************************************/ -package org.eclipse.jst.pagedesigner.editors.palette; - -import java.io.File; -import java.io.FileNotFoundException; -import java.io.FileOutputStream; -import java.io.IOException; -import java.util.Iterator; - -import javax.xml.parsers.DocumentBuilder; - -import org.eclipse.gef.palette.PaletteEntry; -import org.eclipse.gef.ui.palette.PaletteCustomizer; -import org.eclipse.gef.ui.palette.PaletteViewer; -import org.eclipse.gef.ui.palette.customize.PaletteCustomizerDialog; -import org.eclipse.jface.preference.IPersistentPreferenceStore; -import org.eclipse.jface.preference.IPreferenceStore; -import org.eclipse.jst.jsf.common.ui.internal.logging.Logger; -import org.eclipse.jst.pagedesigner.PDPlugin; -import org.eclipse.jst.pagedesigner.editors.palette.impl.PaletteItemManager; -import org.eclipse.jst.pagedesigner.editors.palette.impl.TaglibPaletteDrawer; -import org.eclipse.jst.pagedesigner.utils.XMLUtil; -import org.w3c.dom.Document; -import org.w3c.dom.Element; -import org.w3c.dom.Node; -import org.w3c.dom.NodeList; -import org.xml.sax.SAXException; - -/** - * Helper class that all clients should use when dealing with palette customizations - */ -public final class DesignerPaletteCustomizationsHelper { - private static final String PREFS_TAGLIBHIDE_PREFIX = "hidden_taglib:"; //$NON-NLS-1$ - - private static Logger _log = PDPlugin.getLogger(DesignerPaletteCustomizationsHelper.class); - - /** - * @return new DesignerPaletteCustomizer - */ - public static DesignerPaletteCustomizer getNewCustomizer(){ - return new DesignerPaletteCustomizer(); - } - - /** - * @param paletteViewer - * @param paletteCustomizer - * @return new DesignerPaletteCustomizerDialog - */ - public static PaletteCustomizerDialog getNewCustomizerDialog(PaletteViewer paletteViewer, PaletteCustomizer paletteCustomizer){ - return new DesignerPaletteCustomizerDialog( - paletteViewer.getControl().getShell(), paletteCustomizer, (DesignerPaletteRoot)paletteViewer.getPaletteRoot()); - - } - - /** - * Save palette item customizations - * @param paletteRoot - */ - public static void save(DesignerPaletteRoot paletteRoot) { - IPersistentPreferenceStore prefs = getPreferenceStore(); - - for (Iterator it=paletteRoot.getChildren().iterator();it.hasNext();){ - PaletteEntry entry = (PaletteEntry)it.next(); - if (entry instanceof TaglibPaletteDrawer){ - TaglibPaletteDrawer pd = (TaglibPaletteDrawer)entry; - prefs.putValue(PREFS_TAGLIBHIDE_PREFIX + pd.getURI(), Boolean.toString(! pd.isVisible())); - } - } - PaletteItemManager.notifyPaletteItemManagersOfCustomizationsUpdate(paletteRoot.getPaletteManager()); - - } - - /** - * Load user customizations - * @param paletteItemManager - */ - public static void loadUserCustomizations(IPaletteItemManager paletteItemManager) { - IPreferenceStore store = getPreferenceStore(); - for (Iterator it=paletteItemManager.getAllCategories().iterator();it.hasNext();){ - TaglibPaletteDrawer tld = (TaglibPaletteDrawer)it.next(); - if (store.contains(PREFS_TAGLIBHIDE_PREFIX+tld.getURI())){ - tld.setVisible( ! store.getBoolean(PREFS_TAGLIBHIDE_PREFIX+tld.getURI())); - } - } - } - - /** - * Hide a category (TaglibPaletteDrawer) that will be persisted as a customization - * @param taglibPaletteDrawer - */ - public static void hideTaglibDrawer(TaglibPaletteDrawer taglibPaletteDrawer){ - IPersistentPreferenceStore prefs = getPreferenceStore(); - taglibPaletteDrawer.setVisible(false); - prefs.putValue(PREFS_TAGLIBHIDE_PREFIX + taglibPaletteDrawer.getURI(), Boolean.TRUE.toString()); - save((DesignerPaletteRoot)taglibPaletteDrawer.getParent()); - } - - private static IPersistentPreferenceStore getPreferenceStore() { - return (IPersistentPreferenceStore)PDPlugin.getDefault().getPreferenceStore(); - } - - /** - * Exports the current state of customizations of the current palette instance. - * - * Unsaved data will be exported. - * - * Currently only the "hide" flag of a category is exported. All categories are exported. - * - * @param paletteItemManager - * @param filename - */ - public static void exportCustomizations(IPaletteItemManager paletteItemManager, String filename){ - - Document document = XMLUtil.getDocumentBuilder().getDOMImplementation() - .createDocument(null, IPaletteConstants.ROOT, null); - try { - FileOutputStream ostream = null; - int index = filename.lastIndexOf(File.separator); - String foldername = filename.substring(0, index); - File folder = new File(foldername); - if (folder != null && !folder.exists()) { - folder.mkdir(); - } - - ostream = new FileOutputStream(filename); - - for (Iterator iter = paletteItemManager.getAllCategories().iterator(); iter.hasNext();) { - TaglibPaletteDrawer category = (TaglibPaletteDrawer) iter - .next(); - if (category == null) continue; - - Element categoryElement = document.createElement(IPaletteConstants.CATEGORY_TAG); - categoryElement.setAttribute(IPaletteConstants.ID, category.getURI()); - categoryElement.setAttribute(IPaletteConstants.ISHIDDEN, Boolean.toString(! category.isVisible())); - document.getDocumentElement().appendChild(categoryElement); - } - XMLUtil.serialize(document, ostream); - ostream.close(); - } catch (IOException e) { - _log.error("DesignerPaletteCustomizationsHelper.save.error.IOException", e); //$NON-NLS-1$ - } - } - - /** - * Imports a palette customization export file. - * - * If there are entries matching in the existing workspace customizations, they will be overridden. - * - * @param customizer - * @param filename - */ - public static void importCustomizations(DesignerPaletteCustomizer customizer, String filename){ - Document document = null; - try { - DocumentBuilder builder = XMLUtil.getDocumentBuilder(); - if (builder != null) { - document = builder.parse(filename); - } else { - _log.error("DesignerPaletteCustomizationsHelper.importCustomizations.error.getDocumentBuilderFail");// $NON-NLS-1$ //$NON-NLS-1$ - } - } catch (FileNotFoundException e) { - //should never get here as user chose file thru a file chooser dialog - _log.error( - "DesignerPaletteCustomizationsHelper.importCustomizations.error.FileNotFoundException");// $NON-NLS-1$ //$NON-NLS-1$ - document = null; - } catch (IOException e) { - _log.error( - "DesignerPaletteCustomizationsHelper.importCustomizations.error.IOException", e.toString(), e); //$NON-NLS-1$ - } catch (SAXException e) { - _log.error( - "DesignerPaletteCustomizationsHelper.importCustomizations.error.SAXException", e.toString(), e); //$NON-NLS-1$ - } - if (document != null) { - Element root = document.getDocumentElement(); - if (root != null) { - NodeList catetorylist = root.getChildNodes(); - for (int i = 0, n = catetorylist.getLength(); i < n; i++) { - Node childNode = catetorylist.item(i); - if (childNode.getNodeType() == Node.ELEMENT_NODE - && childNode.getNodeName().equals( - IPaletteConstants.CATEGORY_TAG)) { - - Element categoryElement = (Element) childNode; - //only checking for hidden flag currently - if (categoryElement.hasAttribute(IPaletteConstants.ISHIDDEN)){ - boolean isHidden =Boolean.valueOf(categoryElement.getAttribute(IPaletteConstants.ISHIDDEN)).booleanValue(); - - String uri = categoryElement.getAttribute(IPaletteConstants.ID); - applyImport(customizer, uri, isHidden); - } - - - } - } - } - } - } - - private static void applyImport( - DesignerPaletteCustomizer customizer, String uri, boolean isHidden) { - //apply the isHidden exported flag to the paletteRoot child if present - for (Iterator it=customizer.getDesignerPaletteRoot().getChildren().iterator();it.hasNext();){ - Object o = it.next(); - if (o instanceof TaglibPaletteDrawer){ - TaglibPaletteDrawer pd = (TaglibPaletteDrawer)o; - if (uri.equals(pd.getURI())){ - pd.setVisible(! isHidden); - break; - } - } - } - } - -} diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/DesignerPaletteCustomizer.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/DesignerPaletteCustomizer.java deleted file mode 100644 index 9656cd1cb..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/DesignerPaletteCustomizer.java +++ /dev/null @@ -1,164 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2006 Sybase, Inc. 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: - * Sybase, Inc. - initial API and implementation - *******************************************************************************/ -package org.eclipse.jst.pagedesigner.editors.palette; - -import java.util.ArrayList; -import java.util.List; - -import org.eclipse.gef.palette.PaletteEntry; -import org.eclipse.gef.ui.palette.PaletteCustomizer; -import org.eclipse.gef.ui.palette.customize.PaletteSeparatorFactory; -import org.eclipse.gef.ui.palette.customize.PaletteStackFactory; -import org.eclipse.jst.pagedesigner.editors.palette.impl.PaletteItemManager; - -/** - * @author mengbo - */ -public class DesignerPaletteCustomizer extends PaletteCustomizer { - - - private DesignerPaletteRoot root; - - /** - * Set the palette root. Must be set before the customizer can be used - * @param root - */ - public void setPaletteRoot(DesignerPaletteRoot root){ - this.root = root; - } - - /** - * Return the palette root for this customizer - * @return DesignerPaletteRoot - */ - public DesignerPaletteRoot getDesignerPaletteRoot(){ - return root; - } - - /* (non-Javadoc) - * @see org.eclipse.gef.ui.palette.PaletteCustomizer#canMoveDown(org.eclipse.gef.palette.PaletteEntry) - */ - public boolean canMoveDown(PaletteEntry entry) { - return false; - } - - /* (non-Javadoc) - * @see org.eclipse.gef.ui.palette.PaletteCustomizer#canMoveUp(org.eclipse.gef.palette.PaletteEntry) - */ - public boolean canMoveUp(PaletteEntry entry) { - return false; - } - /* - * (non-Javadoc) - * - * @see org.eclipse.gef.ui.palette.PaletteCustomizer#canMoveDown(org.eclipse.gef.palette.PaletteEntry) - */ -// public boolean canMoveDown(PaletteEntry entry) { -// if (!(entry instanceof PaletteDrawer)) { -// return false; -// } -// return super.canMoveDown(entry); -// } - - /* - * (non-Javadoc) - * - * @see org.eclipse.gef.ui.palette.PaletteCustomizer#canMoveUp(org.eclipse.gef.palette.PaletteEntry) - */ -// public boolean canMoveUp(PaletteEntry entry) { -// if (!(entry instanceof PaletteDrawer)) { -// return false; -// } -// if (entry.getParent().getChildren().indexOf(entry) == 1) { -// return false; -// } -// return super.canMoveUp(entry); -// } - -// /* -// * (non-Javadoc) -// * -// * @see org.eclipse.gef.ui.palette.PaletteCustomizer#performMoveDown(org.eclipse.gef.palette.PaletteEntry) -// */ -// public void performMoveDown(PaletteEntry entry) { -// if (entry instanceof PaletteDrawer) { -// String id = entry.getId(); -// TaglibPaletteDrawer cat = PaletteItemManager.getCurrentInstance().getTaglibPalletteDrawer(id); -// movedown(PaletteItemManager.getCurrentInstance(), cat); -// super.performMoveDown(entry); -// } -// } -// private void moveup(PaletteItemManager paletteItemManager, TaglibPaletteDrawer cat) { -// int i = paletteItemManager.getAllCategories().indexOf(cat); -// TaglibPaletteDrawer upCat = (TaglibPaletteDrawer) paletteItemManager.getAllCategories() -// .get(i - 1); -// movedown(paletteItemManager, upCat); -// } -// -// private void movedown(PaletteItemManager paletteItemManager, TaglibPaletteDrawer cat) { -// int i = paletteItemManager.getAllCategories().indexOf(cat); -// paletteItemManager.getAllCategories().add(i + 2, cat); -// paletteItemManager.getAllCategories().remove(i); -// } -// /* -// * (non-Javadoc) -// * -// * @see org.eclipse.gef.ui.palette.PaletteCustomizer#performMoveUp(org.eclipse.gef.palette.PaletteEntry) -// */ -// public void performMoveUp(PaletteEntry entry) { -// if (entry instanceof PaletteDrawer) { -// String id = entry.getId(); -// TaglibPaletteDrawer cat = PaletteItemManager.getCurrentInstance().getTaglibPalletteDrawer(id); -// moveup(PaletteItemManager.getCurrentInstance(), cat); -// super.performMoveUp(entry); -// } -// } - - /* - * (non-Javadoc) - * - * @see org.eclipse.gef.ui.palette.PaletteCustomizer#canDelete(org.eclipse.gef.palette.PaletteEntry) - */ - public boolean canDelete(PaletteEntry entry) { - return false; - } - - public List getNewEntryFactories() { - List list = new ArrayList(4); - list.add(new PaletteSeparatorFactory()); - list.add(new PaletteStackFactory()); - return list; - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.gef.ui.palette.PaletteCustomizer#revertToSaved() - */ - public void revertToSaved() { - //note that reset is not currently part of IPaletteItemManager interface... - ((PaletteItemManager)root.getPaletteManager()).reset(); - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.gef.ui.palette.PaletteCustomizer#save() - */ - public void save() { - DesignerPaletteCustomizationsHelper.save(root); -// PaletteItemManager.getCurrentInstance().reset(); - } - - - -} diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/DesignerPaletteCustomizerDialog.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/DesignerPaletteCustomizerDialog.java deleted file mode 100644 index 3689e5a64..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/DesignerPaletteCustomizerDialog.java +++ /dev/null @@ -1,363 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2006 Sybase, Inc. 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: - * Sybase, Inc. - initial API and implementation - *******************************************************************************/ -package org.eclipse.jst.pagedesigner.editors.palette; - -import java.beans.PropertyChangeEvent; -import java.beans.PropertyChangeListener; -import java.util.ArrayList; -import java.util.Iterator; -import java.util.List; - -import org.eclipse.gef.palette.PaletteEntry; -import org.eclipse.gef.ui.palette.PaletteCustomizer; -import org.eclipse.gef.ui.palette.customize.PaletteCustomizationAction; -import org.eclipse.gef.ui.palette.customize.PaletteCustomizerDialog; -import org.eclipse.jface.action.Action; -import org.eclipse.jface.viewers.ITreeContentProvider; -import org.eclipse.jface.viewers.TreeViewer; -import org.eclipse.jface.viewers.Viewer; -import org.eclipse.jst.jsf.common.ui.internal.utils.PluginImageHelper; -import org.eclipse.jst.pagedesigner.PDPlugin; -import org.eclipse.jst.pagedesigner.editors.pagedesigner.PageDesignerResources; -import org.eclipse.jst.pagedesigner.editors.palette.impl.PaletteItemManager; -import org.eclipse.jst.pagedesigner.editors.palette.impl.TaglibPaletteDrawer; -import org.eclipse.swt.widgets.Button; -import org.eclipse.swt.widgets.Composite; -import org.eclipse.swt.widgets.FileDialog; -import org.eclipse.swt.widgets.Shell; - -/** - * Customization dialog for Web Page Designer palette items - * @author mengbo - * @version 1.5 - */ -public class DesignerPaletteCustomizerDialog extends PaletteCustomizerDialog { - private static final String DEFAULT_CUSTOMIZATIONS_EXPORT_FILENAME = "WPDPaletteCustomizations.xml"; //$NON-NLS-1$ - - private static String DEFAULTEXTENSION = ".xml";//$NON-NLS-1$ - - /** - * Constructor - * @param shell - * @param customizer - * @param root - */ - public DesignerPaletteCustomizerDialog(Shell shell, - PaletteCustomizer customizer, DesignerPaletteRoot root) { - super(shell, customizer, root); - - } - - private PropertyChangeListener applyButtonUpdater = new PropertyChangeListener() { - - - public void propertyChange(PropertyChangeEvent evt) { - Button applyButton = getButton(PaletteCustomizerDialog.APPLY_ID); - if (applyButton == null) { - return; - } - applyButton.setEnabled(true); - } - }; - - /* (non-Javadoc) - * @see org.eclipse.jface.window.Window#open() - */ - public int open() { - // save the current state before open - // save(); - return super.open(); - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.gef.ui.palette.customize.PaletteCustomizerDialog#setActiveEntry(org.eclipse.gef.palette.PaletteEntry) - */ - protected void setActiveEntry(PaletteEntry entry) { - //remove listener on previous entry before adding to new entry - PaletteEntry pre = getSelectedPaletteEntry(); - if (pre != null) { - pre.removePropertyChangeListener(applyButtonUpdater); - } else { - getButton(APPLY_ID).setEnabled(false); - } - - if (entry != null) - entry.addPropertyChangeListener(applyButtonUpdater); - - super.setActiveEntry(entry); - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.gef.ui.palette.customize.PaletteCustomizerDialog#save() - */ - protected void save() { - super.save(); - Button applyButton = getButton(PaletteCustomizerDialog.APPLY_ID); - if (applyButton != null) { - applyButton.setEnabled(false); - } - } - - /* (non-Javadoc) - * @see org.eclipse.gef.ui.palette.customize.PaletteCustomizerDialog#createButtonsForButtonBar(org.eclipse.swt.widgets.Composite) - */ - protected void createButtonsForButtonBar(Composite parent) { - super.createButtonsForButtonBar(parent); - getButton(APPLY_ID).setEnabled(false); - // save(); - } - - /* (non-Javadoc) - * Export action - * - */ - private class ExportAction extends PaletteCustomizationAction { - - /** - * Constructor - */ - public ExportAction() { - setEnabled(true); - setText(PageDesignerResources.getInstance().getString( - "DesignerPaletteCustomizerDialog.label.export")); //$NON-NLS-1$ - setImageDescriptor(PluginImageHelper.getInstance() - .getImageDescriptor(DesignerPaletteImages.IMG_ELCL_EXPORT, - PDPlugin.getPluginId())); - setDisabledImageDescriptor(PluginImageHelper.getInstance() - .getImageDescriptor(DesignerPaletteImages.IMG_DLCL_EXPORT, - PDPlugin.getPluginId())); - setHoverImageDescriptor(PluginImageHelper.getInstance() - .getImageDescriptor(DesignerPaletteImages.IMG_CLCL_EXPORT, - PDPlugin.getPluginId())); - } - - private void handleExport() { - final FileDialog fileDialog = new FileDialog(PDPlugin - .getActiveWorkbenchShell()); - fileDialog.setFileName(DEFAULT_CUSTOMIZATIONS_EXPORT_FILENAME); - String[] filterExtensions = new String[2]; - filterExtensions[0] = "*.xml"; //$NON-NLS-1$ - filterExtensions[1] = "*.*"; //$NON-NLS-1$ - fileDialog.setFilterExtensions(filterExtensions); - fileDialog.setText(Messages.DesignerPaletteCustomizerDialog_ExportCustomizations); - String filename = fileDialog.open(); - if (filename != null) { - if (!filename.endsWith(DEFAULTEXTENSION)) { - filename = filename + DEFAULTEXTENSION; - } - final IPaletteContext context = PaletteItemManager.createPaletteContext(((DesignerPaletteRoot)getPaletteRoot()).getFile()); - DesignerPaletteCustomizationsHelper - .exportCustomizations(PaletteItemManager.getInstance(context), filename); - - - updateActions(); - } - } - - /* (non-Javadoc) - * @see org.eclipse.jface.action.Action#run() - */ - public void run() { - handleExport(); - } - - /* (non-Javadoc) - * @see org.eclipse.gef.ui.palette.customize.PaletteCustomizationAction#update() - */ - public void update() { - //boolean enabled = false; -// PaletteEntry entry = getSelectedPaletteEntry(); -// if (entry != null) { - // if (getCustomizer() instanceof DesignerPaletteCustomizer) - // enabled = ((DesignerPaletteCustomizer) - // getCustomizer()).canExport(entry); -// } - setEnabled(true); - } - - } - - /* (non-Javadoc) - * Import action - */ - private class ImportAction extends PaletteCustomizationAction { - private DesignerPaletteCustomizerDialog designerPaletteCustomizerDialog; - - /** - * Constructor - * @param designerPaletteCustomizerDialog - */ - public ImportAction(DesignerPaletteCustomizerDialog designerPaletteCustomizerDialog) { - super(); - this.designerPaletteCustomizerDialog = designerPaletteCustomizerDialog; - setEnabled(true); - setText(PageDesignerResources.getInstance().getString( - "DesignerPaletteCustomizerDialog.label.import")); //$NON-NLS-1$ - setImageDescriptor(PluginImageHelper.getInstance() - .getImageDescriptor(DesignerPaletteImages.IMG_ELCL_IMPORT, - PDPlugin.getPluginId())); - setDisabledImageDescriptor(PluginImageHelper.getInstance() - .getImageDescriptor(DesignerPaletteImages.IMG_DLCL_IMPORT, - PDPlugin.getPluginId())); - setHoverImageDescriptor(PluginImageHelper.getInstance() - .getImageDescriptor(DesignerPaletteImages.IMG_CLCL_IMPORT, - PDPlugin.getPluginId())); - - } - - private void handleImport() { -// PaletteEntry entry = designerPaletteCustomizerDialog.getSelectedPaletteEntry(); - final FileDialog fileDialog = new FileDialog(PDPlugin - .getActiveWorkbenchShell()); - fileDialog.setFileName(DEFAULT_CUSTOMIZATIONS_EXPORT_FILENAME); - String[] filterExtensions = new String[2]; - filterExtensions[0] = "*.xml"; //$NON-NLS-1$ - filterExtensions[1] = "*.*"; //$NON-NLS-1$ - fileDialog.setFilterExtensions(filterExtensions); - fileDialog.setText(Messages.DesignerPaletteCustomizerDialog_ImportCustomizations); - String filename = fileDialog.open(); - if (filename != null) { - //deselect current entry first - designerPaletteCustomizerDialog.close(); - -// getCustomizer().revertToSaved(); - DesignerPaletteCustomizationsHelper - .importCustomizations((DesignerPaletteCustomizer)getCustomizer(), filename); - -// designerPaletteCustomizerDialog.setActiveEntry(entry); - ((DesignerPaletteCustomizer)getCustomizer()).getDesignerPaletteRoot().refresh(); - designerPaletteCustomizerDialog.open(); -// designerPaletteCustomizerDialog.setActiveEntry(entry); - } - } - - public void run() { - handleImport(); - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.gef.ui.palette.customize.PaletteCustomizationAction#update() - */ - public void update() { - //nothing to do - } - } - - /** - * @return import action - */ - public Action getImportAction() { - return new ImportAction(this); - } - - /** - * @return export action - */ - public Action getExportAction() { - return new ExportAction(); - } - - /* (non-Javadoc) - * @see org.eclipse.gef.ui.palette.customize.PaletteCustomizerDialog#createOutlineActions() - */ - protected List createOutlineActions() { - List actions = super.createOutlineActions(); - actions.remove(0);// remove new action - actions.remove(0);// remove delete action - actions.add(new ImportAction(this)); - actions.add(new ExportAction()); - - return actions; - } - - @Override - protected TreeViewer createOutlineTreeViewer(Composite composite) { - TreeViewer viewer = super.createOutlineTreeViewer(composite); - viewer.setContentProvider(new DesignerPaletteContentProvider()); - return viewer; - } - - - /** - * Content provider for dialog. - * Displays only {@link TaglibPaletteDrawer}s - */ - private static class DesignerPaletteContentProvider implements ITreeContentProvider { - - public Object[] getChildren(Object parentElement) { - if (parentElement instanceof DesignerPaletteRoot){ - List libs = new ArrayList(); - List children = ((DesignerPaletteRoot)parentElement).getChildren(); - if (!children.isEmpty()) { - for (Iterator it=children.iterator();it.hasNext();){ - PaletteEntry entry = (PaletteEntry)it.next(); - if (entry instanceof TaglibPaletteDrawer) - libs.add(entry); - } - if (!libs.isEmpty()) - return libs.toArray(); - } - } - return null; - } - - /* (non-Javadoc) - * @see org.eclipse.jface.viewers.ITreeContentProvider#getParent(java.lang.Object) - */ - public Object getParent(Object element) { - return ((PaletteEntry)element).getParent(); - } - - /* (non-Javadoc) - * @see org.eclipse.jface.viewers.ITreeContentProvider#hasChildren(java.lang.Object) - */ - public boolean hasChildren(Object element) { - return false; - } - - /* (non-Javadoc) - * @see org.eclipse.jface.viewers.IStructuredContentProvider#getElements(java.lang.Object) - */ - public Object[] getElements(Object inputElement) { - Object[] elements = new Object[0]; - if (inputElement instanceof DesignerPaletteRoot){ - elements = getChildren(inputElement); - if (elements == null) { - elements = new Object[0]; - } - } - return elements; - } - - /* (non-Javadoc) - * @see org.eclipse.jface.viewers.IContentProvider#dispose() - */ - public void dispose() { - //nothing to do - } - - /* (non-Javadoc) - * @see org.eclipse.jface.viewers.IContentProvider#inputChanged(org.eclipse.jface.viewers.Viewer, java.lang.Object, java.lang.Object) - */ - public void inputChanged(Viewer viewer, Object oldInput, Object newInput) { - //won't change - } - - - } -} diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/DesignerPaletteImages.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/DesignerPaletteImages.java deleted file mode 100644 index e00e92a8d..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/DesignerPaletteImages.java +++ /dev/null @@ -1,49 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2006 Sybase, Inc. 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: - * Sybase, Inc. - initial API and implementation - *******************************************************************************/ -package org.eclipse.jst.pagedesigner.editors.palette; - -/** - * Palette Image constants - * @author mengbo - */ -public class DesignerPaletteImages { - /** - * Import hover image - */ - public static final String IMG_CLCL_IMPORT = "icons/palette/GENERIC/small/PD_Palette_Import_Hover.gif"; //$NON-NLS-1$ - - /** - * Export hover image - */ - public static final String IMG_CLCL_EXPORT = "icons/palette/GENERIC/small/PD_Palette_Export_Hover.gif"; //$NON-NLS-1$ - - /** - * Import disabled image - */ - public static final String IMG_DLCL_IMPORT = "icons/palette/GENERIC/small/PD_Palette_Import_Disabled.gif"; //$NON-NLS-1$ - - /** - * Export disabled image - */ - public static final String IMG_DLCL_EXPORT = "icons/palette/GENERIC/small/PD_Palette_Export_Disabled.gif"; //$NON-NLS-1$ - - /** - * Import image - */ - public static final String IMG_ELCL_IMPORT = "icons/palette/GENERIC/small/PD_Palette_Import.gif"; //$NON-NLS-1$ - - /** - * Export image - */ - public static final String IMG_ELCL_EXPORT = "icons/palette/GENERIC/small/PD_Palette_Export.gif"; //$NON-NLS-1$ - -} diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/DesignerPaletteRoot.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/DesignerPaletteRoot.java deleted file mode 100644 index c19f8a162..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/DesignerPaletteRoot.java +++ /dev/null @@ -1,131 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2006 Sybase, Inc. 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: - * Sybase, Inc. - initial API and implementation - *******************************************************************************/ -package org.eclipse.jst.pagedesigner.editors.palette; - -import java.util.ArrayList; -import java.util.List; - -import org.eclipse.core.resources.IFile; -import org.eclipse.gef.Tool; -import org.eclipse.gef.palette.MarqueeToolEntry; -import org.eclipse.gef.palette.PaletteEntry; -import org.eclipse.gef.palette.PaletteGroup; -import org.eclipse.gef.palette.PaletteRoot; -import org.eclipse.gef.palette.SelectionToolEntry; -import org.eclipse.gef.palette.ToolEntry; -import org.eclipse.jst.pagedesigner.editors.pagedesigner.PageDesignerResources; -import org.eclipse.jst.pagedesigner.editors.palette.impl.PaletteItemManager; -import org.eclipse.jst.pagedesigner.tools.RangeSelectionTool; - -/** - * @author mengbo - */ -public class DesignerPaletteRoot extends PaletteRoot { - private IPaletteItemManager _manager; - private IFile _file; - private IPaletteContext _paletteContext; - - /** - * Creates a new DesignerPaletteRoot instance. - * @param file - */ - public DesignerPaletteRoot(final IFile file) { - // create root - super(); - - this._paletteContext = PaletteItemManager.createPaletteContext(file); - this._manager = PaletteItemManager.getInstance(_paletteContext); - if (this._manager != null) { - setupBasicItems(); - loadItems(); - } - // TODO: register listener on the manager for toolpalette change event. - - } - - /** - * @return the paletteContext - */ - public IPaletteContext getPaletteContext() { - return _paletteContext; - } - - /** - * @return the paletteContext - */ - public IFile getFile() { - return _file; - } - /** - * @return IPaletteItemManager instance for this root - */ - public IPaletteItemManager getPaletteManager() { - return this._manager; - } - - private void setupBasicItems() { - // Preferences prefs = PDPlugin.getDefault().getPluginPreferences(); - // _showAll = prefs.getBoolean(IJMTConstants.PREF_PALETTE_SHOW_ALL); - - // a group of default control tools - // JSFPalette.DefaultGroup.LabelJSFPallete=Controls - PaletteGroup controls = new PaletteGroup(PageDesignerResources - .getInstance().getString( - "JSFPalette.DefaultGroup.LabelJSFPallete")); //$NON-NLS-1$ - add(controls); - // the selection tool - ToolEntry tool = new SelectionToolEntry() { - public Tool createTool() { - return new RangeSelectionTool(); - } - }; - controls.add(tool); - - // use selection tool as default entry - setDefaultEntry(tool); - - // the marquee selection tool - controls.add(new MarqueeToolEntry()); - } - - private void loadItems() { - // _showAll = - // PDPlugin.getDefault().getPluginPreferences().getBoolean(IJMTConstants.PREF_PALETTE_SHOW_ALL); - // remove other things first. - removeItems(); - - if (_manager != null) { - this.addAll(_manager.getAllCategories()); - }; - } - - /** - * remove everything from the paletteroot - * - */ - protected void removeItems() { - // we try to remove anything other than the basic - // group that have the selectentry and marqeeentry - List children1 = new ArrayList(getChildren()); - children1.remove(0); // remove the first one - for (int i = 0, n = children1.size(); i < n; i++) { - this.remove((PaletteEntry) children1.get(i)); - } - } - - /** - * refresh the palette, normally caused by preference change. - */ - public void refresh() { - loadItems(); - } -} diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/DesignerPaletteRootFactory.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/DesignerPaletteRootFactory.java deleted file mode 100644 index 77bbe6447..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/DesignerPaletteRootFactory.java +++ /dev/null @@ -1,114 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2006 Sybase, Inc. 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: - * Sybase, Inc. - initial API and implementation - *******************************************************************************/ -package org.eclipse.jst.pagedesigner.editors.palette; - -import org.eclipse.core.resources.IFile; -import org.eclipse.gef.palette.PaletteRoot; -import org.eclipse.gef.ui.palette.FlyoutPaletteComposite.FlyoutPreferences; -import org.eclipse.jface.preference.IPreferenceStore; -import org.eclipse.jst.pagedesigner.PDPlugin; - -/** - * Factory for creating DesignerPaletteRoots - * @author mengbo - */ -public class DesignerPaletteRootFactory { - /** Default palette size. */ - private static final int DEFAULT_PALETTE_SIZE = 125; - - /** Preference ID used to persist the palette location. */ - private static final String PALETTE_DOCK_LOCATION = "DesignerPaletteRootFactory.Location"; //$NON-NLS-1$ - - /** Preference ID used to persist the palette size. */ - private static final String PALETTE_SIZE = "DesignerPaletteRootFactory.Size"; //$NON-NLS-1$ - - /** Preference ID used to persist the flyout palette's state. */ - private static final String PALETTE_STATE = "DesignerPaletteRootFactory.State"; //$NON-NLS-1$ - - /** - * Return a {@link FlyoutPreferences} instance used to save/load the preferences of - * a flyout palette. - * @return FlyoutPreferences - */ - public static FlyoutPreferences createPalettePreferences() { - // set default flyout palette preference values, in case the preference - // store - // does not hold stored values for the given preferences - getPreferenceStore().setDefault(PALETTE_DOCK_LOCATION, -1); - getPreferenceStore().setDefault(PALETTE_STATE, -1); - getPreferenceStore().setDefault(PALETTE_SIZE, DEFAULT_PALETTE_SIZE); - - return new FlyoutPreferences() { - public int getDockLocation() { - return getPreferenceStore().getInt(PALETTE_DOCK_LOCATION); - } - - public int getPaletteState() { - return getPreferenceStore().getInt(PALETTE_STATE); - } - - public int getPaletteWidth() { - return getPreferenceStore().getInt(PALETTE_SIZE); - } - - public void setDockLocation(int location) { - getPreferenceStore().setValue(PALETTE_DOCK_LOCATION, location); - } - - public void setPaletteState(int state) { - getPreferenceStore().setValue(PALETTE_STATE, state); - } - - public void setPaletteWidth(int width) { - getPreferenceStore().setValue(PALETTE_SIZE, width); - } - }; - } - - /** - * Returns the preference store for the PDPlugin. - * - * @see org.eclipse.ui.plugin.AbstractUIPlugin#getPreferenceStore() - */ - private static IPreferenceStore getPreferenceStore() { - return PDPlugin.getDefault().getPreferenceStore(); - } - -// /** -// * Creates the PaletteRoot and adds all palette elements. Use this factory -// * method to create a new palette for your graphical editor. -// * <p> -// * <i>Note: cannot support facelets</i> -// * @param project -// * @return a new PaletteRoot -// * @deprecated - use createPaletteRoot(IFile file) -// */ -// public static PaletteRoot createPaletteRoot(IProject project) { -// PaletteItemManager manager = PaletteItemManager.getInstance(project); -// if (manager == null) { -// return null; -// } -// manager.reset(); -// PaletteRoot palette = new DesignerPaletteRoot(manager); -// return palette; -// } - - /** - * Creates the PaletteRoot and adds all palette elements. Use this factory - * method to create a new palette for your graphical editor. - * @param file - * @return a new PaletteRoot - */ - public static PaletteRoot createPaletteRoot(final IFile file) { - return new DesignerPaletteRoot(file); - } -} diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/DesignerPaletteViewer.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/DesignerPaletteViewer.java deleted file mode 100644 index e8a87b407..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/DesignerPaletteViewer.java +++ /dev/null @@ -1,151 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2006 Sybase, Inc. 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: - * Sybase, Inc. - initial API and implementation - *******************************************************************************/ -package org.eclipse.jst.pagedesigner.editors.palette; - -import java.util.List; - -import org.eclipse.gef.palette.PaletteRoot; -import org.eclipse.gef.ui.palette.PaletteCustomizer; -import org.eclipse.gef.ui.palette.PaletteViewer; -import org.eclipse.gef.ui.palette.customize.PaletteCustomizerDialog; -import org.eclipse.jst.pagedesigner.editors.palette.impl.PaletteItemManager; -import org.eclipse.swt.widgets.Control; -import org.eclipse.swt.widgets.Display; - -/** - * XXX: currently create this class is just for add/remove listener to - * preference change, so can refresh the palette. - * - * @author mengbo - * @author mengbo - * @version 1.5 - */ -public class DesignerPaletteViewer extends PaletteViewer { - - private PaletteCustomizerDialog _customizerDialog = null; - - private DesignerPaletteCustomizer _customizer; - - /** - * - */ - public DesignerPaletteViewer() { - super(); - - this.enableVerticalScrollbar(true); - } - -// Preferences.IPropertyChangeListener listener = new Preferences.IPropertyChangeListener() { -// public void propertyChange(PropertyChangeEvent event) { -// PaletteRoot root = getPaletteRoot(); -// if (root instanceof DesignerPaletteRoot) { -//// ((DesignerPaletteRoot) root).refresh(); -// // XXX: setActiveTool to null to workaround GEF bug of NPE -// // setActiveTool(null); -// } -// } -// }; - - final IEntryChangeListener _paletteModelListener = new IEntryChangeListener() { - - public void modelChanged(List oldDefinitions, List newDefinitions) { - final PaletteRoot root = getPaletteRoot(); - if (root instanceof DesignerPaletteRoot) { - Control viewerControl = getControl(); - - if (viewerControl != null && !viewerControl.isDisposed()) - { - Display display = viewerControl.getDisplay(); - - if (display != null && !display.isDisposed()) - { - // this updates the UI, so it must be run on - // the display thread - display.asyncExec(new Runnable() - { - public void run() { - ((DesignerPaletteRoot) root).refresh(); - } - }); - } - } - } - } - - }; - - - /* - * (non-Javadoc) - * - * @see org.eclipse.gef.ui.palette.PaletteViewer#hookControl() - */ - protected void hookControl() { - super.hookControl(); -// PDPlugin.getDefault().getPluginPreferences().addPropertyChangeListener( -// listener); - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.gef.ui.palette.PaletteViewer#unhookControl() - */ - protected void unhookControl() { -// PDPlugin.getDefault().getPluginPreferences() -// .removePropertyChangeListener(listener); - // remove palette model change listener - PaletteRoot root = getPaletteRoot(); - if (root instanceof DesignerPaletteRoot) { - if (_customizer != null){ - _customizer.setPaletteRoot(null); - } - IPaletteItemManager imanager = ((DesignerPaletteRoot) root) - .getPaletteManager(); - if (imanager instanceof PaletteItemManager) { - PaletteItemManager manager = (PaletteItemManager) imanager; -// ResourcesPlugin.getWorkspace().removeResourceChangeListener( -// _resourceChangeListener); - manager.removeEntryChangeListener(_paletteModelListener); -// PaletteItemManager.clearPaletteItemManager(); - manager.release(((DesignerPaletteRoot)root).getPaletteContext()); - } - } - super.unhookControl(); - } - - public PaletteCustomizerDialog getCustomizerDialog() { - if (_customizerDialog == null){ - _customizerDialog = DesignerPaletteCustomizationsHelper.getNewCustomizerDialog(this, getCustomizer() ); - } - return _customizerDialog; - } - - public PaletteCustomizer getCustomizer() { - if (_customizer == null){ - _customizer = DesignerPaletteCustomizationsHelper.getNewCustomizer(); - _customizer.setPaletteRoot((DesignerPaletteRoot)this.getPaletteRoot()); - } - return _customizer; - } - - public void setPaletteRoot(PaletteRoot root) { - super.setPaletteRoot(root); - // add palette model change listener - // PaletteRoot root = getPaletteRoot(); - if (root instanceof DesignerPaletteRoot && ((DesignerPaletteRoot) root).getPaletteManager() != null) { - ((DesignerPaletteRoot) root).getPaletteManager() - .addEntryChangeListener(_paletteModelListener); - } - - } -} diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/DesignerPaletteViewerProvider.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/DesignerPaletteViewerProvider.java deleted file mode 100644 index 57a8b7444..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/DesignerPaletteViewerProvider.java +++ /dev/null @@ -1,109 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2006 Sybase, Inc. 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: - * Sybase, Inc. - initial API and implementation - *******************************************************************************/ -package org.eclipse.jst.pagedesigner.editors.palette; - -import org.eclipse.gef.EditDomain; -import org.eclipse.gef.dnd.TemplateTransferDragSourceListener; -import org.eclipse.gef.internal.ui.palette.editparts.DrawerEditPart; -import org.eclipse.gef.ui.palette.PaletteContextMenuProvider; -import org.eclipse.gef.ui.palette.PaletteViewer; -import org.eclipse.gef.ui.palette.PaletteViewerProvider; -import org.eclipse.jface.action.Action; -import org.eclipse.jface.action.IMenuManager; -import org.eclipse.jface.viewers.StructuredSelection; -import org.eclipse.jst.pagedesigner.PDPlugin; -import org.eclipse.jst.pagedesigner.editors.palette.impl.TaglibPaletteDrawer; -import org.eclipse.swt.widgets.Composite; -import org.eclipse.ui.PlatformUI; - -/** - * @author mengbo - */ -public class DesignerPaletteViewerProvider extends PaletteViewerProvider { - /** - * @param graphicalViewerDomain - */ - public DesignerPaletteViewerProvider(EditDomain graphicalViewerDomain) { - super(graphicalViewerDomain); - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.gef.ui.palette.PaletteViewerProvider#configurePaletteViewer(org.eclipse.gef.ui.palette.PaletteViewer) - */ - protected void configurePaletteViewer(PaletteViewer viewer) { - // super.configurePaletteViewer(viewer); - viewer.setContextMenu(new PaletteContextMenuProvider(viewer) { - public void buildContextMenu(IMenuManager menu) { - StructuredSelection sel = (StructuredSelection)getViewer().getSelection(); - if (sel != null - && sel.getFirstElement() instanceof DrawerEditPart - && ((DrawerEditPart)sel.getFirstElement()).getDrawer() instanceof TaglibPaletteDrawer) - menu.add(new HideTagLibAction((DrawerEditPart)sel.getFirstElement(), Messages.DesignerPaletteViewerProvider_Hide)); - super.buildContextMenu(menu); - } - }); - - // XXX: should only use the following when we use Template - viewer - .addDragSourceListener(new TemplateTransferDragSourceListener( - viewer)); - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.gef.ui.palette.PaletteViewerProvider#createPaletteViewer(org.eclipse.swt.widgets.Composite) - */ - public PaletteViewer createPaletteViewer(Composite parent) { - PaletteViewer pViewer = new DesignerPaletteViewer(); - pViewer.createControl(parent); - configurePaletteViewer(pViewer); - pViewer.setCustomizer(new DesignerPaletteCustomizer()); - hookPaletteViewer(pViewer); - - PlatformUI - .getWorkbench() - .getHelpSystem() - .setHelp( - parent, - PDPlugin - .getResourceString("DesignerPaletteViewerProvider.help.id")); //$NON-NLS-1$ - - return pViewer; - } - - private static class HideTagLibAction extends Action { - private DrawerEditPart tagLib; - - /** - * Constructor - * @param tagLibDrawer - * @param string - */ - public HideTagLibAction(DrawerEditPart tagLibDrawer, String string) { - super(string); - this.tagLib = tagLibDrawer; - } - - /* (non-Javadoc) - * @see org.eclipse.jface.action.Action#run() - */ - public void run() { - TaglibPaletteDrawer pd = (TaglibPaletteDrawer)tagLib.getDrawer(); - pd.setVisible(false); - DesignerPaletteCustomizationsHelper.hideTaglibDrawer(pd); - } - - } -} diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/IDropSourceData.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/IDropSourceData.java deleted file mode 100644 index e31a32540..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/IDropSourceData.java +++ /dev/null @@ -1,20 +0,0 @@ -package org.eclipse.jst.pagedesigner.editors.palette; - -/** - * Data describing a palette drop. - * - * @author cbateman - * - */ -public interface IDropSourceData -{ - /** - * @return uri of the tag's library. MUST NOT BE NULL. - */ - public String getNamespace(); - /** - * @return a unique id for a tag creation provider that may be different - * from the uri. MUST NOT BE NULL. - */ - public String getId(); -} diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/IDropSourceDataProvider.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/IDropSourceDataProvider.java deleted file mode 100644 index d3116d0b5..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/IDropSourceDataProvider.java +++ /dev/null @@ -1,16 +0,0 @@ -package org.eclipse.jst.pagedesigner.editors.palette; - -/** - * Used by objects (usually palette entries) that wish provide drop source data - * to a client. - * - * @author cbateman - * - */ -public interface IDropSourceDataProvider -{ - /** - * @return a drop source data in context - */ - IDropSourceData getDropSourceData(); -} diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/IEntryChangeListener.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/IEntryChangeListener.java deleted file mode 100644 index 2f4667eb2..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/IEntryChangeListener.java +++ /dev/null @@ -1,27 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2006 Sybase, Inc. 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: - * Sybase, Inc. - initial API and implementation - *******************************************************************************/ -package org.eclipse.jst.pagedesigner.editors.palette; - -import java.util.List; - -/** - * @author mengbo - */ -public interface IEntryChangeListener { - /** - * @param oldDefinitions - * the old taglib definitions - * @param newDefinitions - * the new taglib definitions - */ - void modelChanged(List oldDefinitions, List newDefinitions); -} diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/IPaletteConstants.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/IPaletteConstants.java deleted file mode 100644 index dcbf6515a..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/IPaletteConstants.java +++ /dev/null @@ -1,71 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2006 Sybase, Inc. 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: - * Sybase, Inc. - initial API and implementation - *******************************************************************************/ -package org.eclipse.jst.pagedesigner.editors.palette; - -/** - * Constants used by palette customizations persistence - * - * @author mengbo - */ -public interface IPaletteConstants { - /** - * - */ - public static final String BUNDLE_ID = "org.eclipse.jst.pagedesigner"; //$NON-NLS-1$ - - /** - * contant for palett-item element name - */ - public static final String ROOT = "palette-item"; //$NON-NLS-1$ - - /** - * constant for uri attribute - */ - public static final String URI = "uri"; //$NON-NLS-1$ - - /** - * Constant for hidden attribute - */ - public static final String ISHIDDEN = "hidden"; //$NON-NLS-1$ - - /** - * constant for id attribute - */ - public static final String ID = "id"; //$NON-NLS-1$ - - /** - * constant for category element name - */ - public static final String CATEGORY_TAG = "category"; //$NON-NLS-1$ - -//OLD - no longer/currently used - -// public static final String EXTENSION_POINT_ID = "ResourceContributions"; //$NON-NLS-1$ -// public static final String FILENAME = "/tag.xml"; //$NON-NLS-1$ -// public static final String TAGNAME = "tagName"; //$NON-NLS-1$ -// public static final String ITEM_TAG = "item"; //$NON-NLS-1$ -// public static final String EXPERT = "expert"; //$NON-NLS-1$ -// public static final String LARGEICON = "largeIcon"; //$NON-NLS-1$ -// public static final String SMALLICON = "smallIcon"; //$NON-NLS-1$ -// public static final String LABEL = "label"; //$NON-NLS-1$ -// public static final String INITIALSTATE = "initialState"; //$NON-NLS-1$ -// public static final String SHORTDESC = "shortDesc"; //$NON-NLS-1$ -// public static final String ATTRIBUTE_TAG = "attribute"; //$NON-NLS-1$ -// public static final String NAME = "name"; //$NON-NLS-1$ -// public static final String VALUE = "value"; //$NON-NLS-1$ -// public static final String ICONPREFIX = "iconPrefix"; //$NON-NLS-1$ -// public static final String TAGLIBEXT = "capability"; //$NON-NLS-1$ -// public static final String JARPROTO = "jar:file://"; //$NON-NLS-1$ -// public static final String FILEPROTO = "file://"; //$NON-NLS-1$ -// public static final String REQUIREHFORM = "requireHForm"; //$NON-NLS-1$ -// public static final String JSFCOMPONENTCATEGORY = "jsfComponentCategory"; //$NON-NLS-1$ -} diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/IPaletteContext.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/IPaletteContext.java deleted file mode 100644 index c8a940f31..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/IPaletteContext.java +++ /dev/null @@ -1,15 +0,0 @@ -package org.eclipse.jst.pagedesigner.editors.palette; - -import org.eclipse.core.resources.IFile; -import org.eclipse.jst.jsf.context.IModelContext; - -/** - * Context in which the WPE palette is operating - * - */ -public interface IPaletteContext extends IModelContext { - /** - * @return IFile - */ - public IFile getFile(); -} diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/IPaletteFactory.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/IPaletteFactory.java deleted file mode 100644 index 703ccf7bb..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/IPaletteFactory.java +++ /dev/null @@ -1,43 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2001, 2009 Oracle 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: - * Oracle Corporation - initial API and implementation - *******************************************************************************/ -package org.eclipse.jst.pagedesigner.editors.palette; - -import org.eclipse.gef.EditDomain; -import org.eclipse.gef.palette.PaletteRoot; -import org.eclipse.gef.ui.palette.PaletteViewerProvider; -import org.eclipse.gef.ui.views.palette.PaletteViewerPage; -import org.eclipse.ui.IEditorInput; - -/** - * Create a palette parts to replace the default palette in - * the Web Page Editor. - * - * If any of the create methods return null, the default WPE behaviour will be used. - */ -public interface IPaletteFactory { - /** - * @param provider - * @return {@link PaletteViewerPage} - MAY return null. If null, the default palette viewer page will be used. - */ - public PaletteViewerPage createPaletteViewerPage(PaletteViewerProvider provider) ; - - /** - * @param domain - * @return {@link PaletteViewerProvider} - may return null. If null, the default paletteViewerProvider will be used. - */ - public PaletteViewerProvider createPaletteViewerProvider(EditDomain domain) ; - - /** - * @param editorInput - * @return PaletteRoot - may return null. If null, the default palette root will be used. - */ - public PaletteRoot createPaletteRoot(IEditorInput editorInput); -} diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/IPaletteItemManager.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/IPaletteItemManager.java deleted file mode 100644 index 7b2b154f4..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/IPaletteItemManager.java +++ /dev/null @@ -1,80 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2006 Sybase, Inc. 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: - * Sybase, Inc. - initial API and implementation - *******************************************************************************/ -package org.eclipse.jst.pagedesigner.editors.palette; - -import java.util.List; - -import org.eclipse.jst.jsf.core.internal.CompositeTagRegistryFactory.TagRegistryIdentifier; -import org.eclipse.jst.pagedesigner.editors.palette.impl.TaglibPaletteDrawer; - -/** - * PaletteItemManager interface. - * - * NOT intended to be implemented by clients - * - * @author mengbo - */ -public interface IPaletteItemManager { - /** - * @return IProject - */ - public TagRegistryIdentifier getTagRegistryIdentifier(); - - /** - * @return list of {@link TaglibPaletteDrawer}s being managed for this project - */ - public List/*TaglibPaletteDrawer*/ getAllCategories(); - - /** - * Create a TaglibPaletteDrawer with given label for given id - * - * @param id - * @param label - * @return TaglibPaletteDrawer - */ - public TaglibPaletteDrawer createTaglibPaletteDrawer(String id, String label); - - /** - * Retrieve the TaglibPaletteDrawer by id. May be null. - * - * @param id - * @return TaglibPaletteDrawer - */ - public TaglibPaletteDrawer getTaglibPalletteDrawer(String id); - - /** - * Locate by id, and if not found, create a TaglibPaletteDrawer using label and id - * - * @param id - * @param label - * @return TaglibPaletteDrawer - */ - public TaglibPaletteDrawer findOrCreateCategory(String id, String label); - - /** - * Adds a listener to the list of those notified when the model contents are - * replaced - * - * @param listener - - * the listener to add - */ - void addEntryChangeListener(IEntryChangeListener listener); - - /** - * Adds a listener to the list of those notified when the model contents are - * replaced - * - * @param listener - - * the listener to remove - */ - void removeEntryChangeListener(IEntryChangeListener listener); -} diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/ITagDropSourceData.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/ITagDropSourceData.java deleted file mode 100644 index 16af8d833..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/ITagDropSourceData.java +++ /dev/null @@ -1,24 +0,0 @@ -package org.eclipse.jst.pagedesigner.editors.palette; - - -/** - * Provides generic information for tag creation from a palette drop. - * - * @author cbateman - * - */ -public interface ITagDropSourceData extends IDropSourceData -{ - /** - * @return tagName - */ - public String getTagName(); - - /** - * Convenience method returning the tag libraries default prefix, if - * applicable - * - * @return default prefix - */ - public String getDefaultPrefix(); -} diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/Messages.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/Messages.java deleted file mode 100644 index 0bf173753..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/Messages.java +++ /dev/null @@ -1,37 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2008 Oracle 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: - * Oracle Corporation - initial API and implementation - *******************************************************************************/ -package org.eclipse.jst.pagedesigner.editors.palette; - -import org.eclipse.osgi.util.NLS; - -/** - * String resource handler - * - */ -public class Messages extends NLS { - private static final String BUNDLE_NAME = "org.eclipse.jst.pagedesigner.editors.palette.messages"; //$NON-NLS-1$ - /** - * see messages.properties - */ - public static String DesignerPaletteCustomizerDialog_ExportCustomizations; - /** - * see messages.properties - */ - public static String DesignerPaletteCustomizerDialog_ImportCustomizations; - /** - * see messages.properties - */ - public static String DesignerPaletteViewerProvider_Hide; - static { - // initialize resource bundle - NLS.initializeMessages(BUNDLE_NAME, Messages.class); - } -} diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/MetadataTagDropSourceData.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/MetadataTagDropSourceData.java deleted file mode 100644 index 64d8d40bc..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/MetadataTagDropSourceData.java +++ /dev/null @@ -1,155 +0,0 @@ -/** - * - */ -package org.eclipse.jst.pagedesigner.editors.palette; - -import java.util.List; - -import org.eclipse.jst.jsf.common.metadata.Entity; -import org.eclipse.jst.jsf.common.metadata.Model; -import org.eclipse.jst.jsf.common.metadata.Trait; -import org.eclipse.jst.jsf.common.metadata.query.ITaglibDomainMetaDataModelContext; -import org.eclipse.jst.jsf.common.metadata.query.TaglibDomainMetaDataQueryHelper; -import org.eclipse.jst.jsf.tagdisplay.internal.paletteinfos.PaletteInfo; -import org.eclipse.jst.jsf.tagdisplay.internal.paletteinfos.PaletteInfos; -import org.eclipse.jst.jsf.tagdisplay.internal.paletteinfos.TagCreationAttribute; -import org.eclipse.jst.jsf.tagdisplay.internal.paletteinfos.TagCreationInfo; -import org.eclipse.jst.pagedesigner.utils.CommandUtil; -import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel; - -/** - * A source data that is enhanced by metadata. - * - * @author cbateman - * - */ -public final class MetadataTagDropSourceData implements ITagDropSourceData -{ - private final IDOMModel _model; - private final TagCreationInfo _tagCreationInfo; - private final ITagDropSourceData _delegate; - - /** - * @param creationProvider - * @param model - */ - public MetadataTagDropSourceData( - final ITagDropSourceData creationProvider, - final IDOMModel model) - { - _delegate = creationProvider; - _model = model; - _tagCreationInfo = getTagCreationInfo(); - } - - /** - * @return the pre-defined attributes for the tag from meta-data or - * null if none. - */ - public List<TagCreationAttribute> getAttributes() - { - if (_tagCreationInfo != null) - { - return _tagCreationInfo.getAttributes(); - } - return null; - } - - /** - * @return the template derived from metadata for tag drop or null if none. - */ - public String getTemplate() - { - if (_tagCreationInfo != null) - { - return (String) _tagCreationInfo.getTemplate(); - } - return null; - } - - public String getDefaultPrefix() - { - return _delegate.getDefaultPrefix(); - } - - public String getTagName() - { - return _delegate.getTagName(); - } - - public String getNamespace() - { - return _delegate.getNamespace(); - } - - private TagCreationInfo getTagCreationInfo() - { - final ITaglibDomainMetaDataModelContext metadataContext = CommandUtil - .getMetadataContext(getNamespace(), _model); - TagCreationInfo tagCreationInfo = null; - String id = getId(); - if (metadataContext != null && id != null) - { - tagCreationInfo = createCreationInfo(metadataContext, id, - getTagName()); - } - return tagCreationInfo; - } - - public String getId() - { - return _delegate.getId(); - } - - /** - * @param metaDataContext - * @param id - * @param tagName - * @return a tag creation info for the tag and id in the metadata context - */ - static TagCreationInfo createCreationInfo( - final ITaglibDomainMetaDataModelContext metaDataContext, - final String id, final String tagName) - { - final Model model = TaglibDomainMetaDataQueryHelper - .getModel(metaDataContext); - if (model != null) - { - Trait trait = TaglibDomainMetaDataQueryHelper.getTrait(model, - PaletteInfos.TRAIT_ID); - if (trait != null) - { - final PaletteInfos pis = (PaletteInfos) trait.getValue(); - final PaletteInfo pi = pis.findPaletteInfoById(id); - if (pi != null) - { - return pi.getTagCreation(); - } - } - // tag-creation trait on entity directly? - final Entity tag = getTagEntity(metaDataContext, tagName); - if (tag != null) - {// metadata exists - trait = TaglibDomainMetaDataQueryHelper.getTrait(tag, - "tag-create"); //$NON-NLS-1$ - if (trait != null && trait.getValue() != null) - { - return (TagCreationInfo) trait.getValue(); - } - } - } - return null; - } - /** - * @param metaDataContext - * @param tagName - * @return the {@link Entity} for this tag element being created - */ - private static Entity getTagEntity( - final ITaglibDomainMetaDataModelContext metaDataContext, - final String tagName) - { - return TaglibDomainMetaDataQueryHelper.getEntity(metaDataContext, - tagName); - } -}
\ No newline at end of file diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/ShowAllAction.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/ShowAllAction.java deleted file mode 100644 index f115bfe3c..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/ShowAllAction.java +++ /dev/null @@ -1,50 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2006 Sybase, Inc. 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: - * Sybase, Inc. - initial API and implementation - *******************************************************************************/ -package org.eclipse.jst.pagedesigner.editors.palette; - -import org.eclipse.core.runtime.Preferences; -import org.eclipse.jface.action.Action; -import org.eclipse.jst.pagedesigner.IJMTConstants; -import org.eclipse.jst.pagedesigner.PDPlugin; - -/** - * @author mengbo - */ -public class ShowAllAction extends Action { - Preferences _preferences = null; - - /** - * @param pluginPreferences - */ - public ShowAllAction(Preferences pluginPreferences) { - super(PDPlugin.getResourceString("ShowAllAction.ActionLabel.ShowAll")); //$NON-NLS-1$ - _preferences = pluginPreferences; - boolean showAll = _preferences - .getBoolean(IJMTConstants.PREF_PALETTE_SHOW_ALL); - this.setChecked(showAll); - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.jface.action.Action#run() - */ - public void run() { - boolean showAll = _preferences - .getBoolean(IJMTConstants.PREF_PALETTE_SHOW_ALL); - // toggle the show all status. preference will fire out change event, - // and palettes - // receive this event will refresh - _preferences.setValue(IJMTConstants.PREF_PALETTE_SHOW_ALL, !showAll); - this.setChecked(!showAll); - } -} diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/TagImageManager.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/TagImageManager.java deleted file mode 100644 index fe6d5b8ed..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/TagImageManager.java +++ /dev/null @@ -1,213 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2008 Oracle Corporation. - * 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: - * Oracle - initial API and implementation - * - ********************************************************************************/ -package org.eclipse.jst.pagedesigner.editors.palette; - -import java.util.Iterator; - -import org.eclipse.core.resources.IProject; -import org.eclipse.jface.resource.ImageDescriptor; -import org.eclipse.jst.jsf.common.metadata.Entity; -import org.eclipse.jst.jsf.common.metadata.Model; -import org.eclipse.jst.jsf.common.metadata.Trait; -import org.eclipse.jst.jsf.common.metadata.internal.IImageDescriptorProvider; -import org.eclipse.jst.jsf.common.metadata.internal.IMetaDataSourceModelProvider; -import org.eclipse.jst.jsf.common.metadata.internal.TraitValueHelper; -import org.eclipse.jst.jsf.common.metadata.query.ITaglibDomainMetaDataModelContext; -import org.eclipse.jst.jsf.common.metadata.query.TaglibDomainMetaDataQueryHelper; -import org.eclipse.jst.jsf.common.ui.JSFUICommonPlugin; -import org.eclipse.jst.jsf.common.ui.internal.utils.JSFSharedImages; -import org.eclipse.jst.jsf.tagdisplay.internal.paletteinfos.PaletteInfo; -import org.eclipse.jst.jsf.tagdisplay.internal.paletteinfos.PaletteInfos; -import org.eclipse.jst.pagedesigner.PDPlugin; -import org.eclipse.swt.graphics.Image; - -/** - * Locates and creates Images for tags using the common metadata framework. - * - * Images are cached in the PDPlugin's ImageRegistry. - * - * Some code is being duplicated in palette helper. PaletteHelper should be re-factored to use this code - * - */ -public class TagImageManager { - - private static final String PALETTE_DEFAULT_IMAGE_FILE = "palette/GENERIC/large/PD_Palette_Default.gif"; //$NON-NLS-1$ - - private static TagImageManager INSTANCE = null; - - private final static ImageDescriptor DEFAULT_SMALL_ICON = JSFUICommonPlugin - .getDefault().getImageDescriptor( - JSFSharedImages.DEFAULT_PALETTE_TAG_IMG); - - private final static ImageDescriptor DEFAULT_LARGE_ICON = PDPlugin - .getDefault().getImageDescriptor( - PALETTE_DEFAULT_IMAGE_FILE); - - private static final String TRAIT_ICON_SMALL = "small-icon"; //$NON-NLS-1$ - - private static final String TRAIT_ICON_LARGE = "large-icon"; //$NON-NLS-1$ - - /** - * @return singleton instance - */ - public synchronized static TagImageManager getInstance() { - if (INSTANCE == null) { - INSTANCE = new TagImageManager(); - } - return INSTANCE; - } - - /** - * Returns small image using metadata and may be null. Caller should NOT dispose the image, but should call TagImageManager's dispose(image) - * @param project - * @param nsUri - * @param tagName - * @return small image using metadata. May be null. - */ - public Image getSmallIconImage(IProject project, String nsUri, String tagName) { - Image image = null; - Model model = getModel(project, nsUri); - if (model != null){ - ImageDescriptor imgDesc = getSmallIconImageDescriptor(model, tagName); - image = getOrCreateImage(imgDesc); - } - - return image; - } - - /** - * @param project - * @param nsUri - * @param tagName - * @return large image using metadata. May be null. - */ - public Image getLargeIconImage(IProject project, String nsUri, String tagName) { - Image image = null; - Model model = getModel(project, nsUri); - if (model != null){ - ImageDescriptor imgDesc = getLargeIconImageDescriptor(model, nsUri); - image = getOrCreateImage(imgDesc); - } - - return image; - } - - /** - * Gets, and creates if necessary, a shared image. - * @param imageDescriptor - * @return Image from shared cache - */ - public static Image getOrCreateImage(ImageDescriptor imageDescriptor) { - Image image = null; - if (imageDescriptor != null){ - image = PDPlugin.getDefault().getImageRegistry().get(imageDescriptor.toString()); - if (image == null ){ - image = imageDescriptor.createImage(); - PDPlugin.getDefault().getImageRegistry().put(imageDescriptor.toString(), image); - } else if (image.isDisposed()){ //should not occur, but handling just in case - PDPlugin.getDefault().getImageRegistry().remove(imageDescriptor.toString()); - image = imageDescriptor.createImage(); - PDPlugin.getDefault().getImageRegistry().put(imageDescriptor.toString(), image); - } - } - return image; - } - - private Model getModel(IProject project, String nsUri) { - ITaglibDomainMetaDataModelContext modelContext = TaglibDomainMetaDataQueryHelper.createMetaDataModelContext(project, nsUri); - Model model =TaglibDomainMetaDataQueryHelper.getModel(modelContext); - // no caching at this time so there is no need to listen to model notifications -// if (model != null && !hasAdapter(model)) -// addAdapter(model); - return model; - } - - -// private void addAdapter(Model model) { -// if (model != null){ -//// model.eAdapters().add(INSTANCE); -// } -// } -// -// private boolean hasAdapter(Model model) { -// for(Adapter a : model.eAdapters()){ -// if (a == INSTANCE) -// return true; -// } -// return false; -// } - - private ImageDescriptor getSmallIconImageDescriptor(Model model, String tagName) { - return getIconImageDescriptor(model, tagName, true); - } - - private ImageDescriptor getLargeIconImageDescriptor(Model model, String tagName) { - return getIconImageDescriptor(model, tagName, false); - } - - private ImageDescriptor getIconImageDescriptor(Model model, String tagName, boolean small) { - ImageDescriptor icon = null; - - //use palette infos if available - Trait trait = TaglibDomainMetaDataQueryHelper.getTrait(model, "paletteInfos"); //$NON-NLS-1$ - if (trait != null){ - PaletteInfos tags = (PaletteInfos)trait.getValue(); - for (Iterator it=tags.getInfos().iterator();it.hasNext();){ - PaletteInfo tag = (PaletteInfo)it.next(); - if (tag.getId().equalsIgnoreCase(tagName)){ - IMetaDataSourceModelProvider sourceProvider = ((Trait)tag.eContainer().eContainer()).getSourceModelProvider(); - if (small) - icon = getImageDescriptorFromString(sourceProvider, tag.getSmallIcon(), DEFAULT_SMALL_ICON); - else - icon = getImageDescriptorFromString(sourceProvider, tag.getLargeIcon(), DEFAULT_LARGE_ICON); - - break; - } - } - } - if (icon == null) { - for (Iterator it=model.getChildEntities().iterator();it.hasNext();){ - Entity tagAsEntity = (Entity)it.next(); - if (tagAsEntity.getId().equalsIgnoreCase(tagName)){ - if (small) - icon = getImageDescriptorFromTagTraitValueAsString(tagAsEntity, TRAIT_ICON_SMALL, DEFAULT_SMALL_ICON); - else - icon = getImageDescriptorFromTagTraitValueAsString(tagAsEntity, TRAIT_ICON_LARGE, DEFAULT_LARGE_ICON); - - break; - } - } - - } - - return icon; - } - - private ImageDescriptor getImageDescriptorFromString(IMetaDataSourceModelProvider sourceModelProvider, String imgDesc, ImageDescriptor defaultValue){ - ImageDescriptor image = defaultValue; - IImageDescriptorProvider imageProvider = (IImageDescriptorProvider)sourceModelProvider.getAdapter(IImageDescriptorProvider.class); - if (imageProvider != null){ - image = imageProvider.getImageDescriptor(imgDesc); - } - return image; - } - - private ImageDescriptor getImageDescriptorFromTagTraitValueAsString(Entity entity, String key, ImageDescriptor defaultValue){ - Trait t = TaglibDomainMetaDataQueryHelper.getTrait(entity, key); - if (t != null){ - String imgDesc = TraitValueHelper.getValueAsString(t); - return getImageDescriptorFromString(t.getSourceModelProvider(), imgDesc, defaultValue); - } - return defaultValue; - } - -} diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/TagToolCreationAdapter.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/TagToolCreationAdapter.java deleted file mode 100644 index 2ac052ecf..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/TagToolCreationAdapter.java +++ /dev/null @@ -1,110 +0,0 @@ -package org.eclipse.jst.pagedesigner.editors.palette; - - -import javax.xml.namespace.QName; - -import org.eclipse.jst.pagedesigner.editors.palette.impl.PaletteItemManager; -import org.eclipse.jst.pagedesigner.editors.palette.impl.TaglibPaletteDrawer; -import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel; - -/** - * ITagDropSourceData implementation useable by TagToolPaletteEntry for its - * drop transfer object. - * - * @author cbateman - * - */ -public final class TagToolCreationAdapter implements ITagDropSourceData -{ - private String _uri; - private String _tagName; - private String _defaultPrefix; - private String _id; - - /** - * @param uri - * @param tagName - * @param defaultPrefix - * @param id - */ - public TagToolCreationAdapter(final String uri, final String tagName, final String defaultPrefix, - final String id) - { - _uri = uri; - _tagName = tagName; - _defaultPrefix = defaultPrefix; - _id = id; - } - - public String getDefaultPrefix() - { - return _defaultPrefix; - } - - public String getTagName() - { - return _tagName; - } - - public String getNamespace() - { - return _uri; - } - - public String getId() - { - return _id; - } - - /** - * @param provider - * @param model - * @return a metadata tag creation adapter for an existing tag - * creation provider (which need not itself be a TagToolCreationAdapter) - * and a dom model. - */ - public static MetadataTagDropSourceData createMdTagCreationProvider(final ITagDropSourceData provider, final IDOMModel model) - { - return new MetadataTagDropSourceData(provider, model); - } - - /** - * @param container - * @param paletteContext - * @return the tag creation provider - */ - public static ITagDropSourceData findProviderForContainer( - final QName container, final IPaletteContext paletteContext) - { - - return findProviderForContainer(container.getNamespaceURI(), container - .getLocalPart(), paletteContext); - } - - /** - * @param uri - * @param tagName - * @param paletteContext - * @return the tag creation provider - */ - public static ITagDropSourceData findProviderForContainer( - final String uri, final String tagName, - final IPaletteContext paletteContext) - { - final PaletteItemManager itemManager = PaletteItemManager.getInstance(paletteContext); - if (itemManager != null) { - final TaglibPaletteDrawer category = itemManager.findCategoryByURI(uri); - if (category != null) - { - final TagToolPaletteEntry tagItem = category - .getTagPaletteEntryByTagName(tagName); - if (tagItem != null) - { - return tagItem.getTemplate(); - } - } - } - return null; - } - -} diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/TagToolPaletteEntry.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/TagToolPaletteEntry.java deleted file mode 100644 index 7483504f5..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/TagToolPaletteEntry.java +++ /dev/null @@ -1,110 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2001, 2007 Oracle 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: - * Oracle Corporation - initial API and implementation - *******************************************************************************/ -package org.eclipse.jst.pagedesigner.editors.palette; - -import org.eclipse.gef.Tool; -import org.eclipse.gef.palette.CombinedTemplateCreationEntry; -import org.eclipse.gef.requests.CreationFactory; -import org.eclipse.jface.resource.ImageDescriptor; -import org.eclipse.jst.pagedesigner.itemcreation.ItemCreationTool; - -/** - * Represents a tag palette item entry in the web page designer palette - * - */ -public class TagToolPaletteEntry extends CombinedTemplateCreationEntry - implements IDropSourceDataProvider -{ - - /** - * Constructor - * - * @param template - * the template item for the drop - * @param label - * @param shortDescription - * @param iconSmall - * @param iconLarge - */ - public TagToolPaletteEntry(final ITagDropSourceData template, - final String label, final String shortDescription, - final ImageDescriptor iconSmall, final ImageDescriptor iconLarge) - { - super(label, shortDescription, template, NOOP_FACTORY, iconSmall, - iconLarge); - } - - /** - * @return tagName - */ - public String getTagName() - { - return getTemplate().getTagName(); - } - - /** - * Convenience method returning the tag libraries default prefix, if - * applicable - * - * @return default prefix - */ - public String getDefaultPrefix() - { - return getTemplate().getDefaultPrefix(); - } - - /** - * @return uri of the tag's library - */ - public String getURI() - { - return getTemplate().getNamespace(); - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.gef.palette.ToolEntry#createTool() - */ - @Override - public Tool createTool() - { - return new ItemCreationTool(getTemplate()); - } - - private final static CreationFactory NOOP_FACTORY = new CreationFactory() - { - public Object getNewObject() - { - // should never get called - throw new UnsupportedOperationException( - "createTool should be overriden, so this should never be called"); //$NON-NLS-1$ - } - - public Object getObjectType() - { - // should never get called - throw new UnsupportedOperationException( - "createTool should be overriden, so this should never be called"); //$NON-NLS-1$ - } - }; - - @Override - public ITagDropSourceData getTemplate() - { - return (ITagDropSourceData) super.getTemplate(); - } - - public IDropSourceData getDropSourceData() - { - return getTemplate(); - } -} diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/impl/PaletteElementTemplateHelper.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/impl/PaletteElementTemplateHelper.java deleted file mode 100644 index 83ebf27a4..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/impl/PaletteElementTemplateHelper.java +++ /dev/null @@ -1,200 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2006 Sybase, Inc. 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: - * Sybase, Inc. - initial API and implementation - *******************************************************************************/ -package org.eclipse.jst.pagedesigner.editors.palette.impl; - -import java.io.ByteArrayInputStream; -import java.io.IOException; -import java.util.ArrayList; -import java.util.List; - -import javax.xml.parsers.DocumentBuilder; -import javax.xml.parsers.DocumentBuilderFactory; -import javax.xml.parsers.ParserConfigurationException; - -import org.eclipse.jst.jsf.common.ui.internal.logging.Logger; -import org.eclipse.jst.pagedesigner.PDPlugin; -import org.eclipse.jst.pagedesigner.editors.palette.MetadataTagDropSourceData; -import org.eclipse.jst.pagedesigner.utils.JSPUtil; -import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel; -import org.eclipse.wst.xml.core.internal.provisional.document.IDOMText; -import org.w3c.dom.Attr; -import org.w3c.dom.Document; -import org.w3c.dom.Element; -import org.w3c.dom.NamedNodeMap; -import org.w3c.dom.Node; -import org.w3c.dom.NodeList; -import org.w3c.dom.Text; -import org.xml.sax.SAXException; - -/** - * - * @author mengbo - */ -public class PaletteElementTemplateHelper { - //private static final String TEMPLATE_ITEM_NAME = "template"; - - private static final String PREFIX_ATTRIBUTE = "_uri_"; //$NON-NLS-1$ - -// private static Logger _log = PDPlugin -// .getLogger(PaletteElementTemplateHelper.class); - - /** - * This method is used to process template element which is read from .xmi - * file and generate default element. - * - * @param model - * @param element - * @param creationProvider - */ - public static void applyTemplate(IDOMModel model, Element element, - MetadataTagDropSourceData creationProvider) { - if (element == null || element.getLocalName() == null) { - return; - } - - Node[] templateNodes = getTemplateNodes(model, creationProvider); - if (templateNodes != null) { - for (int i=0;i<templateNodes.length;i++){ - Node anode = templateNodes[i]; - element.appendChild(anode); - } - } - } - - private static Node[] getTemplateNodes(IDOMModel model, - MetadataTagDropSourceData creationProvider) { - - if (creationProvider == null) - return null; - - String template = creationProvider.getTemplate(); - if (template != null){ - - final String nodeStr = prepareNode(template);//(String)template.getTemplate(); - final Logger logger = PDPlugin.getLogger(PaletteElementTemplateHelper.class); - try { - DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); - factory.setNamespaceAware(true); - factory.setValidating(false); - DocumentBuilder builder = factory.newDocumentBuilder(); - Document doc = builder.parse(new ByteArrayInputStream( nodeStr.getBytes())); - Node beginNode = doc.getFirstChild(); - Node templateNode = beginNode.cloneNode(true);//model.getDocument().importNode(beginNode, true); - Node[] templateNodes = applyPrefixes(model, templateNode.getChildNodes(), model.getDocument()); - return templateNodes; - } catch (ParserConfigurationException e) { - logger.error(e); - } catch (SAXException e) { - logger.error(e); - } catch (IOException e) { - logger.error(e); - } catch (Exception e){ - logger.error(e); - } - } - return null; - } - - /** - * @param template - * @return xml as String wrapped by a <begin> node as template may not have a single root element - */ - private static String prepareNode(String template) { - StringBuffer buf = new StringBuffer("<begin>"); //$NON-NLS-1$ - buf.append(template); - buf.append("</begin>"); //$NON-NLS-1$ - return buf.toString(); - } - - /** - * Use the actrual prefixs of jsf html and jsf core to set the prefix of - * each node declared in template. - * @param model - * @param templateNodes - * @param document - * @return Node[] - * - */ - public static Node[] applyPrefixes(IDOMModel model, - NodeList templateNodes, Document document) { - List result = new ArrayList(); - for (int i = 0, n = templateNodes.getLength(); i < n; i++) { - Node node = cloneNodeDeep(model, document, templateNodes.item(i)); - if (node instanceof Element) { - result.add(node); - } - } - return (Node[]) result.toArray(new Node[result.size()]); - } - - /** - * TODO: Later we may add some logic to reference the tld file through tag - * name to resolve the prefixs directly. - */ - private static void internalApplyPrefixes(IDOMModel model, Element refNode, Element node) { - if (node != null && refNode != null) { - String uri = refNode.getAttribute(PREFIX_ATTRIBUTE); - if (uri != null) { - String prefix = JSPUtil.getOrCreatePrefix(model, uri, null); - node.setPrefix(prefix); - } - } - } - - - /** - * A deep clone of the sourceNode - * @param model - * @param destDoc - * @param sourceNode - * @return Node - */ - public static Node cloneNodeDeep(IDOMModel model, Document destDoc, Node sourceNode) { - switch (sourceNode.getNodeType()) { - case Node.ELEMENT_NODE: - Element sourceEle = (Element) sourceNode; - Element resultEle = destDoc.createElement(sourceEle.getTagName()); - internalApplyPrefixes(model, sourceEle, resultEle); - NamedNodeMap attrs = sourceEle.getAttributes(); - for (int i = 0, size = attrs.getLength(); i < size; i++) { - Attr a = (Attr) attrs.item(i); - if (!PREFIX_ATTRIBUTE.equalsIgnoreCase(a.getNodeName())) { - resultEle.setAttribute(a.getName(), a.getValue()); - } - } - NodeList children = sourceEle.getChildNodes(); - for (int i = 0, size = children.getLength(); i < size; i++) { - Node n = children.item(i); - Node d = cloneNodeDeep(model, destDoc, n); - if (d != null) { - resultEle.appendChild(d); - } - } - return resultEle; - case Node.TEXT_NODE: - Text txt = destDoc.createTextNode(sourceNode.getNodeValue()); - if (txt instanceof IDOMText && sourceNode instanceof IDOMText) { - try { - ((IDOMText) txt).setSource(((IDOMText) sourceNode) - .getSource()); - } catch (Exception ex) { - // ignore - } - } - return txt; - case Node.CDATA_SECTION_NODE: - return destDoc.createCDATASection(sourceNode.getNodeValue()); - default: - return null; // not support. - } - } -} diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/impl/PaletteHelper.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/impl/PaletteHelper.java deleted file mode 100644 index 8abec4727..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/impl/PaletteHelper.java +++ /dev/null @@ -1,690 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2006 Sybase, Inc. 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: - * Sybase, Inc. - initial API and implementation - *******************************************************************************/ -package org.eclipse.jst.pagedesigner.editors.palette.impl; - -import java.util.Collections; -import java.util.Comparator; -import java.util.Iterator; -import java.util.List; -import java.util.regex.Pattern; - -import org.eclipse.core.resources.IProject; -import org.eclipse.gef.palette.PaletteDrawer; -import org.eclipse.gef.palette.PaletteEntry; -import org.eclipse.jface.resource.ImageDescriptor; -import org.eclipse.jst.jsf.common.metadata.Entity; -import org.eclipse.jst.jsf.common.metadata.Model; -import org.eclipse.jst.jsf.common.metadata.Trait; -import org.eclipse.jst.jsf.common.metadata.internal.IImageDescriptorProvider; -import org.eclipse.jst.jsf.common.metadata.internal.IMetaDataSourceModelProvider; -import org.eclipse.jst.jsf.common.metadata.internal.TraitValueHelper; -import org.eclipse.jst.jsf.common.metadata.query.ITaglibDomainMetaDataModelContext; -import org.eclipse.jst.jsf.common.metadata.query.TaglibDomainMetaDataQueryHelper; -import org.eclipse.jst.jsf.common.runtime.internal.view.model.common.ITagElement; -import org.eclipse.jst.jsf.common.runtime.internal.view.model.common.Namespace; -import org.eclipse.jst.jsf.common.ui.JSFUICommonPlugin; -import org.eclipse.jst.jsf.common.ui.internal.utils.JSFSharedImages; -import org.eclipse.jst.jsf.core.internal.tld.CMUtil; -import org.eclipse.jst.jsf.tagdisplay.internal.paletteinfos.PaletteInfo; -import org.eclipse.jst.jsf.tagdisplay.internal.paletteinfos.PaletteInfos; -import org.eclipse.jst.jsp.core.internal.contentmodel.tld.CMDocumentFactoryTLD; -import org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional.TLDDocument; -import org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional.TLDElementDeclaration; -import org.eclipse.jst.jsp.core.taglib.ITaglibRecord; -import org.eclipse.jst.pagedesigner.IHTMLConstants; -import org.eclipse.jst.pagedesigner.PDPlugin; -import org.eclipse.jst.pagedesigner.editors.palette.IPaletteItemManager; -import org.eclipse.jst.pagedesigner.editors.palette.ITagDropSourceData; -import org.eclipse.jst.pagedesigner.editors.palette.TagToolCreationAdapter; -import org.eclipse.jst.pagedesigner.editors.palette.TagToolPaletteEntry; -import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument; -import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration; -import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap; - -/** - * Helper class. - */ -public class PaletteHelper { - - // pattern to strip all <x> and </x> HTML tags - final private static Pattern removeHTMLTags = Pattern - .compile("<[/?\\w\\s=\"\\.\\#]+>"); //$NON-NLS-1$ - - // pattern to find all runs of spaces longer than one - final private static Pattern trimInteriorWhitespace = Pattern - .compile("[ ]+"); //$NON-NLS-1$ - - // pattern to find all new lines for removal - final private static Pattern removeNewLines = Pattern.compile("[\n]"); //$NON-NLS-1$ - - private final static ImageDescriptor DEFAULT_SMALL_ICON = JSFUICommonPlugin - .getDefault().getImageDescriptor( - JSFSharedImages.DEFAULT_PALETTE_TAG_IMG); - - private final static ImageDescriptor DEFAULT_LARGE_ICON = PDPlugin - .getDefault().getImageDescriptor( - "palette/GENERIC/large/PD_Palette_Default.gif"); //$NON-NLS-1$ - - // how many characters to truncate a palette item's description to. - // TODO: add preference? - // the soft length is the ideal length we try to truncate to. We first - // try to find a period (end of sentence; TODO: should have a character - // class) - // inside the first SOFT_LENGTH chars at which to truncate a description - // string. - // if we can't find one then we search for the first one between SOFT_LENGTH - // and min(HARD_LENGTH, str.length()). If found, we truncate there. If not, - // we truncate to HARD_LENGTH-" ...".length() and append the ellipsis. - // In all cases the truncated description string returned should <= - // HARD_LENGTH. - // private final static int DESCRIPTION_TRUNCATE_SOFT_LENGTH = 150; - private final static int DESCRIPTION_TRUNCATE_HARD_LENGTH = 250; - -// private PaletteItemManager _paletteManager; - - /*package*/ PaletteHelper(final PaletteItemManager manager) { -// _paletteManager = manager; - } - /** - * Creates a TaglibPaletteDrawer with TagTool palette entries for each tag - * from the CMDocument - * - * @param manager - * @param tldRec - * @return TaglibPaletteDrawer - */ - public TaglibPaletteDrawer configPaletteItemsByTLD( - final IPaletteItemManager manager, final ITaglibRecord tldRec) { - - final String tldURI = CMUtil.getURIFromTaglibRecord(tldRec, manager.getTagRegistryIdentifier().getProject()); - - final CMDocumentFactoryTLD factory = new CMDocumentFactoryTLD(); - final TLDDocument doc = (TLDDocument) factory.createCMDocument(tldRec); - - return getOrCreateTaglibPaletteDrawer(manager, doc, tldURI); - } - - /** - * @param manager - * @param doc - * @param tldURI - * @return TaglibPaletteDrawer - */ - public TaglibPaletteDrawer getOrCreateTaglibPaletteDrawer( - final IPaletteItemManager manager, final CMDocument doc, final String tldURI) { - - TaglibPaletteDrawer category = findCategory(manager, tldURI); - if (category != null) - return category; - - final ITaglibDomainMetaDataModelContext modelContext = TaglibDomainMetaDataQueryHelper - .createMetaDataModelContext(manager.getTagRegistryIdentifier().getProject(), tldURI); - final Model model = TaglibDomainMetaDataQueryHelper.getModel(modelContext); - category = createTaglibPaletteDrawer(manager, doc, model); - - if (category != null) { - loadTags(category, doc, model); - sortTags(category.getChildren()); - } - return category; - } - - private void sortTags(final List tags) { - // note that once we store ordering customizations, we will need to do - // something different - // it will also be complicated if we decide to do 181958 and 181866 - Collections.sort(tags, new Comparator() { - - public int compare(final Object o1, final Object o2) { - final String label1 = ((PaletteEntry) o1).getLabel(); - final String label2 = ((PaletteEntry) o2).getLabel(); - - if (label1 == null) { - // if both null, then equal - if (label2 == null) { - return 0; - } - // otherwise, sort label 2 before - return 1; - } - - if (label2 == null) { - // if label1 not null, then sort it first - return -1; - } - return label1.compareTo(label2); - } - - }); - - } - - private void loadTags(final TaglibPaletteDrawer category, final CMDocument doc, - final Model model) { - - if (model != null) {// load from metadata - should always drop in here - final Trait trait = TaglibDomainMetaDataQueryHelper.getTrait(model, - "paletteInfos"); //$NON-NLS-1$ - if (trait != null) { - final PaletteInfos tags = (PaletteInfos) trait.getValue(); - for (final Iterator it = tags.getInfos().iterator(); it.hasNext();) { - final PaletteInfo tag = (PaletteInfo) it.next(); - createTagEntry(category, tag, doc); - } - } else { - for (final Iterator it = model.getChildEntities().iterator(); it - .hasNext();) { - final Entity tagAsEntity = (Entity) it.next(); - createTagEntry(category, tagAsEntity, doc); - } - } - } else {// fail safe loading from cmDoc... should no longer go in here - loadFromCMDocument(category, doc); - } - - } - - private TaglibPaletteDrawer createTaglibPaletteDrawer( - final IPaletteItemManager manager, final CMDocument doc, final Model model) { - - TaglibPaletteDrawer category = null; - if (model != null) { - // do we create it? - final boolean isHidden = getBooleanTagTraitValue(model, "hidden", false); //$NON-NLS-1$ - if (isHidden) { - return null; - } - - String label = getStringTagTraitValue(model, - "display-label", model.getId()); //$NON-NLS-1$ - label = label.equals("") ? model.getId() : label; //$NON-NLS-1$ - category = manager.createTaglibPaletteDrawer(model.getId(), label); - - String desc = getStringTagTraitValue(model, - "description", model.getId()); //$NON-NLS-1$ - category.setDescription(formatDescription(desc)); - - final ImageDescriptor largeIconImage = getImageDescriptorFromTagTraitValueAsString( - model, "small-icon", null); //$NON-NLS-1$ - if (largeIconImage != null) - category.setLargeIcon(largeIconImage); - - final String prefix = getStringTagTraitValue(model, - "default-prefix", null); //$NON-NLS-1$ - category.setDefaultPrefix(prefix); - - final boolean isVisible = !(getBooleanTagTraitValue(model, - "expert", false)); //$NON-NLS-1$ - category.setVisible(isVisible); - - category.setInitialState(PaletteDrawer.INITIAL_STATE_CLOSED); - - } - return category; - } - - private TaglibPaletteDrawer findCategory( - final IPaletteItemManager manager, final String tldURI) { - - TaglibPaletteDrawer lib = null; - for (final Iterator it = manager.getAllCategories().iterator(); it.hasNext();) { - lib = (TaglibPaletteDrawer) it.next(); - if (tldURI.equals(lib.getURI())) - return lib; - } - return null; - } - - /* - * (non-JavaDoc) This method will read information from the CMDocument to - * create the tag entries. It will check the existing items in the registry. - * If the corresponding tag is not in palette manager, then it will create - * one, and mark the newly created item as "expert". Otherwise, it will - * check whether the tld contains more information than the palette manager, - * and adding those information to it (such as description, icons for tags) - * - * @param category - * - * @param cmdoc - */ - private void loadFromCMDocument(final TaglibPaletteDrawer category, - final CMDocument cmdoc) { - - final CMNamedNodeMap nodeMap = cmdoc.getElements(); - for (int i = 0, size = nodeMap.getLength(); i < size; i++) { - final CMElementDeclaration eledecl = (CMElementDeclaration) nodeMap - .item(i); - final String tagName = eledecl.getElementName(); - TagToolPaletteEntry item; - if (tagName.equalsIgnoreCase(IHTMLConstants.TAG_INPUT)) {// TODO: - // fix - // this - // nonsense! - final StringBuffer name = new StringBuffer(category.getURI()); - name.append(":").append(tagName).append(":").append(tagName); //$NON-NLS-1$ //$NON-NLS-2$ - item = category.getTagPaletteEntryById(name.toString()); - } else { - item = category.getTagPaletteEntryByTagName(tagName); - } - if (item == null) { - createTagEntry(category, eledecl); - - } - } - } - - private void createTagEntry(final TaglibPaletteDrawer category, - final PaletteInfo info, final CMDocument doc) { - - final Boolean hidden = info.getHidden(); - if ((hidden != null) && (hidden.booleanValue()))// do not create a - // palette entry - return; - - final IMetaDataSourceModelProvider sourceProvider = ((Trait) info - .eContainer().eContainer()).getSourceModelProvider(); - final String tagName = info.getTag(); - final String id = info.getId(); - final String label = info.getDisplayLabel(); - final String desc = formatDescription(info.getDescription()); - final ImageDescriptor smallIcon = getImageDescriptorFromString( - sourceProvider, info.getSmallIcon(), DEFAULT_SMALL_ICON); - final ImageDescriptor largeIcon = getImageDescriptorFromString( - sourceProvider, info.getLargeIcon(), DEFAULT_LARGE_ICON); - final Boolean expert = info.getExpert(); - - internalCreateTagEntry(doc, category, id, tagName, label, desc, - smallIcon, largeIcon, (expert != null && expert.booleanValue())); - - } - - private void createTagEntry(final TaglibPaletteDrawer category, - final PaletteInfo info, final Namespace ns) { - - final Boolean hidden = info.getHidden(); - if ((hidden != null) && (hidden.booleanValue()))// do not create a - // palette entry - return; - - final IMetaDataSourceModelProvider sourceProvider = ((Trait) info - .eContainer().eContainer()).getSourceModelProvider(); - final String tagName = info.getTag(); - final String id = info.getId(); - final String label = info.getDisplayLabel(); - final String desc = formatDescription(info.getDescription()); - final ImageDescriptor smallIcon = getImageDescriptorFromString( - sourceProvider, info.getSmallIcon(), DEFAULT_SMALL_ICON); - final ImageDescriptor largeIcon = getImageDescriptorFromString( - sourceProvider, info.getLargeIcon(), DEFAULT_LARGE_ICON); - final Boolean expert = info.getExpert(); - - internalCreateTagEntry(ns, category, id, tagName, label, desc, - smallIcon, largeIcon, (expert != null && expert.booleanValue())); - - } - - private void createTagEntry(final TaglibPaletteDrawer category, - final Entity entity, final CMDocument doc) { - - final boolean hidden = getBooleanTagTraitValue(entity, "hidden", false); //$NON-NLS-1$ - if (hidden)// do not create a palette entry - return; - - final String tagName = entity.getId(); - final String label = getStringTagTraitValue(entity, "display-label", tagName); //$NON-NLS-1$ - final String desc = formatDescription(getStringTagTraitValue(entity, - "description", tagName)); //$NON-NLS-1$ - final ImageDescriptor smallIcon = getImageDescriptorFromTagTraitValueAsString( - entity, "small-icon", DEFAULT_SMALL_ICON); //$NON-NLS-1$ - final ImageDescriptor largeIcon = getImageDescriptorFromTagTraitValueAsString( - entity, "large-icon", DEFAULT_LARGE_ICON); //$NON-NLS-1$ - final boolean expert = getBooleanTagTraitValue(entity, "expert", false); //$NON-NLS-1$ - - internalCreateTagEntry(doc, category, tagName, tagName, label, desc, - smallIcon, largeIcon, expert); - - } - - private void createTagEntry(final TaglibPaletteDrawer category, - final Entity entity, final Namespace ns) { - - final boolean hidden = getBooleanTagTraitValue(entity, "hidden", false); //$NON-NLS-1$ - if (hidden)// do not create a palette entry - return; - - final String tagName = entity.getId(); - final String label = getStringTagTraitValue(entity, "display-label", tagName); //$NON-NLS-1$ - final String desc = formatDescription(getStringTagTraitValue(entity, - "description", tagName)); //$NON-NLS-1$ - final ImageDescriptor smallIcon = getImageDescriptorFromTagTraitValueAsString( - entity, "small-icon", DEFAULT_SMALL_ICON); //$NON-NLS-1$ - final ImageDescriptor largeIcon = getImageDescriptorFromTagTraitValueAsString( - entity, "large-icon", DEFAULT_LARGE_ICON); //$NON-NLS-1$ - final boolean expert = getBooleanTagTraitValue(entity, "expert", false); //$NON-NLS-1$ - - internalCreateTagEntry(ns, category, tagName, tagName, label, desc, - smallIcon, largeIcon, expert); - - } - - private TagToolPaletteEntry internalCreateTagEntry(final TaglibPaletteDrawer category, - final String id, final String tagName, - final String label, String desc, final ImageDescriptor smallIcon, - final ImageDescriptor largeIcon, final boolean expert) { - - final ITagDropSourceData data = new TagToolCreationAdapter(category - .getURI(), tagName, category.getDefaultPrefix(), id); - final TagToolPaletteEntry item = new TagToolPaletteEntry(data, label, - desc, smallIcon, largeIcon); - item.setId(id); - - item.setVisible(!expert); - category.getChildren().add(item); - item.setParent(category); - - return item; - } - - private TagToolPaletteEntry internalCreateTagEntry(final CMDocument doc, - final TaglibPaletteDrawer category, final String id, final String tagName, - final String label, final String desc, final ImageDescriptor smallIcon, - final ImageDescriptor largeIcon, final boolean expert) { - - if (verifyPresentInContentModel(doc, tagName)) { - return internalCreateTagEntry(category, id, tagName, label, desc, - smallIcon, largeIcon, expert); - } - return null; - } - - private TagToolPaletteEntry internalCreateTagEntry(final Namespace ns, - final TaglibPaletteDrawer category, final String id, final String tagName, - final String label, final String desc, final ImageDescriptor smallIcon, - final ImageDescriptor largeIcon, final boolean expert) { - - if (verifyPresentInContentModel(ns, tagName)) { - return internalCreateTagEntry(category, id, tagName, label, desc, - smallIcon, largeIcon, expert); - } - return null; - } - - private boolean verifyPresentInContentModel(final CMDocument doc, - final String tagName) { - - return doc.getElements().getNamedItem(tagName) != null; - } - - private boolean verifyPresentInContentModel(final Namespace ns, - final String tagName) { - - return ns.getViewElement(tagName) != null; - } - - private boolean getBooleanTagTraitValue(final Entity entity, final String key, - final boolean defaultValue) { - final Trait trait = TaglibDomainMetaDataQueryHelper.getTrait(entity, key); - if (trait != null) { - return TraitValueHelper.getValueAsBoolean(trait); - } - return defaultValue; - } - - private String getStringTagTraitValue(final Entity entity, final String key, - final String defaultValue) { - - final Trait trait = TaglibDomainMetaDataQueryHelper.getTrait(entity, key); - if (trait != null) { - final String val = TraitValueHelper.getValueAsString(trait); - if (val != null) - return val; - } - return defaultValue; - } - - private ImageDescriptor getImageDescriptorFromTagTraitValueAsString( - final Entity entity, final String key, final ImageDescriptor defaultValue) { - final Trait t = TaglibDomainMetaDataQueryHelper.getTrait(entity, key); - if (t != null) { - final String imgDesc = TraitValueHelper.getValueAsString(t); - return getImageDescriptorFromString(t.getSourceModelProvider(), - imgDesc, defaultValue); - } - return defaultValue; - } - - private ImageDescriptor getImageDescriptorFromString( - final IMetaDataSourceModelProvider sourceModelProvider, final String imgDesc, - final ImageDescriptor defaultValue) { - - ImageDescriptor image = defaultValue; - if (imgDesc != null) { - final IImageDescriptorProvider imageProvider = (IImageDescriptorProvider) sourceModelProvider - .getAdapter(IImageDescriptorProvider.class); - if (imageProvider != null) { - image = imageProvider.getImageDescriptor(imgDesc); - } - } - return image; - } - - private void createTagEntry(final TaglibPaletteDrawer category, - final CMElementDeclaration eledecl) { - - final String tagName = eledecl.getElementName(); - String label = null; - String desc = null; - - if (eledecl instanceof TLDElementDeclaration) { - final TLDElementDeclaration tag = (TLDElementDeclaration) eledecl; - label = tag.getDisplayName(); - desc = tag.getDescription(); - } - - if (label == null || label.equals("")) //$NON-NLS-1$ - label = tagName; - - if (desc == null) - desc = ""; //$NON-NLS-1$ - else - desc = formatDescription(desc); - - final TagToolPaletteEntry item = internalCreateTagEntry(category, tagName, - tagName, label, desc, getDefaultSmallIcon(), - getDefaultLargeIcon(), false); - item.setToolProperty("CMElementDeclaration", eledecl); //$NON-NLS-1$ - - } - - /** - * @return DEFAULT_LARGE_ICON - */ - private ImageDescriptor getDefaultLargeIcon() { - return DEFAULT_LARGE_ICON; - } - - /** - * @return DEFAULT_SMALL_ICON - */ - private ImageDescriptor getDefaultSmallIcon() { - return DEFAULT_SMALL_ICON; - } - - private String formatDescription(final String desc) { - // TODO: modify and use a formatter in the future? - final String aDesc = filterConvertString(desc); - if (aDesc != null) { - if (aDesc.length() > DESCRIPTION_TRUNCATE_HARD_LENGTH) { - final StringBuffer result = new StringBuffer(aDesc.substring(0, - DESCRIPTION_TRUNCATE_HARD_LENGTH)); - result.append("..."); //$NON-NLS-1$ - return result.toString(); - } - return aDesc; - - } - return ""; //$NON-NLS-1$ - } - - private String filterConvertString(final String text) { - if (text == null) { - return ""; //$NON-NLS-1$ - } - - String result = removeHTMLTags.matcher(text).replaceAll(""); //$NON-NLS-1$ - result = removeNewLines.matcher(result).replaceAll(" "); //$NON-NLS-1$ - result = trimInteriorWhitespace.matcher(result).replaceAll(" "); //$NON-NLS-1$ - - return result; - } - - /** - * @param manager - * @param ns - * @return TaglibPaletteDrawer - */ - public TaglibPaletteDrawer configPaletteItemsByNamespace( - final PaletteItemManager manager, - final Namespace ns) { - - return getOrCreateTaglibPaletteDrawer(manager, ns); - } - - /** - * @param manager - * @param ns - * @return TaglibPaletteDrawer - */ - public TaglibPaletteDrawer getOrCreateTaglibPaletteDrawer( - final IPaletteItemManager manager, final Namespace ns) { - - TaglibPaletteDrawer category = findCategory(manager, ns.getNSUri()); - if (category != null) - return category; - - final IProject project = manager.getTagRegistryIdentifier().getProject(); - final ITaglibDomainMetaDataModelContext modelContext = TaglibDomainMetaDataQueryHelper - .createMetaDataModelContext(project, ns.getNSUri()); - final Model model = TaglibDomainMetaDataQueryHelper.getModel(modelContext); - category = createTaglibPaletteDrawer(manager, ns, model); - - if (category != null) { - loadTags(category, ns, model); - sortTags(category.getChildren()); - } - return category; - } - - private TaglibPaletteDrawer createTaglibPaletteDrawer( - final IPaletteItemManager manager, final Namespace ns, final Model model) { - - TaglibPaletteDrawer category = null; - if (model != null) { - // do we create it? - final boolean isHidden = getBooleanTagTraitValue(model, "hidden", false); //$NON-NLS-1$ - if (isHidden) { - return null; - } - - String label = getStringTagTraitValue(model, - "display-label", model.getId()); //$NON-NLS-1$ - label = label.equals("") ? model.getId() : label; //$NON-NLS-1$ - category = manager.createTaglibPaletteDrawer(model.getId(), label); - - final String desc = getStringTagTraitValue(model, - "description", model.getId()); //$NON-NLS-1$ - category.setDescription(formatDescription(desc)); - - final ImageDescriptor largeIconImage = getImageDescriptorFromTagTraitValueAsString( - model, "small-icon", null); //$NON-NLS-1$ - if (largeIconImage != null) - category.setLargeIcon(largeIconImage); - - final String prefix = getStringTagTraitValue(model, - "default-prefix", null); //$NON-NLS-1$ - category.setDefaultPrefix(prefix); - - final boolean isVisible = !(getBooleanTagTraitValue(model, - "expert", false)); //$NON-NLS-1$ - category.setVisible(isVisible); - - category.setInitialState(PaletteDrawer.INITIAL_STATE_CLOSED); - - } - return category; - } - - private void loadTags(final TaglibPaletteDrawer category, - final Namespace ns, final Model model) { - - if (model != null) {// load from metadata - should always drop in here - final Trait trait = TaglibDomainMetaDataQueryHelper.getTrait(model, - "paletteInfos"); //$NON-NLS-1$ - if (trait != null) { - final PaletteInfos tags = (PaletteInfos) trait.getValue(); - for (Iterator it = tags.getInfos().iterator(); it.hasNext();) { - final PaletteInfo tag = (PaletteInfo) it.next(); - createTagEntry(category, tag, ns); - } - } else { - for (final Iterator it = model.getChildEntities().iterator(); it - .hasNext();) { - final Entity tagAsEntity = (Entity) it.next(); - createTagEntry(category, tagAsEntity, ns); - } - } - } else {// fail safe loading from cmDoc... should no longer go in here - loadFromNamespace(category, ns); - } - } - - private void loadFromNamespace(final TaglibPaletteDrawer category, - final Namespace ns) { - - for (Object velem : ns.getViewElements()) { - final ITagElement tag = (ITagElement) velem; - final TagToolPaletteEntry item = category.getTagPaletteEntryByTagName(tag - .getName()); - if (item == null) { - createTagEntry(category, tag); - } - } - } - - private void createTagEntry(final TaglibPaletteDrawer category, - final ITagElement tag) { - - final String tagName = tag.getName(); - String label = tagName; - String desc = ""; //$NON-NLS-1$ - - // if (eledecl instanceof TLDElementDeclaration){ - // TLDElementDeclaration tag = (TLDElementDeclaration)eledecl; - // label = tag.getDisplayName(); - // desc = tag.getDescription(); - // } - - // if (label == null || label.equals("")) //$NON-NLS-1$ - // label = tagName; - // - // if (desc == null ) - // desc = ""; //$NON-NLS-1$ - // else - // desc = formatDescription(desc); - - // TagToolPaletteEntry item = - internalCreateTagEntry(category, tagName, tagName, label, desc, - getDefaultSmallIcon(), getDefaultLargeIcon(), false); - // item.setToolProperty("CMElementDeclaration", eledecl); //$NON-NLS-1$ - - } -} diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/impl/PaletteItemManager.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/impl/PaletteItemManager.java deleted file mode 100644 index 2eeaeeec7..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/impl/PaletteItemManager.java +++ /dev/null @@ -1,567 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2006 Sybase, Inc. 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: - * Sybase, Inc. - initial API and implementation - *******************************************************************************/ -package org.eclipse.jst.pagedesigner.editors.palette.impl; - -import java.util.ArrayList; -import java.util.Collections; -import java.util.Comparator; -import java.util.HashMap; -import java.util.HashSet; -import java.util.Iterator; -import java.util.List; -import java.util.Map; -import java.util.Set; -import java.util.concurrent.CopyOnWriteArrayList; -import java.util.concurrent.TimeUnit; -import java.util.concurrent.atomic.AtomicBoolean; -import java.util.concurrent.locks.ReentrantLock; - -import org.eclipse.core.resources.IFile; -import org.eclipse.core.resources.IProject; -import org.eclipse.core.runtime.IStatus; -import org.eclipse.core.runtime.Platform; -import org.eclipse.core.runtime.Status; -import org.eclipse.core.runtime.content.IContentType; -import org.eclipse.core.runtime.content.IContentTypeManager; -import org.eclipse.gef.palette.PaletteDrawer; -import org.eclipse.gef.palette.PaletteEntry; -import org.eclipse.jst.jsf.common.internal.JSPUtil; -import org.eclipse.jst.jsf.common.runtime.internal.view.model.common.Namespace; -import org.eclipse.jst.jsf.core.internal.CompositeTagRegistryFactory; -import org.eclipse.jst.jsf.core.internal.CompositeTagRegistryFactory.TagRegistryIdentifier; -import org.eclipse.jst.jsf.designtime.internal.view.model.ITagRegistry; -import org.eclipse.jst.jsf.designtime.internal.view.model.ITagRegistry.ITagRegistryListener; -import org.eclipse.jst.jsf.designtime.internal.view.model.ITagRegistry.TagRegistryChangeEvent; -import org.eclipse.jst.jsf.designtime.internal.view.model.ITagRegistry.TagRegistryChangeEvent.EventType; -import org.eclipse.jst.pagedesigner.PDPlugin; -import org.eclipse.jst.pagedesigner.editors.palette.DesignerPaletteCustomizationsHelper; -import org.eclipse.jst.pagedesigner.editors.palette.IEntryChangeListener; -import org.eclipse.jst.pagedesigner.editors.palette.IPaletteConstants; -import org.eclipse.jst.pagedesigner.editors.palette.IPaletteContext; -import org.eclipse.jst.pagedesigner.editors.palette.IPaletteItemManager; -import org.eclipse.wst.html.core.internal.contentmodel.HTMLCMDocumentFactory; -import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument; -import org.eclipse.wst.xml.core.internal.provisional.contentmodel.CMDocType; - -/** - * Manages tag library palette by palette context. Capable of handling JSP and XHTML content types. - * - * Callers must use getInstance(IPaletteContext), and when done, call release(IFile). - * - * @author mengbo and others - */ -public class PaletteItemManager implements IPaletteItemManager, - IPaletteConstants, ITagRegistryListener { - - private static final boolean DEBUG = false; - - - private static Map<TagRegistryIdentifier, PaletteItemManager> _managers = new HashMap<TagRegistryIdentifier, PaletteItemManager>(); - private static ReentrantLock MANAGER_LOCK = new ReentrantLock(); - private static long MANAGER_LOCK_TIMEOUT = 120; - - private Set<IFile> _files = new HashSet<IFile>(); - private TagRegistryIdentifier _tagRegId; - private List<PaletteDrawer> _paletteCategories = new ArrayList<PaletteDrawer>(); - private CopyOnWriteArrayList<IEntryChangeListener> _listeners = new CopyOnWriteArrayList<IEntryChangeListener>(); - private AtomicBoolean IS_DISPOSED = new AtomicBoolean(); - - private PaletteHelper _paletteHelper; - - private ITagRegistry _tagRegistry; - - - /** - * Return singleton paletteItemManager for a given project. Will only work for JSPs. - * @param project - * @return PaletteItemManager - * @deprecated - use getInstance(paletteContext) - */ - public static PaletteItemManager getInstance(final IProject project) { - if (project == null) { - // sometimes when the editor is editing a file in jar file, may not - // be able to - // get the project. - return getInstance(createPaletteContext(null)); - } - //relies on JSP file extension for content type - return getInstance(createPaletteContext(project.getFile("dummy.jsp"))); //$NON-NLS-1$ - } - - /** - * @param paletteContext - * @return PaletteItemManager instance shared with all files with same palette context in a project - * May return null if locking issue - */ - public static PaletteItemManager getInstance(final IPaletteContext paletteContext) { - boolean hasLock = false; - try { - if (MANAGER_LOCK.tryLock(MANAGER_LOCK_TIMEOUT, TimeUnit.SECONDS)){ - hasLock = true; - final TagRegistryIdentifier regId = getTagRegistryIdentifier(paletteContext); - if (regId == null) { - PDPlugin.log(new Status(IStatus.ERROR, PDPlugin.getPluginId(), "Unable to display palette for "+paletteContext.getFile().getName()+". Unknown content type for file.")); //$NON-NLS-1$//$NON-NLS-2$ - return null; - } - PaletteItemManager manager = _managers.get(regId); - if (manager == null) { - manager = new PaletteItemManager(regId); - _managers.put(regId, manager); - manager.init(); - } - manager.addFile(paletteContext.getFile()); - return manager; - - } - //if we get here then the lock has timed out - PDPlugin.log(new Status(Status.ERROR, PDPlugin.getPluginId(), "(getInstance()) Failed to get managers lock for" + paletteContext.getFile().toString())); //$NON-NLS-1$ - - } catch (InterruptedException e) { - PDPlugin.log("Failed in PaletteItemManager.getInstance(PaletteContext", e); //$NON-NLS-1$ - } finally { - if (hasLock) - MANAGER_LOCK.unlock(); - } - return null; - } - - private static TagRegistryIdentifier getTagRegistryIdentifier( - final IPaletteContext paletteContext) { - - final IFile file = paletteContext.getFile(); - if (file != null) { - final IContentTypeManager typeManager = Platform.getContentTypeManager(); - final IContentType contentType = - typeManager.findContentTypeFor(file.getName()); - - if (contentType != null) - { - return new TagRegistryIdentifier(file.getProject(), contentType); - } - return null; - } - //to support legacy null projects. Allows HTML and JSP tag libs to be displayed. - return new TagRegistryIdentifier(null, org.eclipse.jst.pagedesigner.utils.JSPUtil.JSP_CONTENTTYPE); - - } - - /** - * @param file - * @return IPaletteContext - */ - public static IPaletteContext createPaletteContext(final IFile file) { - return new IPaletteContext() { - public IFile getFile() { - return file; - } - - public Object getAdapter(Class adapter) { - return null; - } - }; - } - private void addFile(final IFile file) { - synchronized (_files) { - _files.add(file); - } - - } - - /** - * Indicates that the file no longer needs the paletteItemManager, freeing the manager to be released after last reference - * @param paletteContext - */ - public void release(final IPaletteContext paletteContext) { - final IFile file = paletteContext.getFile(); - boolean isEmpty = false; - synchronized (_files) { - if (_files.contains(file)) { - _files.remove(file); - if (_files.isEmpty()) - isEmpty = true; - } - } - - if (isEmpty && IS_DISPOSED.compareAndSet(false, true)) { - removeTagRegistryListeners(this); - boolean hasLock = false; - try { - if (MANAGER_LOCK.tryLock(MANAGER_LOCK_TIMEOUT, TimeUnit.SECONDS)) { - hasLock = true; - _managers.remove(_tagRegId); - } - else { - PDPlugin.log(new Status(Status.ERROR, PDPlugin.getPluginId(), "(Release) Failed to get managers lock for" + paletteContext.getFile().toString())); //$NON-NLS-1$ - } - } catch (InterruptedException e) { - PDPlugin.log("Failed to release paletteItemManager for" + paletteContext.getFile().toString(), e); //$NON-NLS-1$ - } finally { - if (hasLock) - MANAGER_LOCK.unlock(); - } - } - } - - private static void removeTagRegistryListeners(final PaletteItemManager manager) { - if (manager.getTagRegistry() != null) - manager.getTagRegistry().removeListener(manager); - } - - private ITagRegistry getTagRegistry() { - return _tagRegistry; - } - - /** - * For JUnit testing purposes only - */ - public static void clearPaletteItemManager() { - - boolean hasLock = false; - try { - if (MANAGER_LOCK.tryLock(MANAGER_LOCK_TIMEOUT, TimeUnit.SECONDS)){ - hasLock = true; - if (_managers == null) - return; - - for (final PaletteItemManager manager : _managers.values()) { - PaletteItemManager.removeTagRegistryListeners(manager); - manager._files.clear(); - } - _managers.clear(); - } else { - //if we get here then the lock has timed out - PDPlugin.log(new Status(Status.ERROR, PDPlugin.getPluginId(), "(clear) Failed to get managers lock")); //$NON-NLS-1$ - } - - } catch (InterruptedException e) { - PDPlugin.log("Failed in clearPaletteItemManager", e); //$NON-NLS-1$ - } finally { - if (hasLock) - MANAGER_LOCK.unlock(); - } - - } - - private PaletteItemManager(final TagRegistryIdentifier regId) { - _paletteHelper = new PaletteHelper(this); - if (regId != null) { - _tagRegId = regId; -// init(); - } - } - - - public List getAllCategories() { - synchronized (_paletteCategories) { - final List<PaletteDrawer> readOnlyCategories = new ArrayList<PaletteDrawer>(_paletteCategories); - return Collections.unmodifiableList(readOnlyCategories); - } - } - - /** - * Initializes the palette items for the current project - */ - protected synchronized void init() { - synchronized (_paletteCategories) { - _paletteCategories.clear(); - } - - initTagRegistry(); - - DesignerPaletteCustomizationsHelper.loadUserCustomizations(this); - - sortCategories(); - } - - /** - * Sort palette categories - */ - protected void sortCategories() { - //note that once we store ordering customizations, we will need to do something different - synchronized(_paletteCategories) { - Collections.sort(_paletteCategories, new Comparator(){ - - public int compare(Object o1, Object o2) { - String label1 = ((PaletteEntry)o1).getLabel(); - String label2 = ((PaletteEntry)o2).getLabel(); - - return label1.compareTo(label2); - } - - }); - } - } - - /** - * Reinitializes the palatteItemManager and informs all palette roots that use the manager to refresh - */ - public void reset() { - init(); - fireModelChanged(null, null); - } - - private void initTagRegistry() { - registerHTMLCategory(); - if (isJSP(_tagRegId)) - registerJSPCategory(); - - registerTagsFromTagRegistry(); - } - - private boolean isJSP(final TagRegistryIdentifier tagRegistryId) { - final IContentType ct = tagRegistryId.getContentType(); - if (JSPUtil.isJSPContentType(ct.getId())) - return true; - return false; - } - - private void registerTagsFromTagRegistry() { - _tagRegistry = getTagRegistry(_tagRegId); - if (_tagRegistry != null) { - for (final Namespace ns : _tagRegistry.getAllTagLibraries()) { - _paletteHelper.configPaletteItemsByNamespace(this, ns); - } - } - } - - private ITagRegistry getTagRegistry(final TagRegistryIdentifier regId) { - ITagRegistry reg = null; - if (regId.getProject() != null) { - reg = CompositeTagRegistryFactory.getInstance().getRegistry(regId); - if (reg != null) { - reg.addListener(this); - } - } - return reg; - } - - private void registerHTMLCategory() { - final CMDocument doc = HTMLCMDocumentFactory.getCMDocument(CMDocType.HTML_DOC_TYPE); - _paletteHelper.getOrCreateTaglibPaletteDrawer(this, doc, CMDocType.HTML_DOC_TYPE); - } - - private void registerJSPCategory() { - final CMDocument doc = HTMLCMDocumentFactory.getCMDocument(CMDocType.JSP11_DOC_TYPE); - _paletteHelper.getOrCreateTaglibPaletteDrawer(this, doc, CMDocType.JSP11_DOC_TYPE); - } - -// /** -// * Search Classpath entry list to find if the entry is jar library and the -// * library have the tld descriptor, if have ,build a palette category mapping -// * the tld descriptor. -// * -// * @param project -// */ -// private void registerTldFromClasspath(final IProject project) { -// if (project != null) { -// ITaglibRecord[] tldrecs = TaglibIndex.getAvailableTaglibRecords(project.getFullPath()); -// for (int i=0;i<tldrecs.length;i++){ -// _paletteHelper.configPaletteItemsByTLD(this, getCurProject(), tldrecs[i]); -// } -// } -// } - - /** - * @param id (most likely the uri) - * @param label - * @return TaglibPaletteDrawer - */ - public TaglibPaletteDrawer findOrCreateCategory(final String id, final String label) { - TaglibPaletteDrawer category = getTaglibPalletteDrawer(id); - if (category == null) - category = createTaglibPaletteDrawer(id, label); - return category; - } - - /** - * @param uri - * @return TaglibPaletteDrawer - */ - public TaglibPaletteDrawer findCategoryByURI(final String uri) { - TaglibPaletteDrawer category; - for (final Iterator iter = getAllCategories().iterator(); iter.hasNext();) { - category = (TaglibPaletteDrawer) iter.next(); - if (uri.equals(category.getURI())) { - return category; - } - } - return null; - } - - public TaglibPaletteDrawer createTaglibPaletteDrawer(final String uri, final String label) { - final TaglibPaletteDrawer r = new TaglibPaletteDrawer(uri, label); - synchronized(_paletteCategories) { - _paletteCategories.add(r); - } - return r; - } - - public TaglibPaletteDrawer getTaglibPalletteDrawer(final String uri) { - for (final Iterator iter = getAllCategories().iterator(); iter.hasNext();) { - final TaglibPaletteDrawer cat = (TaglibPaletteDrawer) iter.next(); - if (uri.equalsIgnoreCase(cat.getId())) { - return cat; - } - } - return null; - } - - /* - * (non-Javadoc) - * - * @see com.sybase.stf.jmt.pagedesigner.editors.palette.IPaletteItemManager#addEntryChangeListener(com.sybase.stf.jmt.pagedesigner.editors.palette.IEntryChangeListener) - */ - public void addEntryChangeListener(final IEntryChangeListener listener) { - _listeners.addIfAbsent(listener); - } - - /* - * (non-Javadoc) - * - * @see com.sybase.stf.jmt.pagedesigner.editors.palette.IPaletteItemManager#removeEntryChangeListener(com.sybase.stf.jmt.pagedesigner.editors.palette.IEntryChangeListener) - */ - public void removeEntryChangeListener(final IEntryChangeListener listener) { - _listeners.remove(listener); - } - - /** - * Notify model change event - * - * @param oldDefinitions - * @param newDefinitions - */ - private void fireModelChanged(final List oldDefinitions, final List newDefinitions) { - if (_listeners == null) { - return; - } - for (final Iterator<IEntryChangeListener> it= _listeners.iterator();it.hasNext();){ - final IEntryChangeListener listener = it.next(); - listener.modelChanged(oldDefinitions, newDefinitions); - } - } - - /** - * Informs all paletteItemManagers, except the notifying paletteManager, of updates to the customizations - * All palette viewer roots will be notifed of possible updates - * @param notifyingManager - */ - public static void notifyPaletteItemManagersOfCustomizationsUpdate(final IPaletteItemManager notifyingManager){ - boolean hasLock = false; - try { - if (MANAGER_LOCK.tryLock(MANAGER_LOCK_TIMEOUT, TimeUnit.SECONDS)){ - hasLock = true; - for (Iterator it=_managers.values().iterator();it.hasNext();){ - final PaletteItemManager mgr = (PaletteItemManager)it.next(); - if (mgr != null && notifyingManager != mgr) - mgr.reset(); - } - } - else { - //if we get here then the lock has timed out - PDPlugin.log(new Status(Status.ERROR, PDPlugin.getPluginId(), "Failed to get managers lock in notifyPaletteItemManagersOfCustomizationsUpdate")); //$NON-NLS-1$ - } - - } catch (InterruptedException e) { - PDPlugin.log("Failed in notifyPaletteItemManagersOfCustomizationsUpdate", e); //$NON-NLS-1$ - } finally { - if (hasLock) - MANAGER_LOCK.unlock(); - } - - } - - public void registryChanged(final TagRegistryChangeEvent event) { - final EventType eventType = event.getType(); - switch (eventType) { - case ADDED_NAMESPACE: - addNamespaces(event.getAffectedObjects()); - break; - case REMOVED_NAMESPACE: - removeNamespaces(event.getAffectedObjects()); - break; - case CHANGED_NAMESPACE: - changeNamespaces(event.getAffectedObjects()); - break; - case REGISTRY_DISPOSED: - break; - - default: - break; - } - - DesignerPaletteCustomizationsHelper.loadUserCustomizations(this); - sortCategories(); - - fireModelChanged(null, null); - } - - - private void addNamespaces(final List<? extends Namespace> affectedObjects) { - synchronized (_paletteCategories) { - for (final Namespace ns : affectedObjects) { - if (DEBUG) - System.out.println("Add NS: "+ns.getNSUri()+"["+System.currentTimeMillis()+"]"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ - _paletteHelper.configPaletteItemsByNamespace(this, ns); - } - } - } - - private void removeNamespaces(final List<? extends Namespace> affectedObjects) { - final List<Integer> drawersToRemove = new ArrayList<Integer>(); - synchronized (_paletteCategories) { - for (final Namespace ns : affectedObjects) { - for (int i=_paletteCategories.size() - 1; i >= 0; i--) {//gather in reverse order - final PaletteDrawer drawer = _paletteCategories.get(i); - if (drawer.getId().equals(ns.getNSUri())) { - if (DEBUG) - System.out.println("Remove NS: "+drawer.getId() +"["+System.currentTimeMillis()+"]"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ - drawersToRemove.add(new Integer(i)); - } - } - } - if (! drawersToRemove.isEmpty()) { - Collections.sort(drawersToRemove, new Comparator<Integer>() {//reverse order sort - - public int compare(Integer o1, Integer o2) { - if (o1.intValue() > o2.intValue()) - return -1; - else if (o1.intValue() < o2.intValue()) - return 1; - - return 0; - } - }); - for (Integer index : drawersToRemove) { - _paletteCategories.remove(index.intValue()); - } - } - } - } - - private void changeNamespaces(final List<? extends Namespace> affectedObjects) { - //for now, remove then add - removeNamespaces(affectedObjects); - addNamespaces(affectedObjects); - } - - public TagRegistryIdentifier getTagRegistryIdentifier() { - return _tagRegId; - } - - /** - * @return helper - */ - public PaletteHelper getPaletteHelper() { - return _paletteHelper; - } - -} diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/impl/TaglibPaletteDrawer.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/impl/TaglibPaletteDrawer.java deleted file mode 100644 index 5f7ba74ce..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/impl/TaglibPaletteDrawer.java +++ /dev/null @@ -1,106 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2001, 2007 Oracle 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: - * Oracle Corporation - initial API and implementation - *******************************************************************************/ -package org.eclipse.jst.pagedesigner.editors.palette.impl; - -import java.util.Iterator; - -import org.eclipse.gef.palette.PaletteDrawer; -import org.eclipse.gef.palette.ToolEntry; -import org.eclipse.jst.pagedesigner.editors.palette.TagToolPaletteEntry; - -/** - * Palette Drawer for Tag lib items - * - */ -public class TaglibPaletteDrawer extends PaletteDrawer { - private String prefix; - - /** - * Constructor - * @param uri - * @param label - */ - public TaglibPaletteDrawer(String uri, String label) { - super(label); - super.setId(uri); - setDrawerType(ToolEntry.PALETTE_TYPE_TOOL); - } - - /** - * @return default prefix for tag during creation - */ - public String getDefaultPrefix() { - return prefix; - } - - /** - * Set the default prefix for use during item creation - * @param prefix - */ - public void setDefaultPrefix(String prefix) { - this.prefix = prefix; - } - - /** - * @return uri identifying the library of tags - */ - public String getURI(){ - return getId(); - } - - /** - * @param uri for the libary of tags - */ - public void setURI(String uri){ - setId(uri); - } - - /** - * @param id - * @return TagToolPaletteEntry for the tag using the id - */ - public TagToolPaletteEntry getTagPaletteEntryById(String id){ - for (Iterator it=getChildren().iterator();it.hasNext();){ - TagToolPaletteEntry tag = (TagToolPaletteEntry)it.next(); - if (tag.getId().equals(id)) - return tag; - } - return null; - } - - /** - * @param tagName - * @return TagToolPaletteEntry using the tag name - */ - public TagToolPaletteEntry getTagPaletteEntryByTagName(String tagName){ - for (Iterator it=getChildren().iterator();it.hasNext();){ - TagToolPaletteEntry tag = (TagToolPaletteEntry)it.next(); - if (tag.getTagName().equalsIgnoreCase(tagName)) - return tag; - } - return null; - } - - /* (non-Javadoc) - * @see org.eclipse.gef.palette.PaletteDrawer#acceptsType(java.lang.Object) - */ - public boolean acceptsType(Object object){ - return true; - } - - /** - * @return PERMISSION_HIDE_ONLY - * @see org.eclipse.gef.palette.PaletteEntry#getUserModificationPermission() - */ - public int getUserModificationPermission() { - return PERMISSION_HIDE_ONLY; - } -} diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/messages.properties b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/messages.properties deleted file mode 100644 index 81fbded6c..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/messages.properties +++ /dev/null @@ -1,3 +0,0 @@ -DesignerPaletteCustomizerDialog_ExportCustomizations=Export Palette Customizations -DesignerPaletteCustomizerDialog_ImportCustomizations=Import Palette Customizations -DesignerPaletteViewerProvider_Hide=Hide diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/properties/IPropertyPageDescriptor.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/properties/IPropertyPageDescriptor.java deleted file mode 100644 index c5a8041d3..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/properties/IPropertyPageDescriptor.java +++ /dev/null @@ -1,87 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2007 Oracle 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: - * Oracle Corporation - initial API and implementation - *******************************************************************************/ -package org.eclipse.jst.pagedesigner.editors.properties; - -import org.eclipse.core.runtime.IAdaptable; -import org.eclipse.jface.viewers.CellEditor; -import org.eclipse.jst.jsf.common.ui.internal.dialogfield.DialogField; -import org.eclipse.jst.jsf.metadataprocessors.IMetaDataEnabledFeature; -import org.eclipse.swt.widgets.Composite; - -/** - * Property descriptor for metadata enabled tag attributes in the WPE property pages. - * - * <p><b>Provisional API - subject to change</b></p> - * Not intended to be implemented by clients. - */ -public interface IPropertyPageDescriptor extends IMetaDataEnabledFeature, IAdaptable{ - /** - * Trait id for defining quick edit tab sections. Value must be of type qe:QuickEditTabSections - * eg. <value xsi:type="qe:QuickEditTabSections"> - */ - public static final String QUICK_EDIT_TAB = "quick-edit-tab"; //$NON-NLS-1$ - /** - * Trait id for category name value - */ - public static final String PROP_DESC_CATEGORY = "category"; //$NON-NLS-1$ - -// /** -// * Trait id for fully qualified cell editor class name -// */ -// public static final String PROP_DESC_CELL_EDITOR = "cell-editor"; -// /** -// * Trait id for fully qualified dialog field editor name -// */ -// public static final String PROP_DESC_DIALOG_FIELD_EDITOR = "dialog-field-editor"; - - /** - * @return name of attribute. Must not be null. - */ - public String getAttributeName(); - /** - * @return category name. Must not be null. - */ - public String getCategory(); - /** - * @return label to use. Must not be null. - */ - public String getLabel(); - /** - * @return description. May return null. - */ - public String getDescription(); - /** - * @return whether this is a required property. Default false. - */ - public boolean isRequired(); - /** - * @param parent - * @return cell editor to use. May be null. - */ - public CellEditor getCellEditor(Composite parent); - /** - * @return dialog field editor to use. May be null. - */ - public DialogField getDialogFieldEditor(); - /** - * @return uri. Must not be null. - */ - public String getUri(); - /** - * @return tag name. Must not be null. - */ - public String getTagName(); - /** - * @return fully qualified attribute-value-runtime-type as String - */ - public String getValueType(); -} diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/properties/internal/EditorValidatorAdapter.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/properties/internal/EditorValidatorAdapter.java deleted file mode 100644 index a2f6304ce..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/properties/internal/EditorValidatorAdapter.java +++ /dev/null @@ -1,51 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2007 Oracle 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: - * Oracle Corporation - initial API and implementation - *******************************************************************************/ -package org.eclipse.jst.pagedesigner.editors.properties.internal; - -import org.eclipse.jface.dialogs.IInputValidator; -import org.eclipse.jface.viewers.ICellEditorValidator; -import org.eclipse.jst.jsf.metadataprocessors.features.IValidValues; -import org.eclipse.jst.jsf.metadataprocessors.features.IValidationMessage; - -/** - * Adapts IValidValues to ICellEditorValidator - * - */ -public class EditorValidatorAdapter implements ICellEditorValidator, IInputValidator { - - private IValidValues _vvs; - - /** - * Constructor - * @param vvs - */ - public EditorValidatorAdapter(IValidValues vvs) { - _vvs = vvs; - } - - public String isValid(Object value) { - //for now, if value is not a string, return true - if (value instanceof String) - return isValid((String)value); - return null; - } - - public String isValid(String value) { - _vvs.getValidationMessages().clear(); - if (_vvs.isValidValue(value)) - return null;//is valid - - return ((IValidationMessage)_vvs.getValidationMessages().get(0)).getMessage(); - - } - -} diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/properties/internal/PropertyDescriptor.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/properties/internal/PropertyDescriptor.java deleted file mode 100644 index eb49a6ce6..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/properties/internal/PropertyDescriptor.java +++ /dev/null @@ -1,194 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2007 Oracle 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: - * Oracle Corporation - initial API and implementation - *******************************************************************************/ -package org.eclipse.jst.pagedesigner.editors.properties.internal; - -import java.util.List; - -import org.eclipse.core.runtime.IAdaptable; -import org.eclipse.jface.dialogs.IInputValidator; -import org.eclipse.jface.viewers.CellEditor; -import org.eclipse.jface.viewers.ICellEditorValidator; -import org.eclipse.jst.jsf.common.metadata.Entity; -import org.eclipse.jst.jsf.common.ui.internal.dialogfield.DialogField; -import org.eclipse.jst.jsf.context.resolver.structureddocument.IStructuredDocumentContextResolverFactory; -import org.eclipse.jst.jsf.metadataprocessors.AbstractMetaDataEnabledFeature; -import org.eclipse.jst.jsf.metadataprocessors.IMetaDataEnabledFeature; -import org.eclipse.jst.jsf.metadataprocessors.MetaDataEnabledProcessingFactory; -import org.eclipse.jst.jsf.metadataprocessors.features.IDefaultValue; -import org.eclipse.jst.jsf.metadataprocessors.features.IPossibleValues; -import org.eclipse.jst.jsf.metadataprocessors.features.IValidValues; -import org.eclipse.jst.pagedesigner.editors.properties.IPropertyPageDescriptor; -import org.eclipse.jst.pagedesigner.meta.EditorCreator; -import org.eclipse.jst.pagedesigner.meta.internal.CellEditorFactoryRegistry; -import org.eclipse.jst.pagedesigner.properties.ITabbedPropertiesConstants; -import org.eclipse.swt.widgets.Composite; -import org.eclipse.ui.views.properties.IPropertyDescriptor; -import org.w3c.dom.Element; - -/** - * MD enabled feature of an attribute value runtime type allowing for the tabbed property - * page to work - * - */ -public class PropertyDescriptor extends AbstractMetaDataEnabledFeature - implements IMetaDataEnabledFeature, IPropertyPageDescriptor, IAdaptable { - - /** - * Constructor - */ - public PropertyDescriptor() { - // TODO Auto-generated constructor stub - } - - //IPropertyPageDescriptor - public String getCategory() { - String cat = getTraitValueAsString(IPropertyPageDescriptor.PROP_DESC_CATEGORY); - return cat != null ? cat : ITabbedPropertiesConstants.OTHER_CATEGORY; - } - - public CellEditor getCellEditor(Composite parent) { -// TODO: allow for override of the factory by using MD -// Trait trait = TaglibDomainMetaDataQueryHelper.getTrait( -// getMetaDataContext().getEntity(), -// IPropertyPageDescriptor.PROP_DESC_CELL_EDITOR); -// -// if (trait != null) { -// String classname = TraitValueHelper.getValueAsString(trait); -// if (classname != null && ! classname.equals("")){ -// try { -// Class klass = PDPlugin.getDefault().getBundle().loadClass(classname); -// if (klass != null){ -// // -// } -// } catch (ClassNotFoundException e) {// -// String msg = "Unable to locate cell editor:"+classname+ " for "+toString(); -// PDPlugin.getDefault().getLog().log(new Status(IStatus.ERROR, PDPlugin.getPluginId(), msg)); -// } -// } -// } - //otherwise use factory - Element element = (Element)IStructuredDocumentContextResolverFactory.INSTANCE.getDOMContextResolver(getStructuredDocumentContext()).getNode(); - return CellEditorFactoryRegistry.getInstance().createCellEditor(parent, this, element); - } - - public String getDescription() { - return getTraitValueAsString("description"); //$NON-NLS-1$ - } - - public String getLabel() { - String label = getTraitValueAsString("display-label"); //$NON-NLS-1$ - if (label == null) { - label = getMetaDataContext().getEntity().getId(); - } - return label + ":"; //$NON-NLS-1$ - } - - public boolean isRequired() { - return getTraitValueAsBoolean("required"); //$NON-NLS-1$ - } - - public DialogField getDialogFieldEditor() { - //TODO: allow for override of the factory by using MD -// Trait trait = TaglibDomainMetaDataQueryHelper.getTrait( -// getMetaDataContext().getEntity(), -// IPropertyPageDescriptor.PROP_DESC_DIALOG_FIELD_EDITOR); -// -// if (trait != null) { -// String classname = TraitValueHelper.getValueAsString(trait); -// if (classname != null && ! classname.equals("")){ -// try { -// Class klass = PDPlugin.getDefault().getBundle().loadClass(classname); -// if (klass != null){ -// // -// } -// } catch (ClassNotFoundException e) {// -// String msg = "Unable to locate cell editor:"+classname+ " for "+toString(); -// PDPlugin.getDefault().getLog().log(new Status(IStatus.ERROR, PDPlugin.getPluginId(), msg)); -// } -// } -// } - //otherwise use factory - EditorCreator creator = EditorCreator.getInstance(); - return creator.createDialogFieldWithWrapper(getUri(), - getTagName(),this, null); - } - - public String getTagName() { - return getTagEntity().getId(); - } - - public String getUri() { - return getMetaDataContext().getEntity().getModel().getCurrentModelContext().getUri(); - } - - public String getValueType() { - return getTraitValueAsString(MetaDataEnabledProcessingFactory.ATTRIBUTE_VALUE_RUNTIME_TYPE_PROP_NAME); - } - - public String getAttributeName() { - return getMetaDataContext().getEntity().getId(); - } - - public Object getAdapter(Class adapter) { - if (IPropertyDescriptor.class == adapter) { - return new PropertyDescriptorAdapter(this); - } - else if (IPossibleValues.class == adapter) { - List pvs = MetaDataEnabledProcessingFactory.getInstance().getAttributeValueRuntimeTypeFeatureProcessors( - IPossibleValues.class, - getStructuredDocumentContext(), - getAttributeEntity()); - if (!pvs.isEmpty()) - return pvs.get(0); - } - else if (IDefaultValue.class == adapter) { - List dvs = MetaDataEnabledProcessingFactory.getInstance().getAttributeValueRuntimeTypeFeatureProcessors( - IDefaultValue.class, - getStructuredDocumentContext(), - getAttributeEntity()); - if (!dvs.isEmpty()) - return dvs.get(0); - } - else if (ICellEditorValidator.class == adapter) { - IValidValues vvs = (IValidValues)getAdapter(IValidValues.class); - if (vvs != null) - return new EditorValidatorAdapter(vvs); - - } - else if (IInputValidator.class == adapter) { - IValidValues vvs = (IValidValues)getAdapter(IValidValues.class); - if (vvs != null) - return new EditorValidatorAdapter(vvs); - } - else if (IValidValues.class == adapter) { - List vvs = MetaDataEnabledProcessingFactory.getInstance().getAttributeValueRuntimeTypeFeatureProcessors( - IValidValues.class, - getStructuredDocumentContext(), - getAttributeEntity()); - if (!vvs.isEmpty()) - return vvs.get(0); - } - return null; - } - - private Entity getTagEntity() { - return (Entity)getAttributeEntity().eContainer(); - } - - private Entity getAttributeEntity() { - return getMetaDataContext().getEntity(); - } - - public String toString() { - return getUri()+"/"+getTagName()+"/"+getAttributeName(); //$NON-NLS-1$ //$NON-NLS-2$ - } -} diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/properties/internal/PropertyDescriptorAdapter.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/properties/internal/PropertyDescriptorAdapter.java deleted file mode 100644 index a946b29d4..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/properties/internal/PropertyDescriptorAdapter.java +++ /dev/null @@ -1,72 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2007 Oracle 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: - * Oracle Corporation - initial API and implementation - *******************************************************************************/ -package org.eclipse.jst.pagedesigner.editors.properties.internal; - -import org.eclipse.jface.viewers.CellEditor; -import org.eclipse.jface.viewers.ILabelProvider; -import org.eclipse.jst.pagedesigner.editors.properties.IPropertyPageDescriptor; -import org.eclipse.swt.widgets.Composite; -import org.eclipse.ui.views.properties.IPropertyDescriptor; - -/** - * Adapts the MetadataEnabledFeature <code>org.eclipse.jst.pagedesigner.editors.properties.IPropertyPageDescriptor</code>, to a <code>org.eclipse.ui.views.properties.IPropertyDescriptor</code> - * - */ -public class PropertyDescriptorAdapter implements IPropertyDescriptor{ - - private IPropertyPageDescriptor _ppd; - - /** - * Constructor - * @param propertyPageDescriptor - */ - public PropertyDescriptorAdapter(IPropertyPageDescriptor propertyPageDescriptor) { - _ppd = propertyPageDescriptor; - } - - public CellEditor createPropertyEditor(Composite parent) { - return _ppd.getCellEditor(parent); - } - - public String getCategory() { - return _ppd.getCategory(); - } - - public String getDescription() { - return _ppd.getDescription(); - } - - public String getDisplayName() { - return _ppd.getAttributeName(); - } - - public String[] getFilterFlags() { - return null; - } - - public Object getHelpContextIds() { - return null;//FIXME - } - - public Object getId() { - return _ppd.getAttributeName(); - } - - public ILabelProvider getLabelProvider() { - return null;//FIXME: do better? Used to supply labels for attribute property sheet (not quick edit) - } - - public boolean isCompatibleWith(IPropertyDescriptor anotherProperty) { - return false; - } - -} diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/properties/package-info.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/properties/package-info.java deleted file mode 100644 index 4dae0fbaf..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/properties/package-info.java +++ /dev/null @@ -1,18 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2008 Oracle Corporation. - * 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: - * Oracle - initial API and implementation - * - ********************************************************************************/ - -/** - * Web Page Editor tag attribute property page interfaces. - * - * <p><b>Provisional API - subject to change</b></p> - */ -package org.eclipse.jst.pagedesigner.editors.properties; diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/properties/quickedittabsections/QuickEditTabSections.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/properties/quickedittabsections/QuickEditTabSections.java deleted file mode 100644 index c3d53043b..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/properties/quickedittabsections/QuickEditTabSections.java +++ /dev/null @@ -1,59 +0,0 @@ -/** - * Copyright (c) 2007 Oracle Corporation - * - * $Id: QuickEditTabSections.java,v 1.2 2008/11/18 22:22:35 gkessler Exp $ - */ -package org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections; - -import org.eclipse.emf.common.util.EList; - -import org.eclipse.emf.ecore.EObject; - -/** - * <!-- begin-user-doc --> - * A representation of the model object '<em><b>Quick Edit Tab Sections</b></em>'. - * <!-- end-user-doc --> - * - * <p> - * The following features are supported: - * <ul> - * <li>{@link org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.QuickEditTabSections#getSections <em>Sections</em>}</li> - * </ul> - * </p> - * - * @see org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.QuickEditTabSectionsPackage#getQuickEditTabSections() - * @model - * @generated - */ -public interface QuickEditTabSections extends EObject { - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - String copyright = "Copyright (c) 2007 Oracle Corporation"; //$NON-NLS-1$ - - /** - * trait id to use - * @generated NOT - */ - String TRAIT_ID = "quick-edit-tab"; //$NON-NLS-1$ - - /** - * Returns the value of the '<em><b>Sections</b></em>' containment reference list. - * The list contents are of type {@link org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.SectionInfo}. - * <!-- begin-user-doc --> - * <p> - * If the meaning of the '<em>Sections</em>' containment reference list isn't clear, - * there really should be more of a description here... - * </p> - * <!-- end-user-doc --> - * @return the value of the '<em>Sections</em>' containment reference list. - * @see org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.QuickEditTabSectionsPackage#getQuickEditTabSections_Sections() - * @model containment="true" - * extendedMetaData="kind='element' name='section'" - * @generated - */ - EList<SectionInfo> getSections(); - -} // QuickEditTabSections diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/properties/quickedittabsections/QuickEditTabSectionsFactory.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/properties/quickedittabsections/QuickEditTabSectionsFactory.java deleted file mode 100644 index d51fba99a..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/properties/quickedittabsections/QuickEditTabSectionsFactory.java +++ /dev/null @@ -1,61 +0,0 @@ -/** - * Copyright (c) 2007 Oracle Corporation - * - * $Id: QuickEditTabSectionsFactory.java,v 1.2 2008/11/18 22:22:35 gkessler Exp $ - */ -package org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections; - -import org.eclipse.emf.ecore.EFactory; - -/** - * <!-- begin-user-doc --> - * The <b>Factory</b> for the model. - * It provides a create method for each non-abstract class of the model. - * <!-- end-user-doc --> - * @see org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.QuickEditTabSectionsPackage - * @generated - */ -public interface QuickEditTabSectionsFactory extends EFactory { - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - String copyright = "Copyright (c) 2007 Oracle Corporation"; //$NON-NLS-1$ - - /** - * The singleton instance of the factory. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - QuickEditTabSectionsFactory eINSTANCE = org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.internal.impl.QuickEditTabSectionsFactoryImpl.init(); - - /** - * Returns a new object of class '<em>Quick Edit Tab Sections</em>'. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @return a new object of class '<em>Quick Edit Tab Sections</em>'. - * @generated - */ - QuickEditTabSections createQuickEditTabSections(); - - /** - * Returns a new object of class '<em>Section Info</em>'. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @return a new object of class '<em>Section Info</em>'. - * @generated - */ - SectionInfo createSectionInfo(); - - /** - * Returns the package supported by this factory. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @return the package supported by this factory. - * @generated - */ - QuickEditTabSectionsPackage getQuickEditTabSectionsPackage(); - -} //QuickEditTabSectionsFactory diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/properties/quickedittabsections/QuickEditTabSectionsPackage.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/properties/quickedittabsections/QuickEditTabSectionsPackage.java deleted file mode 100644 index e23670bbd..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/properties/quickedittabsections/QuickEditTabSectionsPackage.java +++ /dev/null @@ -1,288 +0,0 @@ -/** - * Copyright (c) 2007 Oracle Corporation - * - * $Id: QuickEditTabSectionsPackage.java,v 1.5 2008/11/18 22:22:35 gkessler Exp $ - */ -package org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections; - -import org.eclipse.emf.ecore.EAttribute; -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.EEnum; -import org.eclipse.emf.ecore.EPackage; -import org.eclipse.emf.ecore.EReference; - -/** - * <!-- begin-user-doc --> - * The <b>Package</b> for the model. - * It contains accessors for the meta objects to represent - * <ul> - * <li>each class,</li> - * <li>each feature of each class,</li> - * <li>each enum,</li> - * <li>and each data type</li> - * </ul> - * <!-- end-user-doc --> - * @see org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.QuickEditTabSectionsFactory - * @model kind="package" - * @generated - */ -@SuppressWarnings("hiding") -public interface QuickEditTabSectionsPackage extends EPackage { - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - String copyright = "Copyright (c) 2007 Oracle Corporation"; //$NON-NLS-1$ - - /** - * The package name. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - String eNAME = "quickedittabsections"; //$NON-NLS-1$ - - /** - * The package namespace URI. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - String eNS_URI = "http://org.eclipse.jsf.pagedesigner/QuickEditTabSections.ecore"; //$NON-NLS-1$ - - /** - * The package namespace name. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - String eNS_PREFIX = "qe"; //$NON-NLS-1$ - - /** - * The singleton instance of the package. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - QuickEditTabSectionsPackage eINSTANCE = org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.internal.impl.QuickEditTabSectionsPackageImpl.init(); - - /** - * The meta object id for the '{@link org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.internal.impl.QuickEditTabSectionsImpl <em>Quick Edit Tab Sections</em>}' class. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @see org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.internal.impl.QuickEditTabSectionsImpl - * @see org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.internal.impl.QuickEditTabSectionsPackageImpl#getQuickEditTabSections() - * @generated - */ - int QUICK_EDIT_TAB_SECTIONS = 0; - - /** - * The feature id for the '<em><b>Sections</b></em>' containment reference list. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - * @ordered - */ - int QUICK_EDIT_TAB_SECTIONS__SECTIONS = 0; - - /** - * The number of structural features of the '<em>Quick Edit Tab Sections</em>' class. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - * @ordered - */ - int QUICK_EDIT_TAB_SECTIONS_FEATURE_COUNT = 1; - - /** - * The meta object id for the '{@link org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.internal.impl.SectionInfoImpl <em>Section Info</em>}' class. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @see org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.internal.impl.SectionInfoImpl - * @see org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.internal.impl.QuickEditTabSectionsPackageImpl#getSectionInfo() - * @generated - */ - int SECTION_INFO = 1; - - /** - * The feature id for the '<em><b>Id</b></em>' attribute. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - * @ordered - */ - int SECTION_INFO__ID = 0; - - /** - * The feature id for the '<em><b>Type</b></em>' attribute. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - * @ordered - */ - int SECTION_INFO__TYPE = 1; - - /** - * The number of structural features of the '<em>Section Info</em>' class. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - * @ordered - */ - int SECTION_INFO_FEATURE_COUNT = 2; - - /** - * The meta object id for the '{@link org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.SECTION_TYPE <em>SECTION TYPE</em>}' enum. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @see org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.SECTION_TYPE - * @see org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.internal.impl.QuickEditTabSectionsPackageImpl#getSECTION_TYPE() - * @generated - */ - int SECTION_TYPE = 2; - - - /** - * Returns the meta object for class '{@link org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.QuickEditTabSections <em>Quick Edit Tab Sections</em>}'. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @return the meta object for class '<em>Quick Edit Tab Sections</em>'. - * @see org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.QuickEditTabSections - * @generated - */ - EClass getQuickEditTabSections(); - - /** - * Returns the meta object for the containment reference list '{@link org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.QuickEditTabSections#getSections <em>Sections</em>}'. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @return the meta object for the containment reference list '<em>Sections</em>'. - * @see org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.QuickEditTabSections#getSections() - * @see #getQuickEditTabSections() - * @generated - */ - EReference getQuickEditTabSections_Sections(); - - /** - * Returns the meta object for class '{@link org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.SectionInfo <em>Section Info</em>}'. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @return the meta object for class '<em>Section Info</em>'. - * @see org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.SectionInfo - * @generated - */ - EClass getSectionInfo(); - - /** - * Returns the meta object for the attribute '{@link org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.SectionInfo#getId <em>Id</em>}'. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @return the meta object for the attribute '<em>Id</em>'. - * @see org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.SectionInfo#getId() - * @see #getSectionInfo() - * @generated - */ - EAttribute getSectionInfo_Id(); - - /** - * Returns the meta object for the attribute '{@link org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.SectionInfo#getType <em>Type</em>}'. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @return the meta object for the attribute '<em>Type</em>'. - * @see org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.SectionInfo#getType() - * @see #getSectionInfo() - * @generated - */ - EAttribute getSectionInfo_Type(); - - /** - * Returns the meta object for enum '{@link org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.SECTION_TYPE <em>SECTION TYPE</em>}'. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @return the meta object for enum '<em>SECTION TYPE</em>'. - * @see org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.SECTION_TYPE - * @generated - */ - EEnum getSECTION_TYPE(); - - /** - * Returns the factory that creates the instances of the model. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @return the factory that creates the instances of the model. - * @generated - */ - QuickEditTabSectionsFactory getQuickEditTabSectionsFactory(); - - /** - * <!-- begin-user-doc --> - * Defines literals for the meta objects that represent - * <ul> - * <li>each class,</li> - * <li>each feature of each class,</li> - * <li>each enum,</li> - * <li>and each data type</li> - * </ul> - * <!-- end-user-doc --> - * @generated - */ -// @SuppressWarnings("hiding") - interface Literals { - /** - * The meta object literal for the '{@link org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.internal.impl.QuickEditTabSectionsImpl <em>Quick Edit Tab Sections</em>}' class. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @see org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.internal.impl.QuickEditTabSectionsImpl - * @see org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.internal.impl.QuickEditTabSectionsPackageImpl#getQuickEditTabSections() - * @generated - */ - EClass QUICK_EDIT_TAB_SECTIONS = eINSTANCE.getQuickEditTabSections(); - - /** - * The meta object literal for the '<em><b>Sections</b></em>' containment reference list feature. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - EReference QUICK_EDIT_TAB_SECTIONS__SECTIONS = eINSTANCE.getQuickEditTabSections_Sections(); - - /** - * The meta object literal for the '{@link org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.internal.impl.SectionInfoImpl <em>Section Info</em>}' class. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @see org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.internal.impl.SectionInfoImpl - * @see org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.internal.impl.QuickEditTabSectionsPackageImpl#getSectionInfo() - * @generated - */ - EClass SECTION_INFO = eINSTANCE.getSectionInfo(); - - /** - * The meta object literal for the '<em><b>Id</b></em>' attribute feature. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - EAttribute SECTION_INFO__ID = eINSTANCE.getSectionInfo_Id(); - - /** - * The meta object literal for the '<em><b>Type</b></em>' attribute feature. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - EAttribute SECTION_INFO__TYPE = eINSTANCE.getSectionInfo_Type(); - - /** - * The meta object literal for the '{@link org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.SECTION_TYPE <em>SECTION TYPE</em>}' enum. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @see org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.SECTION_TYPE - * @see org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.internal.impl.QuickEditTabSectionsPackageImpl#getSECTION_TYPE() - * @generated - */ - EEnum SECTION_TYPE = eINSTANCE.getSECTION_TYPE(); - - } - -} //QuickEditTabSectionsPackage diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/properties/quickedittabsections/SECTION_TYPE.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/properties/quickedittabsections/SECTION_TYPE.java deleted file mode 100644 index 3db1adfda..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/properties/quickedittabsections/SECTION_TYPE.java +++ /dev/null @@ -1,224 +0,0 @@ -/** - * Copyright (c) 2007 Oracle Corporation - * - * $Id: SECTION_TYPE.java,v 1.3 2008/11/18 22:22:35 gkessler Exp $ - */ -package org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections; - -import java.util.Arrays; -import java.util.Collections; -import java.util.List; - -import org.eclipse.emf.common.util.Enumerator; - -/** - * <!-- begin-user-doc --> - * A representation of the literals of the enumeration '<em><b>SECTION TYPE</b></em>', - * and utility methods for working with them. - * <!-- end-user-doc --> - * @see org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.QuickEditTabSectionsPackage#getSECTION_TYPE() - * @model - * @generated - */ -public enum SECTION_TYPE implements Enumerator { - /** - * The '<em><b>ATTRIBUTE</b></em>' literal object. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @see #ATTRIBUTE_VALUE - * @generated - * @ordered - */ - ATTRIBUTE(0, "ATTRIBUTE", "ATTRIBUTE"), //$NON-NLS-1$ //$NON-NLS-2$ - - /** - * The '<em><b>SECTION</b></em>' literal object. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @see #SECTION_VALUE - * @generated - * @ordered - */ - SECTION(1, "SECTION", "SECTION"); //$NON-NLS-1$ //$NON-NLS-2$ - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public static final String copyright = "Copyright (c) 2007 Oracle Corporation"; //$NON-NLS-1$ - - /** - * The '<em><b>ATTRIBUTE</b></em>' literal value. - * <!-- begin-user-doc --> - * <p> - * If the meaning of '<em><b>ATTRIBUTE</b></em>' literal object isn't clear, - * there really should be more of a description here... - * </p> - * <!-- end-user-doc --> - * @see #ATTRIBUTE - * @model - * @generated - * @ordered - */ - public static final int ATTRIBUTE_VALUE = 0; - - /** - * The '<em><b>SECTION</b></em>' literal value. - * <!-- begin-user-doc --> - * <p> - * If the meaning of '<em><b>SECTION</b></em>' literal object isn't clear, - * there really should be more of a description here... - * </p> - * <!-- end-user-doc --> - * @see #SECTION - * @model - * @generated - * @ordered - */ - public static final int SECTION_VALUE = 1; - - /** - * An array of all the '<em><b>SECTION TYPE</b></em>' enumerators. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - private static final SECTION_TYPE[] VALUES_ARRAY = - new SECTION_TYPE[] { - ATTRIBUTE, - SECTION, - }; - - /** - * A public read-only list of all the '<em><b>SECTION TYPE</b></em>' enumerators. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public static final List<SECTION_TYPE> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY)); - - /** - * Returns the '<em><b>SECTION TYPE</b></em>' literal with the specified literal value. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @param literal - * @return SECTION_TYPE - * @generated - */ - public static SECTION_TYPE get(String literal) { - for (int i = 0; i < VALUES_ARRAY.length; ++i) { - SECTION_TYPE result = VALUES_ARRAY[i]; - if (result.toString().equals(literal)) { - return result; - } - } - return null; - } - - /** - * Returns the '<em><b>SECTION TYPE</b></em>' literal with the specified name. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @param name - * @return SECTION_TYPE - * @generated - */ - public static SECTION_TYPE getByName(String name) { - for (int i = 0; i < VALUES_ARRAY.length; ++i) { - SECTION_TYPE result = VALUES_ARRAY[i]; - if (result.getName().equals(name)) { - return result; - } - } - return null; - } - - /** - * Returns the '<em><b>SECTION TYPE</b></em>' literal with the specified integer value. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @param value - * @return SECTION_TYPE - * @generated - */ - public static SECTION_TYPE get(int value) { - switch (value) { - case ATTRIBUTE_VALUE: return ATTRIBUTE; - case SECTION_VALUE: return SECTION; - } - return null; - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - private final int value; - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - private final String name; - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - private final String literal; - - /** - * Only this class can construct instances. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - private SECTION_TYPE(int value, String name, String literal) { - this.value = value; - this.name = name; - this.literal = literal; - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public int getValue() { - return value; - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public String getName() { - return name; - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public String getLiteral() { - return literal; - } - - /** - * Returns the literal value of the enumerator, which is its string representation. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - @Override - public String toString() { - return literal; - } - -} //SECTION_TYPE diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/properties/quickedittabsections/SectionInfo.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/properties/quickedittabsections/SectionInfo.java deleted file mode 100644 index 8f5a152e6..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/properties/quickedittabsections/SectionInfo.java +++ /dev/null @@ -1,91 +0,0 @@ -/** - * Copyright (c) 2007 Oracle Corporation - * - * $Id: SectionInfo.java,v 1.2 2008/11/18 22:22:35 gkessler Exp $ - */ -package org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections; - -import org.eclipse.emf.ecore.EObject; - -/** - * <!-- begin-user-doc --> - * A representation of the model object '<em><b>Section Info</b></em>'. - * <!-- end-user-doc --> - * - * <p> - * The following features are supported: - * <ul> - * <li>{@link org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.SectionInfo#getId <em>Id</em>}</li> - * <li>{@link org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.SectionInfo#getType <em>Type</em>}</li> - * </ul> - * </p> - * - * @see org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.QuickEditTabSectionsPackage#getSectionInfo() - * @model - * @generated - */ -public interface SectionInfo extends EObject { - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - String copyright = "Copyright (c) 2007 Oracle Corporation"; //$NON-NLS-1$ - - /** - * Returns the value of the '<em><b>Id</b></em>' attribute. - * <!-- begin-user-doc --> - * <p> - * If the meaning of the '<em>Id</em>' attribute isn't clear, - * there really should be more of a description here... - * </p> - * <!-- end-user-doc --> - * @return the value of the '<em>Id</em>' attribute. - * @see #setId(String) - * @see org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.QuickEditTabSectionsPackage#getSectionInfo_Id() - * @model required="true" - * @generated - */ - String getId(); - - /** - * Sets the value of the '{@link org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.SectionInfo#getId <em>Id</em>}' attribute. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @param value the new value of the '<em>Id</em>' attribute. - * @see #getId() - * @generated - */ - void setId(String value); - - /** - * Returns the value of the '<em><b>Type</b></em>' attribute. - * The default value is <code>"ATTRIBUTE"</code>. - * The literals are from the enumeration {@link org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.SECTION_TYPE}. - * <!-- begin-user-doc --> - * <p> - * If the meaning of the '<em>Type</em>' attribute isn't clear, - * there really should be more of a description here... - * </p> - * <!-- end-user-doc --> - * @return the value of the '<em>Type</em>' attribute. - * @see org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.SECTION_TYPE - * @see #setType(SECTION_TYPE) - * @see org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.QuickEditTabSectionsPackage#getSectionInfo_Type() - * @model default="ATTRIBUTE" unique="false" - * @generated - */ - SECTION_TYPE getType(); - - /** - * Sets the value of the '{@link org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.SectionInfo#getType <em>Type</em>}' attribute. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @param value the new value of the '<em>Type</em>' attribute. - * @see org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.SECTION_TYPE - * @see #getType() - * @generated - */ - void setType(SECTION_TYPE value); - -} // SectionInfo diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/properties/quickedittabsections/internal/impl/QuickEditTabSectionsFactoryImpl.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/properties/quickedittabsections/internal/impl/QuickEditTabSectionsFactoryImpl.java deleted file mode 100644 index 138866924..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/properties/quickedittabsections/internal/impl/QuickEditTabSectionsFactoryImpl.java +++ /dev/null @@ -1,176 +0,0 @@ -/** - * Copyright (c) 2007 Oracle Corporation - * - * $Id: QuickEditTabSectionsFactoryImpl.java,v 1.3 2008/11/18 22:22:35 gkessler Exp $ - */ -package org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.internal.impl; - -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.EDataType; -import org.eclipse.emf.ecore.EObject; -import org.eclipse.emf.ecore.EPackage; -import org.eclipse.emf.ecore.impl.EFactoryImpl; -import org.eclipse.emf.ecore.plugin.EcorePlugin; -import org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.QuickEditTabSections; -import org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.QuickEditTabSectionsFactory; -import org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.QuickEditTabSectionsPackage; -import org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.SECTION_TYPE; -import org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.SectionInfo; - -/** - * <!-- begin-user-doc --> - * An implementation of the model <b>Factory</b>. - * <!-- end-user-doc --> - * @generated - */ -public class QuickEditTabSectionsFactoryImpl extends EFactoryImpl implements QuickEditTabSectionsFactory { - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public static final String copyright = "Copyright (c) 2007 Oracle Corporation"; //$NON-NLS-1$ - - /** - * Creates the default factory implementation. - * <!-- begin-user-doc --> - * @return the factory - * <!-- end-user-doc --> - * @generated - */ - public static QuickEditTabSectionsFactory init() { - try { - QuickEditTabSectionsFactory theQuickEditTabSectionsFactory = (QuickEditTabSectionsFactory)EPackage.Registry.INSTANCE.getEFactory("http://org.eclipse.jsf.pagedesigner/QuickEditTabSections.ecore"); //$NON-NLS-1$ - if (theQuickEditTabSectionsFactory != null) { - return theQuickEditTabSectionsFactory; - } - } - catch (Exception exception) { - EcorePlugin.INSTANCE.log(exception); - } - return new QuickEditTabSectionsFactoryImpl(); - } - - /** - * Creates an instance of the factory. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public QuickEditTabSectionsFactoryImpl() { - super(); - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - @Override - public EObject create(EClass eClass) { - switch (eClass.getClassifierID()) { - case QuickEditTabSectionsPackage.QUICK_EDIT_TAB_SECTIONS: return createQuickEditTabSections(); - case QuickEditTabSectionsPackage.SECTION_INFO: return createSectionInfo(); - default: - throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); //$NON-NLS-1$ //$NON-NLS-2$ - } - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - @Override - public Object createFromString(EDataType eDataType, String initialValue) { - switch (eDataType.getClassifierID()) { - case QuickEditTabSectionsPackage.SECTION_TYPE: - return createSECTION_TYPEFromString(eDataType, initialValue); - default: - throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier"); //$NON-NLS-1$ //$NON-NLS-2$ - } - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - @Override - public String convertToString(EDataType eDataType, Object instanceValue) { - switch (eDataType.getClassifierID()) { - case QuickEditTabSectionsPackage.SECTION_TYPE: - return convertSECTION_TYPEToString(eDataType, instanceValue); - default: - throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier"); //$NON-NLS-1$ //$NON-NLS-2$ - } - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public QuickEditTabSections createQuickEditTabSections() { - QuickEditTabSectionsImpl quickEditTabSections = new QuickEditTabSectionsImpl(); - return quickEditTabSections; - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public SectionInfo createSectionInfo() { - SectionInfoImpl sectionInfo = new SectionInfoImpl(); - return sectionInfo; - } - - /** - * <!-- begin-user-doc --> - * @param eDataType - * @param initialValue - * @return the SECTION_TYPE enumerator - * <!-- end-user-doc --> - * @generated - */ - public SECTION_TYPE createSECTION_TYPEFromString(EDataType eDataType, String initialValue) { - SECTION_TYPE result = SECTION_TYPE.get(initialValue); - if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ - return result; - } - - /** - * <!-- begin-user-doc --> - * @param eDataType - * @param instanceValue - * @return the String version of the section type - * <!-- end-user-doc --> - * @generated - */ - public String convertSECTION_TYPEToString(EDataType eDataType, Object instanceValue) { - return instanceValue == null ? null : instanceValue.toString(); - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public QuickEditTabSectionsPackage getQuickEditTabSectionsPackage() { - return (QuickEditTabSectionsPackage)getEPackage(); - } - - /** - * <!-- begin-user-doc --> - * @return the package - * <!-- end-user-doc --> - * @deprecated - * @generated - */ - @Deprecated - public static QuickEditTabSectionsPackage getPackage() { - return QuickEditTabSectionsPackage.eINSTANCE; - } - -} //QuickEditTabSectionsFactoryImpl diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/properties/quickedittabsections/internal/impl/QuickEditTabSectionsImpl.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/properties/quickedittabsections/internal/impl/QuickEditTabSectionsImpl.java deleted file mode 100644 index 081c76fb3..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/properties/quickedittabsections/internal/impl/QuickEditTabSectionsImpl.java +++ /dev/null @@ -1,157 +0,0 @@ -/** - * Copyright (c) 2007 Oracle Corporation - * - * $Id: QuickEditTabSectionsImpl.java,v 1.2 2008/11/18 22:22:35 gkessler Exp $ - */ -package org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.internal.impl; - -import java.util.Collection; - -import org.eclipse.emf.common.notify.NotificationChain; -import org.eclipse.emf.common.util.EList; -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.InternalEObject; -import org.eclipse.emf.ecore.impl.EObjectImpl; -import org.eclipse.emf.ecore.util.EObjectContainmentEList; -import org.eclipse.emf.ecore.util.InternalEList; -import org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.QuickEditTabSections; -import org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.QuickEditTabSectionsPackage; -import org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.SectionInfo; - -/** - * <!-- begin-user-doc --> - * An implementation of the model object '<em><b>Quick Edit Tab Sections</b></em>'. - * <!-- end-user-doc --> - * <p> - * The following features are implemented: - * <ul> - * <li>{@link org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.internal.impl.QuickEditTabSectionsImpl#getSections <em>Sections</em>}</li> - * </ul> - * </p> - * - * @generated - */ -public class QuickEditTabSectionsImpl extends EObjectImpl implements QuickEditTabSections { - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public static final String copyright = "Copyright (c) 2007 Oracle Corporation"; //$NON-NLS-1$ - - /** - * The cached value of the '{@link #getSections() <em>Sections</em>}' containment reference list. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @see #getSections() - * @generated - * @ordered - */ - protected EList<SectionInfo> sections; - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - protected QuickEditTabSectionsImpl() { - super(); - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - @Override - protected EClass eStaticClass() { - return QuickEditTabSectionsPackage.Literals.QUICK_EDIT_TAB_SECTIONS; - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public EList<SectionInfo> getSections() { - if (sections == null) { - sections = new EObjectContainmentEList<SectionInfo>(SectionInfo.class, this, QuickEditTabSectionsPackage.QUICK_EDIT_TAB_SECTIONS__SECTIONS); - } - return sections; - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - @Override - public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { - switch (featureID) { - case QuickEditTabSectionsPackage.QUICK_EDIT_TAB_SECTIONS__SECTIONS: - return ((InternalEList<?>)getSections()).basicRemove(otherEnd, msgs); - } - return super.eInverseRemove(otherEnd, featureID, msgs); - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case QuickEditTabSectionsPackage.QUICK_EDIT_TAB_SECTIONS__SECTIONS: - return getSections(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - @SuppressWarnings("unchecked") - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case QuickEditTabSectionsPackage.QUICK_EDIT_TAB_SECTIONS__SECTIONS: - getSections().clear(); - getSections().addAll((Collection<? extends SectionInfo>)newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case QuickEditTabSectionsPackage.QUICK_EDIT_TAB_SECTIONS__SECTIONS: - getSections().clear(); - return; - } - super.eUnset(featureID); - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case QuickEditTabSectionsPackage.QUICK_EDIT_TAB_SECTIONS__SECTIONS: - return sections != null && !sections.isEmpty(); - } - return super.eIsSet(featureID); - } - -} //QuickEditTabSectionsImpl diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/properties/quickedittabsections/internal/impl/QuickEditTabSectionsPackageImpl.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/properties/quickedittabsections/internal/impl/QuickEditTabSectionsPackageImpl.java deleted file mode 100644 index 636c6ba4b..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/properties/quickedittabsections/internal/impl/QuickEditTabSectionsPackageImpl.java +++ /dev/null @@ -1,283 +0,0 @@ -/** - * Copyright (c) 2007 Oracle Corporation - * - * $Id: QuickEditTabSectionsPackageImpl.java,v 1.3 2008/11/18 22:22:35 gkessler Exp $ - */ -package org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.internal.impl; - -import org.eclipse.emf.ecore.EAttribute; -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.EEnum; -import org.eclipse.emf.ecore.EPackage; -import org.eclipse.emf.ecore.EReference; -import org.eclipse.emf.ecore.impl.EPackageImpl; -import org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.QuickEditTabSections; -import org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.QuickEditTabSectionsFactory; -import org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.QuickEditTabSectionsPackage; -import org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.SectionInfo; - -/** - * <!-- begin-user-doc --> - * An implementation of the model <b>Package</b>. - * <!-- end-user-doc --> - * @generated - */ -public class QuickEditTabSectionsPackageImpl extends EPackageImpl implements QuickEditTabSectionsPackage { - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public static final String copyright = "Copyright (c) 2007 Oracle Corporation"; //$NON-NLS-1$ - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - private EClass quickEditTabSectionsEClass = null; - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - private EClass sectionInfoEClass = null; - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - private EEnum sectioN_TYPEEEnum = null; - - /** - * Creates an instance of the model <b>Package</b>, registered with - * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package - * package URI value. - * <p>Note: the correct way to create the package is via the static - * factory method {@link #init init()}, which also performs - * initialization of the package, or returns the registered package, - * if one already exists. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @see org.eclipse.emf.ecore.EPackage.Registry - * @see org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.QuickEditTabSectionsPackage#eNS_URI - * @see #init() - * @generated - */ - private QuickEditTabSectionsPackageImpl() { - super(eNS_URI, QuickEditTabSectionsFactory.eINSTANCE); - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - private static boolean isInited = false; - - /** - * Creates, registers, and initializes the <b>Package</b> for this - * model, and for any others upon which it depends. Simple - * dependencies are satisfied by calling this method on all - * dependent packages before doing anything else. This method drives - * initialization for interdependent packages directly, in parallel - * with this package, itself. - * <p>Of this package and its interdependencies, all packages which - * have not yet been registered by their URI values are first created - * and registered. The packages are then initialized in two steps: - * meta-model objects for all of the packages are created before any - * are initialized, since one package's meta-model objects may refer to - * those of another. - * <p>Invocation of this method will not affect any packages that have - * already been initialized. - * <!-- begin-user-doc --> - * @return the initialized package - * <!-- end-user-doc --> - * @see #eNS_URI - * @see #createPackageContents() - * @see #initializePackageContents() - * @generated - */ - public static QuickEditTabSectionsPackage init() { - if (isInited) return (QuickEditTabSectionsPackage)EPackage.Registry.INSTANCE.getEPackage(QuickEditTabSectionsPackage.eNS_URI); - - // Obtain or create and register package - QuickEditTabSectionsPackageImpl theQuickEditTabSectionsPackage = (QuickEditTabSectionsPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(eNS_URI) instanceof QuickEditTabSectionsPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(eNS_URI) : new QuickEditTabSectionsPackageImpl()); - - isInited = true; - - // Create package meta-data objects - theQuickEditTabSectionsPackage.createPackageContents(); - - // Initialize created meta-data - theQuickEditTabSectionsPackage.initializePackageContents(); - - // Mark meta-data to indicate it can't be changed - theQuickEditTabSectionsPackage.freeze(); - - return theQuickEditTabSectionsPackage; - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public EClass getQuickEditTabSections() { - return quickEditTabSectionsEClass; - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public EReference getQuickEditTabSections_Sections() { - return (EReference)quickEditTabSectionsEClass.getEStructuralFeatures().get(0); - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public EClass getSectionInfo() { - return sectionInfoEClass; - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public EAttribute getSectionInfo_Id() { - return (EAttribute)sectionInfoEClass.getEStructuralFeatures().get(0); - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public EAttribute getSectionInfo_Type() { - return (EAttribute)sectionInfoEClass.getEStructuralFeatures().get(1); - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public EEnum getSECTION_TYPE() { - return sectioN_TYPEEEnum; - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public QuickEditTabSectionsFactory getQuickEditTabSectionsFactory() { - return (QuickEditTabSectionsFactory)getEFactoryInstance(); - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - private boolean isCreated = false; - - /** - * Creates the meta-model objects for the package. This method is - * guarded to have no affect on any invocation but its first. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public void createPackageContents() { - if (isCreated) return; - isCreated = true; - - // Create classes and their features - quickEditTabSectionsEClass = createEClass(QUICK_EDIT_TAB_SECTIONS); - createEReference(quickEditTabSectionsEClass, QUICK_EDIT_TAB_SECTIONS__SECTIONS); - - sectionInfoEClass = createEClass(SECTION_INFO); - createEAttribute(sectionInfoEClass, SECTION_INFO__ID); - createEAttribute(sectionInfoEClass, SECTION_INFO__TYPE); - - // Create enums - sectioN_TYPEEEnum = createEEnum(SECTION_TYPE); - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - private boolean isInitialized = false; - - /** - * Complete the initialization of the package and its meta-model. This - * method is guarded to have no affect on any invocation but its first. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public void initializePackageContents() { - if (isInitialized) return; - isInitialized = true; - - // Initialize package - setName(eNAME); - setNsPrefix(eNS_PREFIX); - setNsURI(eNS_URI); - - // Create type parameters - - // Set bounds for type parameters - - // Add supertypes to classes - - // Initialize classes and features; add operations and parameters - initEClass(quickEditTabSectionsEClass, QuickEditTabSections.class, "QuickEditTabSections", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$ - initEReference(getQuickEditTabSections_Sections(), this.getSectionInfo(), null, "sections", null, 0, -1, QuickEditTabSections.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$ - - initEClass(sectionInfoEClass, SectionInfo.class, "SectionInfo", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$ - initEAttribute(getSectionInfo_Id(), ecorePackage.getEString(), "id", null, 1, 1, SectionInfo.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$ - initEAttribute(getSectionInfo_Type(), this.getSECTION_TYPE(), "type", "ATTRIBUTE", 0, 1, SectionInfo.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$ //$NON-NLS-2$ - - // Initialize enums and add enum literals - initEEnum(sectioN_TYPEEEnum, org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.SECTION_TYPE.class, "SECTION_TYPE"); //$NON-NLS-1$ - addEEnumLiteral(sectioN_TYPEEEnum, org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.SECTION_TYPE.ATTRIBUTE); - addEEnumLiteral(sectioN_TYPEEEnum, org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.SECTION_TYPE.SECTION); - - // Create resource - createResource(eNS_URI); - - // Create annotations - // http:///org/eclipse/emf/ecore/util/ExtendedMetaData - createExtendedMetaDataAnnotations(); - } - - /** - * Initializes the annotations for <b>http:///org/eclipse/emf/ecore/util/ExtendedMetaData</b>. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - protected void createExtendedMetaDataAnnotations() { - String source = "http:///org/eclipse/emf/ecore/util/ExtendedMetaData"; //$NON-NLS-1$ - addAnnotation - (getQuickEditTabSections_Sections(), - source, - new String[] { - "kind", "element", //$NON-NLS-1$ //$NON-NLS-2$ - "name", "section" //$NON-NLS-1$ //$NON-NLS-2$ - }); - } - -} //QuickEditTabSectionsPackageImpl diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/properties/quickedittabsections/internal/impl/SectionInfoImpl.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/properties/quickedittabsections/internal/impl/SectionInfoImpl.java deleted file mode 100644 index b0019d9a0..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/properties/quickedittabsections/internal/impl/SectionInfoImpl.java +++ /dev/null @@ -1,225 +0,0 @@ -/** - * Copyright (c) 2007 Oracle Corporation - * - * $Id: SectionInfoImpl.java,v 1.2 2008/11/18 22:22:35 gkessler Exp $ - */ -package org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.internal.impl; - -import org.eclipse.emf.common.notify.Notification; -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.impl.ENotificationImpl; -import org.eclipse.emf.ecore.impl.EObjectImpl; -import org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.QuickEditTabSectionsPackage; -import org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.SECTION_TYPE; -import org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.SectionInfo; - -/** - * <!-- begin-user-doc --> - * An implementation of the model object '<em><b>Section Info</b></em>'. - * <!-- end-user-doc --> - * <p> - * The following features are implemented: - * <ul> - * <li>{@link org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.internal.impl.SectionInfoImpl#getId <em>Id</em>}</li> - * <li>{@link org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.internal.impl.SectionInfoImpl#getType <em>Type</em>}</li> - * </ul> - * </p> - * - * @generated - */ -public class SectionInfoImpl extends EObjectImpl implements SectionInfo { - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public static final String copyright = "Copyright (c) 2007 Oracle Corporation"; //$NON-NLS-1$ - - /** - * The default value of the '{@link #getId() <em>Id</em>}' attribute. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @see #getId() - * @generated - * @ordered - */ - protected static final String ID_EDEFAULT = null; - - /** - * The cached value of the '{@link #getId() <em>Id</em>}' attribute. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @see #getId() - * @generated - * @ordered - */ - protected String id = ID_EDEFAULT; - - /** - * The default value of the '{@link #getType() <em>Type</em>}' attribute. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @see #getType() - * @generated - * @ordered - */ - protected static final SECTION_TYPE TYPE_EDEFAULT = SECTION_TYPE.ATTRIBUTE; - - /** - * The cached value of the '{@link #getType() <em>Type</em>}' attribute. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @see #getType() - * @generated - * @ordered - */ - protected SECTION_TYPE type = TYPE_EDEFAULT; - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - protected SectionInfoImpl() { - super(); - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - @Override - protected EClass eStaticClass() { - return QuickEditTabSectionsPackage.Literals.SECTION_INFO; - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public String getId() { - return id; - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public void setId(String newId) { - String oldId = id; - id = newId; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, QuickEditTabSectionsPackage.SECTION_INFO__ID, oldId, id)); - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public SECTION_TYPE getType() { - return type; - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public void setType(SECTION_TYPE newType) { - SECTION_TYPE oldType = type; - type = newType == null ? TYPE_EDEFAULT : newType; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, QuickEditTabSectionsPackage.SECTION_INFO__TYPE, oldType, type)); - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case QuickEditTabSectionsPackage.SECTION_INFO__ID: - return getId(); - case QuickEditTabSectionsPackage.SECTION_INFO__TYPE: - return getType(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case QuickEditTabSectionsPackage.SECTION_INFO__ID: - setId((String)newValue); - return; - case QuickEditTabSectionsPackage.SECTION_INFO__TYPE: - setType((SECTION_TYPE)newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case QuickEditTabSectionsPackage.SECTION_INFO__ID: - setId(ID_EDEFAULT); - return; - case QuickEditTabSectionsPackage.SECTION_INFO__TYPE: - setType(TYPE_EDEFAULT); - return; - } - super.eUnset(featureID); - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case QuickEditTabSectionsPackage.SECTION_INFO__ID: - return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id); - case QuickEditTabSectionsPackage.SECTION_INFO__TYPE: - return type != TYPE_EDEFAULT; - } - return super.eIsSet(featureID); - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - @Override - public String toString() { - if (eIsProxy()) return super.toString(); - - StringBuffer result = new StringBuffer(super.toString()); - result.append(" (id: "); //$NON-NLS-1$ - result.append(id); - result.append(", type: "); //$NON-NLS-1$ - result.append(type); - result.append(')'); - return result.toString(); - } - -} //SectionInfoImpl diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/properties/quickedittabsections/internal/util/QuickEditTabSectionsAdapterFactory.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/properties/quickedittabsections/internal/util/QuickEditTabSectionsAdapterFactory.java deleted file mode 100644 index f6b7045b1..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/properties/quickedittabsections/internal/util/QuickEditTabSectionsAdapterFactory.java +++ /dev/null @@ -1,148 +0,0 @@ -/** - * Copyright (c) 2007 Oracle Corporation - * - * $Id: QuickEditTabSectionsAdapterFactory.java,v 1.2 2008/11/18 22:22:46 gkessler Exp $ - */ -package org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.internal.util; - -import org.eclipse.emf.common.notify.Adapter; -import org.eclipse.emf.common.notify.Notifier; - -import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl; - -import org.eclipse.emf.ecore.EObject; - -import org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.*; - -/** - * <!-- begin-user-doc --> - * The <b>Adapter Factory</b> for the model. - * It provides an adapter <code>createXXX</code> method for each class of the model. - * <!-- end-user-doc --> - * @see org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.QuickEditTabSectionsPackage - * @generated - */ -public class QuickEditTabSectionsAdapterFactory extends AdapterFactoryImpl { - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public static final String copyright = "Copyright (c) 2007 Oracle Corporation"; //$NON-NLS-1$ - - /** - * The cached model package. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - protected static QuickEditTabSectionsPackage modelPackage; - - /** - * Creates an instance of the adapter factory. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public QuickEditTabSectionsAdapterFactory() { - if (modelPackage == null) { - modelPackage = QuickEditTabSectionsPackage.eINSTANCE; - } - } - - /** - * Returns whether this factory is applicable for the type of the object. - * <!-- begin-user-doc --> - * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model. - * <!-- end-user-doc --> - * @return whether this factory is applicable for the type of the object. - * @generated - */ - @Override - public boolean isFactoryForType(Object object) { - if (object == modelPackage) { - return true; - } - if (object instanceof EObject) { - return ((EObject)object).eClass().getEPackage() == modelPackage; - } - return false; - } - - /** - * The switch the delegates to the <code>createXXX</code> methods. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - protected QuickEditTabSectionsSwitch<Adapter> modelSwitch = - new QuickEditTabSectionsSwitch<Adapter>() { - @Override - public Adapter caseQuickEditTabSections(QuickEditTabSections object) { - return createQuickEditTabSectionsAdapter(); - } - @Override - public Adapter caseSectionInfo(SectionInfo object) { - return createSectionInfoAdapter(); - } - @Override - public Adapter defaultCase(EObject object) { - return createEObjectAdapter(); - } - }; - - /** - * Creates an adapter for the <code>target</code>. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @param target the object to adapt. - * @return the adapter for the <code>target</code>. - * @generated - */ - @Override - public Adapter createAdapter(Notifier target) { - return modelSwitch.doSwitch((EObject)target); - } - - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.QuickEditTabSections <em>Quick Edit Tab Sections</em>}'. - * <!-- begin-user-doc --> - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * <!-- end-user-doc --> - * @return the new adapter. - * @see org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.QuickEditTabSections - * @generated - */ - public Adapter createQuickEditTabSectionsAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.SectionInfo <em>Section Info</em>}'. - * <!-- begin-user-doc --> - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * <!-- end-user-doc --> - * @return the new adapter. - * @see org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.SectionInfo - * @generated - */ - public Adapter createSectionInfoAdapter() { - return null; - } - - /** - * Creates a new adapter for the default case. - * <!-- begin-user-doc --> - * This default implementation returns null. - * <!-- end-user-doc --> - * @return the new adapter. - * @generated - */ - public Adapter createEObjectAdapter() { - return null; - } - -} //QuickEditTabSectionsAdapterFactory diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/properties/quickedittabsections/internal/util/QuickEditTabSectionsSwitch.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/properties/quickedittabsections/internal/util/QuickEditTabSectionsSwitch.java deleted file mode 100644 index 040881cbe..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/properties/quickedittabsections/internal/util/QuickEditTabSectionsSwitch.java +++ /dev/null @@ -1,162 +0,0 @@ -/** - * Copyright (c) 2007 Oracle Corporation - * - * $Id: QuickEditTabSectionsSwitch.java,v 1.3 2008/11/18 22:22:46 gkessler Exp $ - */ -package org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.internal.util; - -import java.util.List; - -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.EObject; - -import org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.*; - -/** - * <!-- begin-user-doc --> - * The <b>Switch</b> for the model's inheritance hierarchy. - * It supports the call {@link #doSwitch(EObject) doSwitch(object)} - * to invoke the <code>caseXXX</code> method for each class of the model, - * starting with the actual class of the object - * and proceeding up the inheritance hierarchy - * until a non-null result is returned, - * which is the result of the switch. - * - * @param <T> - * <!-- end-user-doc --> - * @see org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections.QuickEditTabSectionsPackage - * @generated - */ -public class QuickEditTabSectionsSwitch<T> { - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public static final String copyright = "Copyright (c) 2007 Oracle Corporation"; //$NON-NLS-1$ - - /** - * The cached model package - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - protected static QuickEditTabSectionsPackage modelPackage; - - /** - * Creates an instance of the switch. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public QuickEditTabSectionsSwitch() { - if (modelPackage == null) { - modelPackage = QuickEditTabSectionsPackage.eINSTANCE; - } - } - - /** - * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result. - * <!-- begin-user-doc --> - * @param theEObject - * <!-- end-user-doc --> - * @return the first non-null result returned by a <code>caseXXX</code> call. - * @generated - */ - public T doSwitch(EObject theEObject) { - return doSwitch(theEObject.eClass(), theEObject); - } - - /** - * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result. - * <!-- begin-user-doc --> - * @param theEClass - * @param theEObject - * <!-- end-user-doc --> - * @return the first non-null result returned by a <code>caseXXX</code> call. - * @generated - */ - protected T doSwitch(EClass theEClass, EObject theEObject) { - if (theEClass.eContainer() == modelPackage) { - return doSwitch(theEClass.getClassifierID(), theEObject); - } - List<EClass> eSuperTypes = theEClass.getESuperTypes(); - return - eSuperTypes.isEmpty() ? - defaultCase(theEObject) : - doSwitch(eSuperTypes.get(0), theEObject); - } - - /** - * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result. - * <!-- begin-user-doc --> - * @param classifierID - * @param theEObject - * <!-- end-user-doc --> - * @return the first non-null result returned by a <code>caseXXX</code> call. - * @generated - */ - protected T doSwitch(int classifierID, EObject theEObject) { - switch (classifierID) { - case QuickEditTabSectionsPackage.QUICK_EDIT_TAB_SECTIONS: { - QuickEditTabSections quickEditTabSections = (QuickEditTabSections)theEObject; - T result = caseQuickEditTabSections(quickEditTabSections); - if (result == null) result = defaultCase(theEObject); - return result; - } - case QuickEditTabSectionsPackage.SECTION_INFO: { - SectionInfo sectionInfo = (SectionInfo)theEObject; - T result = caseSectionInfo(sectionInfo); - if (result == null) result = defaultCase(theEObject); - return result; - } - default: return defaultCase(theEObject); - } - } - - /** - * Returns the result of interpreting the object as an instance of '<em>Quick Edit Tab Sections</em>'. - * <!-- begin-user-doc --> - * This implementation returns null; - * returning a non-null result will terminate the switch. - * <!-- end-user-doc --> - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of '<em>Quick Edit Tab Sections</em>'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseQuickEditTabSections(QuickEditTabSections object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of '<em>Section Info</em>'. - * <!-- begin-user-doc --> - * This implementation returns null; - * returning a non-null result will terminate the switch. - * <!-- end-user-doc --> - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of '<em>Section Info</em>'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseSectionInfo(SectionInfo object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of '<em>EObject</em>'. - * <!-- begin-user-doc --> - * This implementation returns null; - * returning a non-null result will terminate the switch, but this is the last case anyway. - * <!-- end-user-doc --> - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of '<em>EObject</em>'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) - * @generated - */ - public T defaultCase(EObject object) { - return null; - } - -} //QuickEditTabSectionsSwitch diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/properties/quickedittabsections/package-info.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/properties/quickedittabsections/package-info.java deleted file mode 100644 index e51e80caf..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/properties/quickedittabsections/package-info.java +++ /dev/null @@ -1,18 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2008 Oracle Corporation. - * 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: - * Oracle - initial API and implementation - * - ********************************************************************************/ - -/** - * Web Page Editor tag attribute QuickEdit property page classes. - * - * <p><b>Provisional API - subject to change</b></p> - */ -package org.eclipse.jst.pagedesigner.editors.properties.quickedittabsections; |