blob: 45cd989bea820ed0e43aa252f244b272529531c8 [file] [log] [blame]
/*******************************************************************************
* 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;
// }
}