class Settle extends BasicNodesManipulator {

    private Node[] nodes;
    private Node clickedNode;

    @Override
    public void setup(Node[] nodes, Node clickedNode) {
        this.nodes = nodes;
        this.clickedNode = clickedNode;
    }

    @Override
    public void execute() {
        GraphElementsController gec = Lookup.getDefault().lookup(GraphElementsController.class);
        gec.setNodesFixed(nodes, true);
        Lookup.getDefault().lookup(DataTablesController.class).refreshCurrentTable();
    }

    @Override
    public String getName() {<FILL_FUNCTION_BODY>}

    @Override
    public String getDescription() {
        return "";
    }

    @Override
    public boolean canExecute() {
        GraphElementsController gec = Lookup.getDefault().lookup(GraphElementsController.class);
        return !gec.isNodeFixed(clickedNode);
    }

    @Override
    public ManipulatorUI getUI() {
        return null;
    }

    @Override
    public int getType() {
        return 400;
    }

    @Override
    public int getPosition() {
        return 0;
    }

    @Override
    public Icon getIcon() {
        return ImageUtilities.loadImageIcon("DataLaboratoryPlugin/settle.png", false);
    }
}

        if (nodes.length > 1) {
            return NbBundle.getMessage(Settle.class, "Settle.name.multiple");
        } else {
            return NbBundle.getMessage(Settle.class, "Settle.name.single");
        }
    
<methods>public non-sealed void <init>() ,public java.lang.Integer getMnemonicKey() ,public org.gephi.datalab.spi.ContextMenuItemManipulator[] getSubItems() ,public boolean isAvailable() <variables>