Widgets requirements - OrienteerBAP/Orienteer GitHub Wiki

User should be able:

  1. Add and delete widgets from a page
  2. Resize widget if it allows that
  3. Reorder widgets on a page
  4. Save state of a page for personal use, for one of his role (if he has rights) or system wide
  5. Save state of a page for this particular instance or for a class
  6. Duplicate widgets on a page
  7. Edit configuration of existing widgets
  8. Select icon/picture for widgets

Widgets:

  1. Should be defined according to a domain. On a page you can work within some particular domain: only widgets from that domain should be available.
  2. Should be pluggable by external wicket modules
  3. Should support settings of several layers: personal, role and system wide + settings just for this instance or for a class
  4. Widgets configuration should be compatible with gridster definitions: max/min for width/height, resizable
  5. Some widgets might allow multiple presence on a page. In this case every widget will have separate configuration. "Multiplicity" should be defined on a widget.
  6. Should be able to "discover" other widgets on a page.

Nice to have:

  1. Ability to specify widget just my annotations
  2. Ability to specify "outer" component for a widget: by default widget will be places in some default window with some buttons, but it will be cool to have ability to override that.