### ILinkedGrafPort

  ILinkedGrafPort provides the basic functionality for linked ports. The ILinkedGrafPort class provides the basic functionality for linked ports. You cannot copy or copy construct objects of this class.

### ILinkedGrafPort - Member Functions and Data by Group

### Constructors & Destructor

Use the functions in this group to create and destroy objects of class ILinkedGrafPort.

~ILinkedGrafPort

      public:
      virtual ~ILinkedGrafPort()

  Destroys a linked graphics port object.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

ILinkedGrafPort
  Constructs a linked graphics port object.

  Overload 1

      public:
      ILinkedGrafPort( IGrafPort* referencedParent,
                       const IGArea* referencedClipArea )

  Use this constructor to create an ILinkedGrafPort that references the given clip area.

  referencedParent
    A pointer to the IGrafPort parent.
  referencedClipArea
    A constant pointer to the reference clipping area.

Return
  A pointer to the new ILinkedGrafPort.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

  Overload 2

      public:
      ILinkedGrafPort( IGrafPort* referencedParent,
                       const IAttributeState* referencedAttributes )

  Use this constructor to create an ILinkedGrafPort that references the given attributes.

  referencedParent
    A pointer to the parent IGrafport object.
  referencedAttributes
    A constant pointer to the reference attributes.

Return
  A pointer to the new ILinkedGrafPort.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

  Overload 3

      public:
      ILinkedGrafPort( IGrafPort* referencedParent,
                       EMatrixKind matrixKind,
                       const IGrafMatrix* referencedMatrix )

  Use this constructor to create an ILinkedGrafPort that references the given transformation matrix.

  referencedParent
    A pointer to the IGrafPort parent.
  matrixKind
    The type of the reference matrix.
  referencedMatrix
    A constant pointer to the reference transformation matrix.

Return
  A pointer to the new ILinkedGrafPort.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

### Accessing the Port

Use the function in this group to access the port to be registered.

portForStateUsage

      public:
      virtual const IGrafPort* portForStateUsage() const

  Provides a more efficient way to get access to the port that needs to have its usage registered.

Return
  Return a constant pointer to the object itself.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

### Converting from Pixel to Pointsize

Use the functions in this group to convert coordinates from pixels to points.

pixelToPointSize

      public:
      virtual const IGrafMatrix& pixelToPointSize() const

  Converts from device coordinate which is in pixel to "ideal" coordinate which is in point size (1/72 inch).

Return
  Returns a constant reference to the conversion matrix from pixel size to point size.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

### Inverting the Device Transformation

Use the function in this group to invert the device tranform to the logical coordinate system.

invertedDeviceTransform

      public:
      virtual const IGrafMatrix& invertedDeviceTransform() const

  Inverts the device tranformation to its logical coordinate system.

Return
  A constant reference to the inverted device transformation matrix.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

### Marking the Graphics State

Use the functions in this group to mark the graphics state as in use of not.

doneWithState

      public:
      virtual void doneWithState() const

  Marks the graphic state as being no longer in use so that changes to the state can be made.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

useState

      public:
      virtual void useState() const

  Marks the graphic state as being in use so that no changes to the state are made until doneWithState is called.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

### ILinkedGrafPort - Inherited Member Functions and Data

#### Inherited Public Functions

  IGrafPort

  -     virtual ~IGrafPort()

  -     void adoptDeviceContext(IPresSpaceHandle)

  -     const IAttributeState* attributes() const

  -     const IGArea* clipArea() const

  -     virtual IGRect2D convertRect(const IRectangle) const

  -     virtual const IPresSpaceHandle& deviceContext()

  -     virtual _XDisplay* display() const

  -     virtual void doneWithState() const = 0

  -     void
          draw( const IGLoop2D& geometry,
                const IAttributeState& attributeState,
                const IGrafMatrix& modelMatrix = IGrafMatrix::identity ( ) )

  -     void
          draw( const IGImage& theImage,
                const IGImage& theMask,
                const IAttributeState& attributeState,
                const IGrafMatrix& modelMatrix = IGrafMatrix::identity ( ) )

  -     void
          draw( const IGImage& theImage,
                const IGRect2D& srcBounds,
                const IAttributeState& attributeState,
                const IGrafMatrix& modelMatrix = IGrafMatrix::identity ( ) )

  -     void
          draw( const IGRect2D& geometry,
                const IAttributeState& attributeState,
                const IGrafMatrix& modelMatrix = IGrafMatrix::identity ( ) )

  -     IGPoint2D draw(const IGTextRun& geometry)

  -     void
          draw( const IGPolygon2D& geometry,
                const IAttributeState& attributeState,
                const IGrafMatrix& modelMatrix = IGrafMatrix::identity ( ) )

  -     void draw(const IGRect2D& geometry)

  -     void draw(const IGPolygon2D& geometry)

  -     void draw(const IGEllipse2D& geometry)

  -     void
          draw( const IGLine2D& geometry,
                const IAttributeState& attributeState,
                const IGrafMatrix& modelMatrix = IGrafMatrix::identity ( ) )

  -     void draw(const IGPolyline2D& geometry)

  -     void
          draw( const IGImage& theImage,
                const IGImage& theMask,
                const IGRect2D& srcBounds )

  -     void draw(const IGImage& geometry)

  -     void
          draw( const IGImage& theImage,
                const IGImage& theMask,
                const IGRect2D& srcBounds,
                const IAttributeState& attributeState,
                const IGrafMatrix& modelMatrix = IGrafMatrix::identity ( ) )

  -     void
          draw( const IGImage& theImage,
                const IGRect2D& srcBounds )

  -     void
          draw( const IGEllipse2D& geometry,
                const IAttributeState& attributeState,
                const IGrafMatrix& modelMatrix = IGrafMatrix::identity ( ) )

  -     void
          draw( const IGPolyline2D& geometry,
                const IAttributeState& attributeState,
                const IGrafMatrix& modelMatrix = IGrafMatrix::identity ( ) )

  -     void draw(const IGLine2D& geometry)

  -     void draw(const IGCurve2D& geometry)

  -     void
          draw( const IGArea& geometry,
                const IAttributeState& attributeState,
                const IGrafMatrix& modelMatrix = IGrafMatrix::identity ( ) )

  -     void
          draw( const IGImage& geometry,
                const IAttributeState& attributeState,
                const IGrafMatrix& modelMatrix = IGrafMatrix::identity ( ) )

  -     void draw(const IGImage& geometry, const IGImage& theMask)

  -     void draw(const IGArea& geometry)

  -     IGPoint2D
          draw( const IGTextRun& geometry,
                const IAttributeState& attributeState,
                const IGrafMatrix& modelMatrix = IGrafMatrix::identity ( ) )

  -     void draw(const IGLoop2D& geometry)

  -     void
          draw( const IGCurve2D& geometry,
                const IAttributeState& attributeState,
                const IGrafMatrix& modelMatrix = IGrafMatrix::identity ( ) )

  -     virtual unsigned long drawable() const

  -     virtual void flush()

  -     virtual _XGC* gc() const

  -     const IGrafMatrix* matrix(EMatrixKind) const

  -     IPresSpaceHandle orphanDeviceContext()

  -     const IString* portType() const

  -     virtual void useState() const = 0

#### Inherited Public Data

  - None

#### Inherited Protected Functions

  IGrafPort

  -     void adoptOrphanedGrafState(IGrafState* orphan)

  -     IGrafDevice* device()

  -     IGrafPort( IGrafDevice* referencedDevice,
                   IColorMap* colormap = & ( IColorMap::defaultColorMap ( ) ) )

  -     IGrafPort()

  -     void setDevice(IGrafDevice* device)

  -     void setState(IGrafState* state)

  -     const IGrafState* state() const

#### Inherited Protected Data

  - None