Class AbstractScheduleModel

java.lang.Object
com.codename1.scheduling.AbstractScheduleModel
All Implemented Interfaces:
ScheduleModel
Direct Known Subclasses:
CalendarScheduleModel, DefaultScheduleModel

public abstract class AbstractScheduleModel extends Object implements ScheduleModel

The listener list and the refusals every read-only model shares.

A subclass has to supply getResources and getItems. Every edit is refused until the matching method is overridden.

  • Constructor Details

    • AbstractScheduleModel

      public AbstractScheduleModel()
  • Method Details

    • setVisibleRange

      public void setVisibleRange(long from, long to)
      Description copied from interface: ScheduleModel
      Told by a view whenever the range it shows changes, with a margin around it. A model that keeps everything in memory ignores it.
      Specified by:
      setVisibleRange in interface ScheduleModel
    • updateItem

      public boolean updateItem(ScheduleItem item, long start, long end, String resourceId)
      Description copied from interface: ScheduleModel

      Moves or resizes an item, and gives it to another resource when resourceId differs from the one it has.

      Returns

      false when the model refuses the change; the view puts the item back

      Specified by:
      updateItem in interface ScheduleModel
    • createItem

      public ScheduleItem createItem(long start, long end, String resourceId)
      Description copied from interface: ScheduleModel

      Creates an item for a range the user dragged out on empty space.

      Returns

      the new item, or null when the model does not create items this way

      Specified by:
      createItem in interface ScheduleModel
    • removeItem

      public boolean removeItem(ScheduleItem item)
      Description copied from interface: ScheduleModel

      Removes an item.

      Returns

      false when the model refuses

      Specified by:
      removeItem in interface ScheduleModel
    • addChangeListener

      public void addChangeListener(ScheduleChangeListener l)
      Specified by:
      addChangeListener in interface ScheduleModel
    • removeChangeListener

      public void removeChangeListener(ScheduleChangeListener l)
      Specified by:
      removeChangeListener in interface ScheduleModel
    • fireChanged

      protected void fireChanged()
      Tells every listener the model changed.