IAttributeState

IAttributeState is a graphic state consisting of all the graphical state variables. It is needed to draw a geometry, such as paint, transfer mode, pen geometry, matrix, and clip area.


IAttributeState - Member Functions and Data by Group

Constructors & Destructor

Use the constructor and destructor in this group to create and destroy objects of class IAttributeState.


[view class]
~IAttributeState
public:
virtual ~IAttributeState()
Destroys an IAttributeState object.

Supported Platforms

Windows OS/2 AIX
Yes Yes Yes


[view class]
IAttributeState
This function creates an object of class IAttributeState.


Overload 1
Copy constructor
public:
IAttributeState(const IAttributeState&)
Use this constructor to create an IAttributeState object that is copied from the given one.

const IAttributeState&
The IAttributeState to be copied.

Supported Platforms

Windows OS/2 AIX
Yes Yes Yes


Overload 2
Default constructor. Printing state is set to kPrintingUndefined.
public:
IAttributeState()
Use this constructor to create a default IAttributeState object whose printing state is set to kPrintingUndefined.

Supported Platforms

Windows OS/2 AIX
Yes Yes Yes


Assignment Operator

Use the function in this group to assign the given object to the target one.


[view class]
operator =
public:
IAttributeState& operator =(const IAttributeState&)
Assignment operator.

const IAttributeState&
The source object.

Return
A non-const reference to the left-hand side object.

Supported Platforms

Windows OS/2 AIX
Yes Yes Yes


Obtaining Graphic State Information

Use the functions in this group to obtain attribute state values set, such as the drawing operation to be performed, the transfer mode and fill paint to be used, the end cap, joint, paint, and pen to be used for the frame, the color transfer mode and image transfer mode to be used, and the image sampling to be done.


[view class]
drawingOperation
public:
virtual EDrawOperation drawingOperation() const = 0
Returns the drawing operation specified by the attribute state.

Return
An EDrawOperation enumerated type (kFill, kFrame, or kFillAndFrame) that represents the drawing operation specified by this attribute state.

Supported Platforms

Windows OS/2 AIX
Yes Yes Yes


[view class]
fillPaint
public:
virtual const IPaint* fillPaint() const
Returns the paint used for the surface fill operations.

Return
A constant pointer to an IPaint object that specifies the color or pattern to be used by the kFill drawing operation.

Supported Platforms

Windows OS/2 AIX
Yes Yes Yes


[view class]
fillTransferMode
public:
virtual const IColorTransferMode* fillTransferMode() const
Returns the color transfer mode to be used during a fill drawing operation.

Return
A constant pointer to an IColorTransferMode object that represents the transfer mode to be used during a kFill drawing operation.

Supported Platforms

Windows OS/2 AIX
Yes Yes Yes


[view class]
frameEndCap
public:
virtual const ICap* frameEndCap() const
Returns the cap, for example, IFlushCap, to be used at the end of a line or geometry path.

Return
A constant pointer to an ICap object that represents the cap to be used at the end of a line or geometry path.

Supported Platforms

Windows OS/2 AIX
Yes Yes Yes


[view class]
frameJoint
public:
virtual const IJoint* frameJoint() const
Returns the joint to be used to smooth out the discontinuities which occur at the intersection of two line segments.

Return
A constant pointer to an IJoint object that represents the joint to be used at the intersection of two line segments.

Supported Platforms

Windows OS/2 AIX
Yes Yes Yes


[view class]
framePaint
public:
virtual const IPaint* framePaint() const
Returns the paint used for the frame drawing operations.

Return
A constant pointer to an IPaint object that specifies the color or pattern to be used by the kFrame drawing operation.

Supported Platforms

Windows OS/2 AIX
Yes Yes Yes


[view class]
framePen
public:
virtual const IPen* framePen() const
Returns the pen, for example, IHairlinePen, to be used to draw the frame model of the graphic.

Return
A constant pointer to an IPen object that represents the pen to be used by the kFrame drawing operation.

Supported Platforms

Windows OS/2 AIX
Yes Yes Yes


[view class]
frameTransferMode
public:
virtual const IColorTransferMode* frameTransferMode() const
Returns the color transfer mode to be used during a frame drawing operation.

Return
A constant pointer to an IColorTransferMode object that represents the transfer mode to be used during a kFrame drawing operation.

Supported Platforms

Windows OS/2 AIX
Yes Yes Yes


[view class]
imageSampling
public:
virtual const IImageSamplingControl* imageSampling() const
Returns the image sampling to be done when the graphic is either interpolated or decimated.

Return
A constant pointer to an IImageSamplingControl object that determines how an image will be sampled prior to interpolation or decimation.

Supported Platforms

Windows OS/2 AIX
Yes Yes Yes


[view class]
imageTransferMode
public:
virtual const IImageTransferMode* imageTransferMode() const
Returns the image transfer mode that determines how the colors of the image are modified when placed at the destination.

Return
A constant pointer to an IImageTransferMode object that represents how the image colors are transferred to the destination.

Supported Platforms

Windows OS/2 AIX
Yes Yes Yes


Setting and Getting the Time Stamp

Use the functions in this group to get the object's time stamp, and to set it, update it, and reset it.


[view class]
timeStamp
public:
virtual unsigned long timeStamp() const
Returns the time stamp stored by this object.

Return
Returns an unsigned long int that is unique with respect to all other IAttributeState objects.

Supported Platforms

Windows OS/2 AIX
Yes Yes Yes


[view class]
resetTimeStamp
protected:
void resetTimeStamp()
Sets the time stamp to zero.

Supported Platforms

Windows OS/2 AIX
Yes Yes Yes


[view class]
setTimeStamp
protected:
void setTimeStamp(unsigned long)
Sets the internal time stamp stored in this object.

unsigned long
The new time stamp value to use.

Supported Platforms

Windows OS/2 AIX
Yes Yes Yes


[view class]
updateTimeStamp
protected:
void updateTimeStamp()
Updates the time stamp value to a new value that is unique with respect to all other IAttributeState objects.

Supported Platforms

Windows OS/2 AIX
Yes Yes Yes


Streaming the Object In and Out

Use the functions in this group to read the object in an out from the specified stream.


[view class]
readFromStream
protected:
virtual void readFromStream(IDataStream& toWhere)
Reads the IAttributeState object in from the specified stream.

fromStream
The stream from which the object is read in.

Supported Platforms

Windows OS/2 AIX
Yes Yes Yes


[view class]
writeToStream
protected:
virtual void writeToStream(IDataStream& toWhere) const
Writes the object out to the specified stream.

toWhere
The stream that the object is written out to.

Supported Platforms

Windows OS/2 AIX
Yes Yes Yes


Testing Two Objects for Equality or Inequality

Use the functions in this group to compare two AttributeState objects for equality or inequality.


[view class]
operator !=
public:
bool operator !=(const IAttributeState& obj) const
Tests two IAttributeState objects for inequality.

obj
The IAttributeState to be compared with this one.

Return
True if this IAttributeState and the argument have different attributes.

Supported Platforms

Windows OS/2 AIX
Yes Yes Yes


[view class]
operator ==
public:
virtual bool operator ==(const IAttributeState& obj) const
Tests two IAttributeState objects for equality.

obj
The IAttributeState to be compared with this one.

Return
True if this IAttributeState and the argument have equal attributes.

Supported Platforms

Windows OS/2 AIX
Yes Yes Yes


IAttributeState - Enumerations


[view class]
EDrawOperation
enum EDrawOperation { kFrame, 
                      kFill, 
                      kFillAndFrame, 
                      kUnset }
The EDrawOperation enum specifies the drawing operation.

Supported Platforms

Windows OS/2 AIX
Yes Yes Yes


IAttributeState - Inherited Member Functions and Data

Inherited Public Functions

IMStreamable

Inherited Public Data

Inherited Protected Functions

IMStreamable

Inherited Protected Data