Interface PresentationModel

All Superinterfaces:
it.tidalwave.util.As, Mutable

public interface PresentationModel extends it.tidalwave.util.As, Mutable
TODO: As the NetBeans Node, it should allow children, have event listeners for children added/removed/changed. This class so becomes the true M in MVC.
Since:
2.0-ALPHA-1
Author:
Fabrizio Giudici
Stereotype:
Role
  • Field Details

    • _PresentationModel_

      static final Class<PresentationModel> _PresentationModel_
      Shortcut for As.
    • _SimpleCompositeOfPresentationModel_

      static final it.tidalwave.util.As.Type<it.tidalwave.role.SimpleComposite<PresentationModel>> _SimpleCompositeOfPresentationModel_
      Shortcut for As.
    • PROPERTY_CHILDREN

      static final String PROPERTY_CHILDREN
      See Also:
    • CALLBACK_DISPOSE

      static final String CALLBACK_DISPOSE
      This is an undocumented feature. If you add a NamedCallback with this name as a role in this object, it will be called back when dispose() is called.
      See Also:
    • P_VERBOSE_TOSTRING

      static final String P_VERBOSE_TOSTRING
    • PARAM_OWNER

      static final String PARAM_OWNER
      See Also:
    • PARAM_ROLE

      static final String PARAM_ROLE
      See Also:
  • Method Details

    • dispose

      void dispose()
      Disposes this object.
    • of

      @Nonnull static PresentationModel of(@Nonnull Object owner)
      Returns a new instance given an owner and no roles..
      Parameters:
      owner - the owner
      Returns:
      a new instance given an owner and no roles
      Since:
      3.2-ALPHA-3
    • of

      @Nonnull static PresentationModel of(@Nonnull Object owner, @Nonnull Object role)
      Returns a new instance given an owner and a single role..
      Parameters:
      owner - the owner
      role - the role (or a RoleFactory)
      Returns:
      a new instance given an owner and a single role
      Since:
      3.2-ALPHA-3
    • of

      @Nonnull static PresentationModel of(@Nonnull Object owner, @Nonnull Collection<Object> roles)
      Returns a new instance given an owner and multiple roles..
      Parameters:
      owner - the owner
      roles - roles or RoleFactory instances
      Returns:
      a new instance given an owner and multiple roles
      Since:
      3.2-ALPHA-1, 3.2-ALPHA-3 (refactored)
    • empty

      @Nonnull static PresentationModel empty()
      Returns an empty instance (no roles, with the exception of a dummy Displayable)..
      Returns:
      an empty instance (no roles, with the exception of a dummy Displayable)
      Since:
      3.2-ALPHA-3
    • ofMaybePresentable

      @API(status=EXPERIMENTAL) @Nonnull static PresentationModel ofMaybePresentable(@Nonnull it.tidalwave.util.As owner, @Nonnull Collection<Object> roles)
      Returns a new instance from an owner which might have the Presentable role.. If it is present, it is called to create the PresentationModel; otherwise a default one is created. Additional roles are added.
      Parameters:
      owner - the owner
      roles - roles or RoleFactory instances
      Returns:
      a new instance from an owner which might have the Presentable role
      Since:
      3.2-ALPHA-8
    • ofMaybePresentable

      @API(status=EXPERIMENTAL) @Nonnull static PresentationModel ofMaybePresentable(@Nonnull it.tidalwave.util.As owner)
      Returns a new instance from an owner which might have the Presentable role.. If it is present, it is called to create the PresentationModel; otherwise a default one is created.
      Parameters:
      owner - the owner
      Returns:
      a new instance from an owner which might have the Presentable role
      Since:
      3.2-ALPHA-8
    • setVerboseToString

      static void setVerboseToString(boolean verbose)
      Sets the verbose mode for Object.toString() implementations of PresentationModel. Looking at the implementation of javafx.scene.control.cell.DefaultTreeCell<T>, the code always calls toString() during an update, even though the text value is later overridden; hence, this method should be as fast as possible. By default, the shortened class name and system id of the owner object is returned; set verbosity to have the owner object toString() called instead. It is also possible to set system the property it.tidalwave.ui.core.role.PresentationModel.verboseToString.
      Parameters:
      verbose - the verbosity
      Since:
      2.0-ALPHA-4
      See Also:
    • isVerboseToString

      static boolean isVerboseToString()
      Returns the verbose mode for Object.toString() implementations of PresentationModel..
      Returns:
      the verbose mode for Object.toString() implementations of PresentationModel
      Since:
      2.0-ALPHA-4
      See Also: