void () { TreePath[] paths = getSelectionModel().getSelectionPaths(); if (paths == null) { return; } for (TreePath path : paths) { PostfixTemplateCheckedTreeNode lastPathComponent = ObjectUtils.tryCast(path.getLastPathComponent(), PostfixTemplateCheckedTreeNode.class); if (lastPathComponent == null) continue; PostfixTemplate template = lastPathComponent.getTemplate(); if (template instanceof PostfixChangedBuiltinTemplate) { lastPathComponent.setTemplate(((PostfixChangedBuiltinTemplate)template).getBuiltinTemplate()); myModel.nodeStructureChanged(lastPathComponent); } else if (isEditable(template) && !template.isBuiltin()) { TreeUtil.removeLastPathComponent(this, path); } } }