Package org.freeplane.api

# Interface Reminder

All Superinterfaces:
  `ReminderRO`

All Known Subinterfaces:
  `Proxy.Reminder`

public interface Reminder extends ReminderRO
Reminder: `node.reminder` - read-write. For creating and modifying reminders:

      def reminder = node.reminder
      if (!reminder)
          c.statusInfo = "node has no reminder"
      else
          c.statusInfo = "node has a reminder: $reminder"

      def inAMinute = new Date(System.currentTimeMillis() + 60*1000)
      node.reminder.createOrReplace(inAMinute, "WEEK", 2)
      if (node.map.file) {
          node.reminder.setScript("loadUri(new URI('${node.map.file.toURI()}#${node.id}'))")
      }
      // a click on the node opens time management dialog
      node.link.text = 'menuitem:_$ReminderListAction$0'

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `createOrReplace(Date remindAt, String periodUnit, Integer period)`
  Creates a periodic reminder.
  `void`
  `remove()`
  removes a reminder from a node.
  `void`
  `setScript(String scriptSource)`
  optional: a Groovy script to execute when the reminder fires.

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

  `getPeriod, getPeriodUnit, getRemindAt, getScript`

- ## Method Details

  - ### createOrReplace

    void createOrReplace(Date remindAt, String periodUnit, Integer period)
    Creates a periodic reminder. To make the reminder fire every second week:

           node.reminder.createOrReplace(new Date() + 1, "WEEK", 2)

    Parameters:
      `remindAt` - The timestamp when the reminder fires first.
      `periodUnit` - one of ["MINUTE", "HOUR", "DAY", "WEEK", "MONTH", "YEAR"].
      `period` - counts the periodUnits.

  - ### setScript

    void setScript(String scriptSource)
    optional: a Groovy script to execute when the reminder fires.
    Parameters:
      `scriptSource` - the script itself, not a path to a file.
    Throws:
      `NullPointerException` - if there is no reminder yet.

  - ### remove

    void remove()
    removes a reminder from a node. It's not an error if there is no reminder to remove.