rwlogo
Rogue Wave Views 5.6

Rogue Wave Views
Prototypes Package API Reference Guide

Product Documentation:

Rogue Wave Views
Documentation Home

IlvMultipleUserAccessor Class Reference

Base class for accessors that represent several attributes. More...

#include <ilviews/protos/useracc.h>

Inheritance diagram for IlvMultipleUserAccessor:
IlvUserAccessor IlvAccessor

List of all members.

Public Member Functions

 IlvMultipleUserAccessor (const char *name, IlUShort count, const char **names, IlvValueTypeClass **types)
 Creates a multiple accessor of name name and type type.

Protected Member Functions

virtual IlBoolean changeValue (IlvAccessorHolder *object, const IlvValue &val)
 Called by the method IlvAccessible::changeValue for each IlvAccessor attached to the IlvAccessorHolder.
virtual void getAccessors (const IlSymbol *const **accessors, const IlvValueTypeClass *const **types, IlUInt &count) const
 Returns the names and types of the values handled by this accessor.
virtual IlShort matchValues (const IlvAccessorHolder *object, const IlvValue *values, IlUShort count, IlvValue *matchingValues=0) const
 Returns the number of values that are handled by the accessor in the values array of length count.
virtual IlvValuequeryValue (const IlvAccessorHolder *object, IlvValue &val) const
 Called by the method IlvAccessible::queryValue for each IlvAccessor attached to the IlvAccessorHolder.

Detailed Description

Base class for accessors that represent several attributes.

Library: ilvproto

IlvMultipleUserAccessor is used as a base class for accessors that respond to changes of several values at the same time. This class is not used directly; only its subclasses are useful to designers of prototypes.

See also:
IlvMultipleAccessor, IlvXYChartAccessor.

Constructor & Destructor Documentation

IlvMultipleUserAccessor::IlvMultipleUserAccessor ( const char *  name,
IlUShort  count,
const char **  names,
IlvValueTypeClass **  types 
)

Creates a multiple accessor of name name and type type.

The changeValues and queryValues methods of this accessor are called when several of the values specified by names and types are changed or queried in a single call to changeValues or queryValues on the accessor holder.


Member Function Documentation

virtual void IlvMultipleUserAccessor::getAccessors ( const IlSymbol *const **  accessors,
const IlvValueTypeClass *const **  types,
IlUInt count 
) const [protected, virtual]

Returns the names and types of the values handled by this accessor.

Returns:
The names and types of the values handled by this accessor. The base class implementation adds only the name and type of this accessor to the accessors and types lists, but subclasses (for example IlvMultipleAccessor) may add several names and types to signal that the accessor can respond to requests for several values.

Reimplemented from IlvAccessor.

virtual IlShort IlvMultipleUserAccessor::matchValues ( const IlvAccessorHolder object,
const IlvValue values,
IlUShort  count,
IlvValue matchingValues = 0 
) const [protected, virtual]

Returns the number of values that are handled by the accessor in the values array of length count.

The matching values are copied to the matchingValues array, which must have a length of at least count. This method is called by the changeValue[s]/queryValue[s] methods of the IlvAccessorHolder class to determine which IlvAccessors respond to a request for a set of value names. All the accessors that return a non-null count of matching values will be called by the IlvAccessorHolder, with the matching values as arguments. The base class implementation looks for a value corresponding to the accessor name given in values and copies it to matchingValues. Subclasses of IlvAccessor (for example IlvMultipleAccessor) may match several values.

Reimplemented from IlvAccessor.

 All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

© 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.