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

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

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

      `find, find, find`

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

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

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

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

- - ### Method Detail

    - #### sortChildrenBy

          void sortChildrenBy(groovy.lang.Closure<java.lang.Comparable<java.lang.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