Package org.freeplane.plugin.script
Class FreeplaneScriptBaseClass
java.lang.Object
groovy.lang.GroovyObjectSupport
groovy.lang.Script
org.freeplane.plugin.script.FreeplaneScriptBaseClass
- All Implemented Interfaces:
groovy.lang.GroovyObject
public abstract class FreeplaneScriptBaseClass
extends groovy.lang.Script
All methods of this class are available as "global" methods in every script.
Only documented methods are meant to be used in scripts.
The following global objects are provided as shortcuts by the binding of this class:
- ui: see
UITools
- logger: see
LogUtils
- htmlUtils: see
HtmlUtils
- textUtils: see
TextUtils
- menuUtils: see
MenuUtils
- config: see
FreeplaneScriptBaseClass.ConfigProperties
FreeplaneVersion
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
FreeplaneScriptBaseClass.ConfigProperties
Accessor for Freeplane's configuration: In scripts available as "global variable"config
. -
Constructor Summary
Constructors Constructor Description FreeplaneScriptBaseClass()
FreeplaneScriptBaseClass(groovy.lang.Binding binding)
-
Method Summary
Modifier and Type Method Description protected groovy.lang.Binding
createBinding(NodeRO nodeProxy, ControllerRO controllerProxy)
java.lang.Object
format(java.lang.Object object)
Applies default date-time format for dates or default number format for numbers.java.lang.Object
format(java.lang.Object object, java.lang.String formatString)
uses formatString to return a FormattedObject.java.lang.Object
formatDate(java.util.Date date)
Applies default date format (instead of standard date-time) format on the given date.java.lang.Object
getProperty(java.lang.String property)
java.lang.Object
ifNull(java.lang.Object value, java.lang.Object valueIfNull)
returns valueIfNull if value is null and value otherwise.java.lang.Object
invokeMethod(java.lang.String methodName, java.lang.Object args)
void
loadUri(java.lang.String link)
opens a linkvoid
loadUri(java.net.URI uri)
opens aURI
NodeRO
N(java.lang.String id)
Shortcut for node.map.node(id) - necessary for ids to other maps.java.lang.Object
parse(java.lang.String text)
parses text to the proper data type, if possible, setting format to the standard.java.lang.Long
round(java.lang.Double d)
rounds a number to integral type.java.lang.Double
round(java.lang.Double d, int precision)
round to the given number of decimal places:round(0.1234, 2) → 0.12
void
setBinding(groovy.lang.Binding binding)
java.lang.String
T(java.lang.String id)
Shortcut for node.map.node(id).text.java.lang.String
toString()
java.lang.String
toString(java.lang.Object o)
formats according to the internal standard, that is the conversion will be reversible for types that are handled special by the scripting api namely Dates and Numbers.java.lang.Object
V(java.lang.String id)
Shortcut for node.map.node(id).value.Methods inherited from class groovy.lang.Script
evaluate, evaluate, getBinding, print, printf, printf, println, println, run, run, setProperty
Methods inherited from class groovy.lang.GroovyObjectSupport
getMetaClass, setMetaClass
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Constructor Details
-
FreeplaneScriptBaseClass
public FreeplaneScriptBaseClass() -
FreeplaneScriptBaseClass
public FreeplaneScriptBaseClass(groovy.lang.Binding binding)
-
-
Method Details
-
setBinding
public void setBinding(groovy.lang.Binding binding)- Overrides:
setBinding
in classgroovy.lang.Script
-
createBinding
-
getProperty
public java.lang.Object getProperty(java.lang.String property)- Specified by:
getProperty
in interfacegroovy.lang.GroovyObject
- Overrides:
getProperty
in classgroovy.lang.Script
-
invokeMethod
public java.lang.Object invokeMethod(java.lang.String methodName, java.lang.Object args)- Specified by:
invokeMethod
in interfacegroovy.lang.GroovyObject
- Overrides:
invokeMethod
in classgroovy.lang.Script
-
N
Shortcut for node.map.node(id) - necessary for ids to other maps. -
T
public java.lang.String T(java.lang.String id)Shortcut for node.map.node(id).text. -
V
public java.lang.Object V(java.lang.String id)Shortcut for node.map.node(id).value. -
ifNull
public java.lang.Object ifNull(java.lang.Object value, java.lang.Object valueIfNull)returns valueIfNull if value is null and value otherwise. -
round
public java.lang.Long round(java.lang.Double d)rounds a number to integral type. -
round
public java.lang.Double round(java.lang.Double d, int precision)round to the given number of decimal places:round(0.1234, 2) → 0.12
-
parse
public java.lang.Object parse(java.lang.String text)parses text to the proper data type, if possible, setting format to the standard. Parsing is configured via config file scanner.xmlassert parse('2012-11-30') instanceof Date assert parse('1.22') instanceof Number // if parsing fails the original string is returned assert parse('2012XX11-30') == '2012XX11-30' def d = parse('2012-10-30') c.statusInfo = "${d} is ${new Date() - d} days ago"
-
format
public java.lang.Object format(java.lang.Object object, java.lang.String formatString)uses formatString to return a FormattedObject.Note: If you want to format the node core better use the format node attribute instead:
node.object = new Date() node.format = 'dd/MM/yy'
- Returns:
IFormattedObject
if object is formattable and the unchanged object otherwise.
-
format
public java.lang.Object format(java.lang.Object object)Applies default date-time format for dates or default number format for numbers. All other objects are left unchanged.- Returns:
IFormattedObject
if object is formattable and the unchanged object otherwise.
-
formatDate
public java.lang.Object formatDate(java.util.Date date)Applies default date format (instead of standard date-time) format on the given date.- Returns:
IFormattedObject
if object is formattable and the unchanged object otherwise.
-
toString
public java.lang.String toString(java.lang.Object o)formats according to the internal standard, that is the conversion will be reversible for types that are handled special by the scripting api namely Dates and Numbers.- See Also:
Convertible.toString(Object)
-
loadUri
public void loadUri(java.net.URI uri)opens aURI
-
loadUri
public void loadUri(java.lang.String link)opens a link -
toString
public java.lang.String toString()- Overrides:
toString
in classjava.lang.Object
-