/**
*
*/
package ctagsinterface.projects;
import java.awt.event.ActionEvent;
import projectviewer.action.Action;
import projectviewer.vpt.VPTNode;
import projectviewer.vpt.VPTProject;
import ctagsinterface.index.TagIndex.Origin;
import ctagsinterface.index.TagIndex.OriginType;
import ctagsinterface.main.CtagsInterfacePlugin;
import ctagsinterface.main.Logger;
public class ProjectRemoveAction extends Action
{
String name;
public ProjectRemoveAction()
{
super("remove-project-tags");
}
@Override
public String getText()
{
return "Remove project from tag index";
}
public void actionPerformed(ActionEvent arg0)
{
{
Logger logger = CtagsInterfacePlugin.getLogger(viewer.getView(),
"Removing project " + name);
CtagsInterfacePlugin.deleteOrigin(logger, OriginType.PROJECT, name);
}
}
@Override
public void prepareForNode(VPTNode node) {
if (node == null) {
cmItem.setVisible(false);
return;
}
while (node != null && (! node.isProject()))
node = (VPTNode) node.getParent();
if (node == null)
return;
VPTProject p = (VPTProject) node;
name = p.getName();
Origin origin = CtagsInterfacePlugin.getIndex().getOrigin(OriginType.PROJECT, name, false);
cmItem.setVisible(false);
if (CtagsInterfacePlugin.getIndex().hasOrigin(origin))
cmItem.setVisible(true);
}
}