|
WebObjects 5.2.3 | ||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object com.webobjects.eoapplication.EOController com.webobjects.eoapplication.EOComponentController com.webobjects.eoapplication.EOArchiveController
As a subclass of EOComponentController, EOArchiveController manages a user interface component (which be default is just an empty view to hold subcontroller components). However, whereas most component controllers dynamically generate their components, archive controllers have the ability to load their components from an archive (an interface file created in Interface Builder). An archive controller has an archive name, which specifies the archive from which to load the controller's component. If, however, a controller doesn't have an archive name, the controller simply uses its default interface.
An additional feature of EOArchiveController, which is very useful for interface files, is the support of so-called controller display groups. Controller display groups contain the controller itsself as displayed object, so you can bind associations to keys implemented on the controller (typically your own subclass), for example to control the enabled aspect of associations.
Nested Class Summary |
Nested classes inherited from class com.webobjects.eoapplication.EOComponentController |
EOComponentController.ActionCollector, EOComponentController.Activation, EOComponentController.EndEditing, EOComponentController.Modal, EOComponentController.ResetUserInterface |
Nested classes inherited from class com.webobjects.eoapplication.EOController |
EOController.Enumeration |
Nested classes inherited from class com.webobjects.foundation.NSKeyValueCoding |
NSKeyValueCoding.DefaultImplementation, NSKeyValueCoding.ErrorHandling, NSKeyValueCoding.Null, NSKeyValueCoding.UnknownKeyException, NSKeyValueCoding.Utility, NSKeyValueCoding.ValueAccessor |
Nested classes inherited from class com.webobjects.foundation.NSKeyValueCodingAdditions |
NSKeyValueCodingAdditions.DefaultImplementation, NSKeyValueCodingAdditions.Utility |
Field Summary |
Fields inherited from class com.webobjects.eoapplication.EOComponentController |
Bottom, BottomLeft, BottomRight, Center, Left, Right, Top, TopLeft, TopRight |
Fields inherited from class com.webobjects.eoapplication.EOController |
ControllerAndSubcontrollersEnumeration, ControllerAndSupercontrollersEnumeration, SubcontrollersEnumeration, SupercontrollersEnumeration |
Fields inherited from interface com.webobjects.foundation.NSKeyValueCoding |
NullValue |
Fields inherited from interface com.webobjects.foundation.NSKeyValueCodingAdditions |
KeyPathSeparator |
Constructor Summary | |
EOArchiveController()
Creates a new archive controller. |
|
EOArchiveController(EOXMLUnarchiver unarchiver)
Creates a new archive controller from an EOXMLUnarchiver. |
Method Summary | |
String |
archiveName()
Returns the name of the interface file archive to be loaded by the controller instead of generating its component dynamically. |
protected void |
controllerDidLoadArchive(NSDictionary namedObjects)
Invoked from loadArchive to notify the receiver that its
interface file has been loaded completely. |
EODisplayGroup |
controllerDisplayGroup()
Conformance to EOObjectDisplay. |
protected void |
controllerWillLoadArchive()
Invoked from loadArchive to notify the receiver that its
interface file is about to be loaded. |
boolean |
endEditing()
Ensures that all editors of the receiver's display groups end editing (flush current user edits to the enterprise object graph if necessary). |
boolean |
hasControllerDisplayGroup()
Returns whether the controller already has a controller display group. |
protected boolean |
loadArchive()
If not already loaded, loads the interface file archive specified by the archiveName of the receiver. |
void |
objectWillChange(Object object)
Change notification for the controller itsself if it's edited through an association of the controller display group. |
protected void |
prepareComponent()
Overridden from the superclass to ensure that - if an archive name is specified for the receiver - the interface file archive is loaded before the component is prepared. |
void |
setArchiveName(String string)
Sets the name of the interface file archive to be loaded by the controller instead of generating its component dynamically. |
void |
setControllerDisplayGroup(EODisplayGroup displayGroup)
Sets and prepares the controller display group - the display group that contains the receiver itsself. |
String |
toString()
Returns the receiver as a string describing the state of the controller. |
void |
willChange()
Triggers EOObserverCenter change notifications for the controller itsself. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Constructor Detail |
public EOArchiveController()
public EOArchiveController(EOXMLUnarchiver unarchiver)
unarchiver
- the unarchiver providing XML attributesMethod Detail |
public String archiveName()
protected void controllerDidLoadArchive(NSDictionary namedObjects)
loadArchive
to notify the receiver that its
interface file has been loaded completely. You can override this method
to perform additional initialization for the objects loaded from the
interface file archive.
namedObjects
- dictionary with all named objects from the interface file archive (keys: names, values: objects)loadArchive()
public EODisplayGroup controllerDisplayGroup()
objectWillChange
methods. If the controller display group has not
been set so far, creates a new one and returns it.
setControllerDisplayGroup(EODisplayGroup)
,
objectWillChange(Object)
protected void controllerWillLoadArchive()
loadArchive
to notify the receiver that its
interface file is about to be loaded. You can override this method
to perform additional preparation for the archive loading process.
loadArchive()
public boolean endEditing()
endEditing
in interface EOComponentController.EndEditing
true
if all uncommitted changes were successfully flushed; false
otherwisepublic boolean hasControllerDisplayGroup()
true
if the controller already has a controller display group; false
otherwiseprotected boolean loadArchive()
archiveName
of the receiver. While loading, controllers
can substitute objects in objectForOutletPath
. Afterwards,
controllers can perform additional initialization for the objects loaded
from the archive in controllerDidLoadArchive
. If no
archiveName
is specified, this method returns false
.
true
if the archive was successfully loaded; false
otherwisecontrollerDidLoadArchive(NSDictionary)
,
EOArchive#objectForOutletPath(EOArchive, String)
public void objectWillChange(Object object)
objectWillChange
in interface EOObserving
object
- the changed object (the controller itsself)willChange()
protected void prepareComponent()
prepareComponent
in class EOComponentController
public void setArchiveName(String string)
string
- the name of the interface file archive to be loaded by the controllerpublic void setControllerDisplayGroup(EODisplayGroup displayGroup)
objectWillChange
methods if its values are edited through associations of the controller
display group.
displayGroup
- the display group to be used as controller display group for the receivercontrollerDisplayGroup()
,
objectWillChange(Object)
public String toString()
toString
in class EOComponentController
public void willChange()
objectWillChange
methods for the controller if it's edited through an association of the
controller display group.
objectWillChange(Object)
|
Last updated Thu Oct 21 15:04:16 PDT 2004. | ||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |