Interface Proxy.Controller
- All Superinterfaces:
Controller
,ControllerRO
,HeadlessMapCreator
,Proxy.ControllerRO
- Enclosing interface:
Proxy
-
Method Summary
Modifier and TypeMethodDescriptionvoid
exports map to destination file, example:find
(boolean withAncestors, boolean withDescendants, NodeCondition condition) Starting from this node, recursively searches for nodes for whichcondition.check(node)
returns true and adds their ancestor or descendant nodes if required.find
(NodeCondition condition) Starting from the root node, recursively searches for nodes (in breadth-first sequence) for whichclosure.call(node)
returns true.findAll()
Returns all nodes of the map in breadth-first order, that is, for the following map,Returns all nodes of the map in depth-first order, that is, for the following map,returns a list of export type descriptions that can be used to specify a specific export type inControllerRO.export(MindMap, File, String, boolean)
.returns Freeplane version.if multiple nodes are selected returns one (arbitrarily chosen) selected node or the selected node for a single node selection.A read-only list of selected nodes.getSortedSelection
(boolean differentSubtrees) returnsList<? extends Node>
sorted by the node's vertical position.returns the directory where user settings, logfiles, templates etc.float
getZoom()
returns the current zoom factor.boolean
returns false if the system 'nonInteractive' is set.ReturnsLoader
for accessing or loading mind map from file.ReturnsLoader
for accessing or loading mind map from file.ReturnsLoader
for accessing or loading mind map from URL.Methods inherited from interface org.freeplane.api.Controller
centerOnNode, deactivateUndo, edit, editInPopup, getMainThreadExecutorService, getOpenMaps, getOpenMindMaps, load, load, load, newMap, newMap, newMapFromTemplate, newMindMap, redo, select, select, selectBranch, selectMultipleNodes, setStatusInfo, setStatusInfo, setStatusInfo, setStatusInfo, setZoom, undo
Methods inherited from interface org.freeplane.api.ControllerRO
getViewRoot
Methods inherited from interface org.freeplane.api.HeadlessMapCreator
getAttributeValueSerializer, mapLoader, script, script
Methods inherited from interface org.freeplane.plugin.script.proxy.Proxy.ControllerRO
find, find, find
-
Method Details
-
getSelected
Node getSelected()Description copied from interface:ControllerRO
if multiple nodes are selected returns one (arbitrarily chosen) selected node or the selected node for a single node selection.- Specified by:
getSelected
in interfaceControllerRO
-
getSelecteds
Description copied from interface:ControllerRO
A read-only list of selected nodes. That is you cannot select a node by adding it to the returned list.- Specified by:
getSelecteds
in interfaceControllerRO
-
getSortedSelection
Description copied from interface:ControllerRO
returnsList<? extends Node>
sorted by the node's vertical position.- Specified by:
getSortedSelection
in interfaceControllerRO
- Parameters:
differentSubtrees
- if true children/grandchildren/grandgrandchildren/... nodes of selected parent nodes are excluded from the result.
-
getFreeplaneVersion
FreeplaneVersion getFreeplaneVersion()Description copied from interface:ControllerRO
returns Freeplane version. Use it like this:def required = FreeplaneVersion.getVersion("1.1.2"); if (c.freeplaneVersion < required) UITools.errorMessage("Freeplane version " + c.freeplaneVersion + " not supported - update to at least " + required);
- Specified by:
getFreeplaneVersion
in interfaceControllerRO
-
getUserDirectory
File getUserDirectory()Description copied from interface:ControllerRO
returns the directory where user settings, logfiles, templates etc. are stored.- Specified by:
getUserDirectory
in interfaceControllerRO
-
find
Description copied from interface:ControllerRO
Starting from the root node, recursively searches for nodes (in breadth-first sequence) for whichclosure.call(node)
returns true.A find method that uses a lambda ("block") for simple custom searches. As this closure will be called with a node as an argument (to be referenced by
it
) the search can evaluate every node property, like attributes, icons, node text or notes.Examples:
def nodesWithNotes = c.find{ it.noteText != null } def matchingNodes = c.find{ it.text.matches(".*\\d.*") } def texts = matchingNodes.collect{ it.text } print "node texts containing numbers:\n " + texts.join("\n ")
SeeNodeRO.find(NodeCondition)
for searches on subtrees.- Specified by:
find
in interfaceControllerRO
- Parameters:
condition
- a lambda that returns a boolean value. The closure will receive a NodeModel as an argument which can be tested for a match.- Returns:
- all nodes for which
closure.call(NodeModel)
returns true.
-
find
Description copied from interface:ControllerRO
Starting from this node, recursively searches for nodes for whichcondition.check(node)
returns true and adds their ancestor or descendant nodes if required.- Specified by:
find
in interfaceControllerRO
-
findAll
Description copied from interface:ControllerRO
Returns all nodes of the map in breadth-first order, that is, for the following map,1 1.1 1.1.1 1.1.2 1.2 2
[1, 1.1, 1.1.1, 1.1.2, 1.2, 2] is returned. SeeNodeRO.find(NodeCondition)
for searches on subtrees.- Specified by:
findAll
in interfaceControllerRO
- See Also:
-
findAllDepthFirst
Description copied from interface:ControllerRO
Returns all nodes of the map in depth-first order, that is, for the following map,1 1.1 1.1.1 1.1.2 1.2 2
[1.1.1, 1.1.2, 1.1, 1.2, 1, 2] is returned. SeeNodeRO.findAllDepthFirst()
for subtrees.- Specified by:
findAllDepthFirst
in interfaceControllerRO
-
getZoom
float getZoom()Description copied from interface:ControllerRO
returns the current zoom factor. A value of 1 means 100%.- Specified by:
getZoom
in interfaceControllerRO
-
isInteractive
boolean isInteractive()Description copied from interface:ControllerRO
returns false if the system 'nonInteractive' is set. This can be used in actions to not open dialogs etc.- Specified by:
isInteractive
in interfaceControllerRO
-
getExportTypeDescriptions
Description copied from interface:ControllerRO
returns a list of export type descriptions that can be used to specify a specific export type inControllerRO.export(MindMap, File, String, boolean)
. These descriptions are internationalized.- Specified by:
getExportTypeDescriptions
in interfaceControllerRO
-
export
void export(MindMap map, File destinationFile, String exportTypeDescription, boolean overwriteExisting) Description copied from interface:ControllerRO
exports map to destination file, example:println c.exportTypeDescriptions.join('\n') boolean overwriteExistingFile = true c.export(node.map, new File('/tmp/t.png'), 'Portable Network Graphic (PNG) (.png)', overwriteExistingFile) c.export(node.map, new File('/tmp/t.png'), 'PNG', overwriteExistingFile) c.export(node.map, new File('/tmp/t.png'), '', overwriteExistingFile)
- Specified by:
export
in interfaceControllerRO
- Parameters:
exportTypeDescription
- UseControllerRO.getExportTypeDescriptions()
to look up available exportTypes. Note that the file format does not suffice to specify a specific export since there may be more than one, as for HTML. You can use a substring or an empty string instead of full description, if exported destination file extension matches filter desription.
-
mapLoader
Description copied from interface:Controller
ReturnsLoader
for accessing or loading mind map from file.- Specified by:
mapLoader
in interfaceController
- Specified by:
mapLoader
in interfaceHeadlessMapCreator
-
mapLoader
Description copied from interface:Controller
ReturnsLoader
for accessing or loading mind map from URL.- Specified by:
mapLoader
in interfaceController
- Specified by:
mapLoader
in interfaceHeadlessMapCreator
-
mapLoader
Description copied from interface:Controller
ReturnsLoader
for accessing or loading mind map from file.- Specified by:
mapLoader
in interfaceController
- Specified by:
mapLoader
in interfaceHeadlessMapCreator
-