Package org.freeplane.plugin.script.proxy

# Interface Proxy.Node

All Superinterfaces:
  `Node`, `NodeRO`, `Proxy.NodeRO`

Enclosing interface:
  `Proxy`

public static interface Proxy.Node extends Proxy.NodeRO, Node

## Method Summary

Modifier and Type
Method
Description
`void`
`sortChildrenBy(groovy.lang.Closure<Comparable<Object>> closure)`
A sort method that uses the result of the Groovy closure ("block") for comparison.

### Methods inherited from interface org.freeplane.api.Node

`addConnectorTo, addConnectorTo, appendAsCloneWithoutSubtree, appendAsCloneWithSubtree, appendBranch, appendChild, appendTextOutlineAsBranch, createChild, createChild, createChild, decrypt, delete, encrypt, getGeometry, getTags, hasEncryption, isEncrypted, moveTo, moveTo, pasteAsClone, putAt, removeBookmark, removeConnector, removeEncryption, setAlias, setAttributes, setBaseDistanceToChildren, setBaseDistanceToChildren, setBaseDistanceToChildren, setBinary, setBookmark, setBookmark, setChildNodesLayout, setCreatedAt, setDateTime, setDetails, setDetailsContentType, setDetailsText, setFolded, setFormat, setFree, setHideDetails, setHorizontalShift, setHorizontalShift, setHorizontalShift, setIsGlobal, setLastModifiedAt, setLeft, setMinimalDistanceBetweenChildren, setMinimalDistanceBetweenChildren, setMinimalDistanceBetweenChildren, setMinimized, setNote, setNoteContentType, setNoteText, setObject, setSideAtRoot, setText, setVerticalShift, setVerticalShift, setVerticalShift, sortChildrenBy`

### Methods inherited from interface org.freeplane.api.NodeRO

`allAt, at, find, find, findAll, findAllDepthFirst, getAlias, getAt, getAttributes, getBaseDistanceToChildrenAsLength, getBinary, getBookmark, getBranchAsTextOutline, getChildNodesLayout, getChildPosition, getChildren, getCloud, getConditionalStyles, getConnectorsIn, getConnectorsOut, getCountNodesSharingContent, getCountNodesSharingContentAndSubtree, getCreatedAt, getDependents, getDetails, getDetailsContentType, getDetailsText, getDisplayedText, getExternalObject, getFormat, getHideDetails, getHorizontalShift, getHorizontalShiftAsLength, getHorizontalShiftInScreenPixels, getHtmlText, getIcons, getId, getIsGlobal, getLastModifiedAt, getLayoutOrientation, getLink, getMap, getMindMap, getMinimalDistanceBetweenChildren, getMinimalDistanceBetweenChildrenAsLength, getMinimalDistanceBetweenChildrenInScreenPixels, getNext, getNodeID, getNodeLevel, getNodesSharingContent, getNodesSharingContentAndSubtree, getNote, getNoteContentType, getNoteText, getObject, getParent, getParentNode, getPathToRoot, getPlainText, getPlainTextContent, getPrecedents, getPrevious, getReminder, getShortText, getSideAtRoot, getStyle, getText, getTo, getTransformedText, getValue, getVerticalShift, getVerticalShiftAsLength, getVerticalShiftInScreenPixels, hasStyle, isDescendantOf, isFolded, isFree, isLeaf, isLeft, isLeftOnViewsWithRoot, isMinimized, isRoot, isTopOrLeft, isTopOrLeftOnViewsWithRoot, isVisible, isVisibleOnViewsWithRoot`

### Methods inherited from interface org.freeplane.plugin.script.proxy.Proxy.NodeRO

`find, find, find`

## Method Details

### sortChildrenBy

void sortChildrenBy(groovy.lang.Closure<Comparable<Object>> closure)
A sort method that uses the result of the Groovy closure ("block") for comparison. 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:

        // sort by details text
        node.sortChildrenBy{ it.details.to.plain }
        // sort numerically
        node.sortChildrenBy{ it.to.num0 }

Parameters:
  `closure` - a Groovy closure that returns a Comparable value like a String. The closure will receive a NodeModel as an argument.
Since:
  1.4.1