Implemented by:
- EOAssociationController,
- EODocumentController,
- EORangeValueController
- Package:
- com.apple.client.eoapplication
EOEditable is an interface that defines an API for managing the editability of a branch of the controller hierarchy. EOEditable controllers usually base the editability of their user interfaces on the editability of their supercontrollers. Thus, by default all the EOEditable subcontrollers of an editable controller are also editable. To enable or disable a portion of an application's user interface, you need only message the highest level controller associated with that user interface.
EOEditable defines the following int
constants
to identify the editability of an EOEditable controller:
public abstract int editability()
Returns the editability of
the receiver, one of NeverEditable, AlwaysEditable, or IfSupercontrollerEditable. The
default behavior should be to return IfSupercontrollerEditable
.
public abstract boolean isEditable()
Returns true
if
the receiver is editable, and false
otherwise. The
default behavior should be to return true
if
the receiver is currently editable. The receiver is editable if:
true
.public abstract void setEditability(int editability)
Sets the receiver's editability to editability, one of NeverEditable, AlwaysEditable, or IfSupercontrollerEditable.
public abstract void supercontrollerEditabilityDidChange()
Invoked to notify the receiver that the editability of its supercontroller changed, giving the receiver the opportunity to update its user interface to match the editability of the supercontroller.
public abstract void takeResposibilityForEditabilityOfAssociation(com.apple.client.eointerface.EOAssociation association)
Invoked when one of the receiver's subcontrollers is disposed as a transient controller. This method instructs the receiver to assume responsibility for managing the editability of the subcontroller's EOAssociation, association.
DRAFT