com.esri.arcgis.geodatabase
Interface IFeatureClassDraw

All Superinterfaces:
Serializable
All Known Implementing Classes:
IFeatureClassDrawProxy, SchematicInMemoryFeatureClass

public interface IFeatureClassDraw
extends Serializable

Provides access to members that set customized drawing properties.

Description

The IFeatureClassDraw interface is an optional interface for feature class extensions, used to specify custom drawing behavior in ArcMap.

Remarks

If using a custom renderer, the ExclusiveCustomRenderer property can be used to restrict the available renderers to the custom one for the feature class. If the custom renderer is configurable, a configuration property page can be specified with the CustomRendererPropPageCLSID property. If using a custom feature and that feature utilizes extra fields beyond the Shape for drawing, it is necessary to specify those fields in the RequiredFieldsForDraw property or they will not be returned in the FeatureLayer’s FeatureCursor.

When To Use

Before a FeatureLayer draws features in a feature class, it will check the FeatureClassExtension for support of this interface. Custom drawing can be achieved through the use of a custom renderer or through the use of a custom feature that implements IFeatureDraw::Draw.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

See Also:
com.esri.arcgis.editor.IShortTransactionObjectInspector

Method Summary
 boolean doesCustomDrawing()
          Indicates whether the FeatureClass does custom drawing.
 Object getCustomRenderer()
          The custom renderer for the FeatureClass.
 IUID getCustomRendererPropPageCLSID()
          The custom renderer's property page CLSID.
 IFields getRequiredFieldsForDraw()
          The required fields for drawing a Feature.
 boolean hasCustomRenderer()
          Indicates whether the feature class has a custom renderer.
 boolean isExclusiveCustomRenderer()
          Indicates whether the custom renderer is exclusive or not.
 

Method Detail

getRequiredFieldsForDraw

IFields getRequiredFieldsForDraw()
                                 throws IOException,
                                        AutomationException
The required fields for drawing a Feature.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Returns:
A reference to a com.esri.arcgis.geodatabase.IFields
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
IFields, com.esri.arcgis.editor.IShortTransactionObjectInspector

doesCustomDrawing

boolean doesCustomDrawing()
                          throws IOException,
                                 AutomationException
Indicates whether the FeatureClass does custom drawing.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Returns:
The doesDrawing
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
com.esri.arcgis.editor.IShortTransactionObjectInspector

getCustomRenderer

Object getCustomRenderer()
                         throws IOException,
                                AutomationException
The custom renderer for the FeatureClass.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Returns:
A Variant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
com.esri.arcgis.editor.IShortTransactionObjectInspector

getCustomRendererPropPageCLSID

IUID getCustomRendererPropPageCLSID()
                                    throws IOException,
                                           AutomationException
The custom renderer's property page CLSID.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Returns:
A reference to a com.esri.arcgis.system.IUID
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
com.esri.arcgis.editor.IShortTransactionObjectInspector

isExclusiveCustomRenderer

boolean isExclusiveCustomRenderer()
                                  throws IOException,
                                         AutomationException
Indicates whether the custom renderer is exclusive or not.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Returns:
The isExclusive
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
com.esri.arcgis.editor.IShortTransactionObjectInspector

hasCustomRenderer

boolean hasCustomRenderer()
                          throws IOException,
                                 AutomationException
Indicates whether the feature class has a custom renderer.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Returns:
The hasRenderer
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
com.esri.arcgis.editor.IShortTransactionObjectInspector