resistance is obsolete ™ ;-)
the groupware construction kit

ComponentTypes.html
OGo WebUI Component Superclasses

Note that only the "final" subclass is supposed to have a template - you cannot inherit templates in NGObjWeb.

Component Class Hierarchy

NSObject (Foundation)
WOElement (NGObjWeb)
WOComponent (NGObjWeb)
OGoComponent (OGoFoundation)
LSWComponent (OGoFoundation) *DEPRECATED*
OGoContentPage (OGoFoundation)
LSWContentPage (OGoFoundation) *DEPRECATED*
OGoViewerPage (OGoFoundation)
LSWViewerPage (OGoFoundation)
LSWEditorPage (OGoFoundation)
LSWObjectMailPage (OGoFoundation)
SkyEditorComponent (OGoFoundation) ???
SkyEditorPage (OGoFoundation) ???

The deprecated classes are still required for binary compatibility until all categories and subclasses are moved to the new naming scheme.

TODO: need to find out what SkyEditorComponent/SkyEditorPage are good for - apparently those are for pages which are composed from multiple subeditors.

WOComponent

WOComponent is the basic reusable component class defined in NGObjWeb. Its difference to a WODynamicElement is that a component has session state on its own and that a component usually has an associated template (.wox or .wo templates).

OGoComponent (formerly: LSWComponent)

Write much more ...
- support for "label handlers" (label.mylabel in .wod files)
- support for "config handlers" (more or less deprecated)
- syncAwake support

OGoContentPage (formerly: LSWContentPage)

You should use OGoContentPage as a superclass for any WebUI class which is not embedded by another component and is to be tracked by the OGo history navigation.

LSWEditorPage

Write much more ...
- activation
- constraint checks / input validation
- says YES to -isEditorPage which turns offs all navigation links

OGoViewerPage (formerly LSWViewerPage)

Write much more ...
- ivar for keeping the 'object' (from activation)
- clipping support (-placeInClipboard)
- identity (-isViewerForSameObject:)
- can activate editor
- hackish support for mailer and URL generation (-objectURL,-mailObject)

LSWObjectMailPage

This superclass is useful for writing MIME renders and is used by the OGo web mailer to do exactly that - eg the component which renders an appointment for delivery by mail is a subclass of LSWObjectMailPage.

We welcome your feedback!
Trademarks.  
This site is sponsored by
SKYRIX Software AG
ZideOne GmbH
MDlink