protected void exportSelectedRowsAndClose() { int[] selectedRows = timeTable.getSelectedRows(); Vector selectedNodes = new Vector(); for (int i = 0; i < selectedRows.length; i++) { int row = selectedRows[i]; selectedNodes.add(getMindMapNode(row)); } // create new map: MindMap newMap = getMindMapController().newMap(); MindMapController newMindMapController = (MindMapController) newMap.getModeController(); // Tools.BooleanHolder booleanHolder = new Tools.BooleanHolder(); // booleanHolder.setValue(false); for (Iterator iter = selectedNodes.iterator(); iter.hasNext(); ) { MindMapNode node = (MindMapNode) iter.next(); // MindMapNode newNode = newMindMapController.addNewNode( // newMap.getRootNode(), 0, booleanHolder); // // copy style: // freemind.controller.actions.generated.instance.Pattern pattern = // StylePatternFactory.createPatternFromNode(node); // newMindMapController.applyPattern(newNode, pattern); // // copy text: // newMindMapController.setNodeText(newNode, node.getText()); MindMapNode copy = node.shallowCopy(); if (copy != null) { newMindMapController.insertNodeInto(copy, newMap.getRootNode()); } } disposeDialog(); }