jdplus.tramoseats.desktop.plugin.tramo.ui.actions.CloneSpec Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of jdplus-tramoseats-desktop-plugin Show documentation
Show all versions of jdplus-tramoseats-desktop-plugin Show documentation
${project.parent.artifactId} - ${project.artifactId}
The newest version!
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package jdplus.tramoseats.desktop.plugin.tramo.ui.actions;
import jdplus.tramoseats.desktop.plugin.tramo.documents.TramoSpecManager;
import jdplus.toolkit.desktop.plugin.workspace.WorkspaceFactory;
import jdplus.toolkit.desktop.plugin.workspace.WorkspaceItem;
import jdplus.toolkit.desktop.plugin.workspace.WorkspaceItemManager;
import jdplus.toolkit.desktop.plugin.workspace.nodes.WsNode;
import jdplus.tramoseats.base.api.tramo.TramoSpec;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import org.openide.awt.ActionID;
import org.openide.awt.ActionReference;
import org.openide.awt.ActionReferences;
import org.openide.awt.ActionRegistration;
import org.openide.util.NbBundle.Messages;
@ActionID(category = "Tools",
id = "demetra.desktop.tramo.ui.actions.CloneSpec")
@ActionRegistration(displayName = "#CTL_CloneSpec")
@ActionReferences({
@ActionReference(path = TramoSpecManager.ITEMPATH, position = 1700),
})
@Messages("CTL_CloneSpec=Clone")
public final class CloneSpec implements ActionListener {
private final WsNode context;
public CloneSpec(WsNode context) {
this.context = context;
}
@Override
public void actionPerformed(ActionEvent e) {
WorkspaceItem xdoc =
context.getWorkspace().searchDocument(context.lookup(), TramoSpec.class);
if (xdoc == null) {
return;
}
WorkspaceItemManager mgr=WorkspaceFactory.getInstance().getManager(xdoc.getFamily());
WorkspaceItem ndoc = WorkspaceItem.newItem(xdoc.getFamily(), mgr.getNextItemName(null), xdoc.getElement());
context.getWorkspace().add(ndoc);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy