Rogue Wave Views 5.5.1 |
Rogue Wave Views |
Rogue Wave Views Documentation Home |
Grouping accessors to change or query all the nodes of a group in one pass. More...
#include <ilviews/protos/group.h>
Public Member Functions | |
IlvGroupAccessor (const char *name, IlvValueTypeClass *type) | |
Creates a new group accessor. | |
virtual IlBoolean | changeValue (IlvAccessorHolder *object, const IlvValue &val) |
Called by the method IlvAccessible::changeValue for each IlvAccessor attached to the IlvAccessorHolder . | |
virtual IlUInt | compareValues (const IlvAccessorHolder *object, const IlvAccessible *ref, IlvValue *values, IlUShort count, IlvValueArray &diffs) const |
Compares the values in ref and object and returns the differing values. | |
virtual IlvValue & | queryValue (const IlvAccessorHolder *object, IlvValue &val) const |
Called by the method IlvAccessible::queryValue for each IlvAccessor attached to the IlvAccessorHolder . | |
Friends | |
class | IlvGroup |
class | IlvGroupNode |
Grouping accessors to change or query all the nodes of a group in one pass.
Library: ilvproto
IlvGroupAccessor
is a subclass of IlvAccessor
used to query and change values for all the nodes of a group. This class of accessors is not usually used directly by applications. It is used internally by subclasses of IlvGroupNode
.
IlvGroupAccessor::IlvGroupAccessor | ( | const char * | name, | |
IlvValueTypeClass * | type | |||
) |
Creates a new group accessor.
When the attribute associated with this name is changed for the group, it will be changed for all the nodes of the group. When the value is queried, it will be queried from all the nodes, and the last value will be returned.
name | Name of the attribute. | |
type | Type of the attribute. |
virtual IlUInt IlvGroupAccessor::compareValues | ( | const IlvAccessorHolder * | object, | |
const IlvAccessible * | ref, | |||
IlvValue * | values, | |||
IlUShort | count, | |||
IlvValueArray & | diffs | |||
) | const [virtual] |
Compares the values in ref and object and returns the differing values.
Compares the objects object and ref for the values specified by the values array of length count. The differences are stored in the diffs array, and the method returns the number of differences. The default implementation simply calls the IlvAccessible::compareValues
method, which will query the values for the two objects and compare them one by one. Subclasses may compare values more cleverly by grouping differences: for example, the IlvGroupAccessor
subclass detects when all nodes of a group differ homogeneously and reports only one difference for the whole group.
Reimplemented from IlvAccessor.
© Copyright 2012, Rogue Wave Software, Inc. All Rights Reserved.
Rogue Wave is a registered trademark of Rogue Wave Software, Inc. in the United States and other countries. All other trademarks are the property of their respective owners.