[jboss-cvs] jbosside/core/plugins/org.jboss.ide.eclipse.packages.ui/src/main/org/jboss/ide/eclipse/packages/ui/actions ...
Marshall Culpepper
mculpepper at jboss.com
Fri Mar 2 21:38:23 EST 2007
User: mculpepper
Date: 07/03/02 21:38:23
Added: core/plugins/org.jboss.ide.eclipse.packages.ui/src/main/org/jboss/ide/eclipse/packages/ui/actions
NewPackageAction.java
Log:
initial implementation of newPackageActions (single extension point that supports links and actions in the ProjectPackagesView)
Revision Changes Path
1.1 date: 2007/03/03 02:38:23; author: mculpepper; state: Exp;jbosside/core/plugins/org.jboss.ide.eclipse.packages.ui/src/main/org/jboss/ide/eclipse/packages/ui/actions/NewPackageAction.java
Index: NewPackageAction.java
===================================================================
package org.jboss.ide.eclipse.packages.ui.actions;
import java.net.URL;
import org.eclipse.core.runtime.CoreException;
import org.eclipse.core.runtime.FileLocator;
import org.eclipse.core.runtime.IConfigurationElement;
import org.eclipse.core.runtime.Path;
import org.eclipse.core.runtime.Platform;
import org.eclipse.jface.resource.ImageDescriptor;
import org.eclipse.swt.graphics.Image;
import org.eclipse.ui.IActionDelegate;
import org.jboss.ide.eclipse.packages.core.Trace;
import org.osgi.framework.Bundle;
public class NewPackageAction {
private String id, label;
private ImageDescriptor icon;
private Image iconImage;
private IActionDelegate action;
public NewPackageAction(IConfigurationElement element) {
id = element.getAttribute("id");
label = element.getAttribute("label");
try {
action = (IActionDelegate) element.createExecutableExtension("class");
} catch (CoreException e) {
Trace.trace(getClass(), e);
}
String iconPath = element.getAttribute("icon");
String pluginId = element.getDeclaringExtension().getNamespaceIdentifier();
Bundle bundle = Platform.getBundle(pluginId);
URL iconURL = FileLocator.find(bundle, new Path(iconPath), null);
if (iconURL == null)
{
iconURL = bundle.getEntry(iconPath);
}
icon = ImageDescriptor.createFromURL(iconURL);
iconImage = icon.createImage();
}
public IActionDelegate getAction() {
return action;
}
public ImageDescriptor getIconDescriptor() {
return icon;
}
public Image getIcon()
{
return iconImage;
}
public String getId() {
return id;
}
public String getLabel() {
return label;
}
protected void finalize() throws Throwable {
iconImage.dispose();
}
}
More information about the jboss-cvs-commits
mailing list