Provided by: ivtools-dev_2.0.11d.a1-3build7_amd64 

NAME
ComponentView - base class for views of objects that model domain-specific elements
SYNOPSIS
#include <Unidraw/Components/compview.h>
DESCRIPTION
ComponentView is an abstract base class for views of component subjects. Component views provide a
specialized presentation of the information in the component subject to which they are attached. Usually
there is at least one view subclass defined for each subclass of component subject.
PUBLIC OPERATIONS
virtual void Interpret(Command*)
virtual void Uninterpret(Command*)
These operations call the corresponding subject operations by default. They are included in the
component view protocol for convenience, since other objects often deal with component views
rather than their subjects.
virtual void Update()
Notify the view of a change in some state that it depends on, normally state in the subject. This
operation does nothing by default.
virtual Component* GetParent()
Return the view's parent, if any. Like component subjects, component views may be structured
hierarchically, and their structure may or may not reflect that of their subject.
Component* GetSubject()
Return the component view's subject.
virtual void First(Iterator&)
virtual void Last(Iterator&)
virtual void Next(Iterator&)
virtual void Prev(Iterator&)
virtual boolean Done(Iterator)
Operations for iterating over the component view's children, if any. First and Last initialize an
iterator to point to the beginning and end of the list of children, respectively. Next increments
the iterator to point to the following child, while Prev decrements the iterator to point to the
preceding child. Done returns whether or not the iterator points beyond the first or last child
in the list.
virtual ClassId GetClassId()
virtual boolean IsA(ClassId)
GetClassId returns the unique class identifier for the ComponentView subclass, while IsA returns
whether the instance is of a class or subclass corresponding to the given identifier. IsA
typically checks the given identifier against the instance's own (as defined by its GetClassId
operation) and, failing that, calls its parent classes' IsA operation. All subclasses must
redefine GetClassId and IsA to ensure that their identifiers are unique and that view category
information is defined properly. See classes(3U) for more information on class identifiers and
view categories.
PROTECTED OPERATIONS
ComponentView(Component* subject = nil)
The constructor initializes the component view's subject pointer to the given value. The view
will also attach itself to the subject if the argument is non-nil.
virtual void SetSubject(Component*)
Set the component's subject pointer to the given value. By default, this operation does not call
Attach or Detach on the subject(s).
virtual void SetParent(Component* child, Component* parent)
Notify a child component that it has a new or different parent. This operation does nothing by
default. Composite components should call this function in their structure-modifying operations,
and components that keep information about their parents should redefine it to update this
information.
SEE ALSO
Command(3U), Component(3U), Iterator(3U), classes(3U)
Unidraw 20 August 1990 ComponentView(3U)