com.esri.arcgis.carto
Class AnnotationFeatureClassExtension

java.lang.Object
  extended bycom.esri.arcgis.carto.AnnotationFeatureClassExtension
All Implemented Interfaces:
java.util.EventListener, IAnnoClass, IAnnoClassAdmin, IAnnoClassAdmin2, IAnnoClassAdmin3, IAnnotationClassExtension, IClassExtension, IConfirmSendRelatedObjectEvents, IFeatureClassEdit, IFeatureClassExtension, IObjectClassEvents, IObjectClassExtension, IPersistCustomFeaturesExtension, IRelatedObjectClassEvents, ISupportErrorInfo, java.io.Serializable

public class AnnotationFeatureClassExtension
extends java.lang.Object
implements IClassExtension, IAnnoClass, IAnnotationClassExtension, IAnnoClassAdmin, IConfirmSendRelatedObjectEvents, IAnnoClassAdmin2, IAnnoClassAdmin3, IFeatureClassEdit, IFeatureClassExtension, IObjectClassExtension, IPersistCustomFeaturesExtension, IRelatedObjectClassEvents, IObjectClassEvents, ISupportErrorInfo

An ESRI annotation feature class extension.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Remarks

The AnnotationFeatureClassExtension CoClass manages the drawing of annotation features.

 The AnnotationFeatureClassExtension is used to configure the drawing properties and symbology for annoation features. The IAnnoClass interface is used to access the AnnotationLayerProperties and GroupSymbols. The IAnnoClassAdmin interface is used to update the properties of the class. ArcMap and ArcCatalog primarily use these interfaces.

See Also:
IAnnoClass, IAnnoClassAdmin, Serialized Form

Constructor Summary
AnnotationFeatureClassExtension()
          Constructs a AnnotationFeatureClassExtension using ArcGIS Engine.
AnnotationFeatureClassExtension(java.lang.Object obj)
          Deprecated. As of ArcGIS 9.2, replaced by normal Java casts.
 
Method Summary
 boolean confirmSendRelatedObjectChanged(IRelationshipClass relationshipClass, IObject objectThatChanged)
          Notifies this object that a related object changed and asks if events should be sent.
 boolean confirmSendRelatedObjectMoved(IRelationshipClass relationshipClass, IObject objectThatChanged, ILine moveVector)
          Notifies this object that a related object moved and asks if events should be sent.
 boolean confirmSendRelatedObjectRotated(IRelationshipClass relationshipClass, IObject objectThatChanged, IPoint origin, double angle)
          Notifies this object that a related object rotated and asks if events should be sent.
 boolean confirmSendRelatedObjectSetMoved(IRelationshipClass relationshipClass, ISet objectsThatChanged, ILine moveVector)
          Notifies this object that a set of objects with relationships to the input set of objects moved and asks if events should be sent.
 boolean confirmSendRelatedObjectSetRotated(IRelationshipClass relationshipClass, ISet objectsThatChanged, IPoint origin, double angle)
          Notifies this object that a set of objects with relationships to the input set of objects rotated and asks if events should be sent.
 void draw(IAnnotationFeature annoFeature, IDisplay display, ISymbol symbol)
          Draws the given annotation feature.
 boolean equals(java.lang.Object o)
          Compare this object with another
 IAnnotateLayerPropertiesCollection getAnnoProperties()
          The labeling properties annotation classes.
 int getAnnotationClassIDFieldIndex()
          The label class ID field index.
 IAnnoClass getAsIAnnoClass()
          Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.
 IAnnoClassAdmin getAsIAnnoClassAdmin()
          Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.
 IAnnoClassAdmin2 getAsIAnnoClassAdmin2()
          Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.
 IAnnoClassAdmin3 getAsIAnnoClassAdmin3()
          Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.
 IAnnotationClassExtension getAsIAnnotationClassExtension()
          Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.
 IClassExtension getAsIClassExtension()
          Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.
 IConfirmSendRelatedObjectEvents getAsIConfirmSendRelatedObjectEvents()
          Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.
 IFeatureClassEdit getAsIFeatureClassEdit()
          Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.
 IFeatureClassExtension getAsIFeatureClassExtension()
          Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.
 IObjectClassEvents getAsIObjectClassEvents()
          Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.
 IObjectClassExtension getAsIObjectClassExtension()
          Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.
 IPersistCustomFeaturesExtension getAsIPersistCustomFeaturesExtension()
          Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.
 IRelatedObjectClassEvents getAsIRelatedObjectClassEvents()
          Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.
 ISupportErrorInfo getAsISupportErrorInfo()
          Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.
static java.lang.String getClsid()
           
 int getCustomSplitPolicyForRelationship(IRow row, IRelationshipClass relClass)
          The custom split policy for handling relationships.
 IDisplay getDisplay()
          The display.
 int getElementFieldIndex()
          The element field index.
 IFeatureClass getFeatureClass()
          The feature class.
 int getFeatureIDFieldIndex()
          The feature ID field index.
 IFeatureClass getLinkedFeatureClass()
          The feature class to which the annotation class is feature linked.
 IOverposterProperties getOverposterProperties()
          The overposter properties.
 double getReferenceScale()
          The reference scale.
 int getReferenceScaleUnits()
          The units of the reference scale.
 int getStatusFieldIndex()
          The status field index.
 ISymbol getSymbol(int symbolID)
          The symbol associated with the given ID.
 ISymbolCollection getSymbolCollection()
          The symbol collection.
 short getVersion()
          The version of the annotation class.
 boolean hasCustomSplitPolicyForRelationship()
          True if the feature class has a custom split policy for handling relationships.
 int hashCode()
          the hashcode for this object
 void init(IClassHelper pClassHelper, IPropertySet pExtensionProperties)
          Initializes the extension, passing in a reference to its class helper.
 void interfaceSupportsErrorInfo(GUID riid)
          Supported Platforms
 boolean isAllowSymbolOverrides()
          Indicates if an annotation may override a symbol property even though it references the symbol collection.
 boolean isAutoCreate()
          Indicates if an annotation is to be automatically created when a feature is created.
 boolean isCanEditWithProjection()
          Indicates if the associated feature class can be edited in projected spaces.
 boolean isRequireSymbolID()
          Indicates if an annotation must belong to a symbol in the symbol collection.
 boolean isUpdateOnShapeChange()
          Indicates if an annotation is to be automatically recreated when a feature's shape is changed.
 void loadClass(IStream pStm, boolean[] pCanLoad)
          Looks at the class information and determines if it can load the features.
 void loadFeature(IStream pStm, IFeature pFeature)
          Loads the feature information and updates the feature.
 void onChange(IObjectClassEventsOnChangeEvent theEvent)
          This event is fired when an object's attributes or geometry is updated.
 void onCreate(IObjectClassEventsOnCreateEvent theEvent)
          This event is fired when a new object is created in the object class.
 void onDelete(IObjectClassEventsOnDeleteEvent theEvent)
          This event is fired when an object is deleted from the object class.
 void relatedObjectCreated(IRelationshipClass relationshipClass, IObject objectThatWasCreated)
          Notifies this object class that a related object was created.
 void saveClass(IStream pStm)
          Writes out to the stream, class information used to aid loading.
 void saveFeature(IStream pStm, IFeature pFeature)
          Writes out to the stream, feature infomation used to aid loading.
 void setAllowSymbolOverrides(boolean rhs1)
          Indicates if an annotation may override a symbol property even though it references the symbol collection.
 void setAnnoProperties(IAnnotateLayerPropertiesCollection rhs1)
          The labeling properties annotation class.
 void setAutoCreate(boolean flag)
          Indicates if an annotation is to be automatically created when a feature is created.
 void setOverposterProperties(IOverposterProperties rhs1)
          The overposter properties.
 void setReferenceScale(double rhs1)
          The reference scale.
 void setReferenceScaleUnits(int rhs1)
          The units of the reference scale.
 void setRequireSymbolID(boolean rhs1)
          Indicates an annotation must belong to a symbol in the symbol collection.
 void setSymbolCollectionByRef(ISymbolCollection rhs1)
          The symbol collection.
 void setUpdateOnShapeChange(boolean flag)
          Indicates if an annotation is to be automatically recreated when a feature's shape is changed.
 void shutdown()
          Informs the extension that its class helper is going away.
 void synchronizeAttributes(ITextElement pTextElement, IAnnotationFeature pAnnoFeature)
          Sync the attributes.
 void updateFieldIndexes()
          Updates the indexes of the fields that expose the annotation properties.
 void updateProperties()
          Updates the property set.
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AnnotationFeatureClassExtension

public AnnotationFeatureClassExtension()
                                throws java.io.IOException,
                                       java.net.UnknownHostException
Constructs a AnnotationFeatureClassExtension using ArcGIS Engine.

Throws:
java.io.IOException - if there are interop problems
java.net.UnknownHostException - if there are interop problems

AnnotationFeatureClassExtension

public AnnotationFeatureClassExtension(java.lang.Object obj)
                                throws java.io.IOException
Deprecated. As of ArcGIS 9.2, replaced by normal Java casts.

Construct a AnnotationFeatureClassExtension using a reference to such an object returned from ArcGIS Engine or Server. This is semantically equivalent to casting obj to AnnotationFeatureClassExtension.
AnnotationFeatureClassExtension theAnnotationFeatureClassExtension = (AnnotationFeatureClassExtension) obj;

Parameters:
obj - an object returned from ArcGIS Engine or Server
Throws:
java.io.IOException - if there are interop problems
Method Detail

getClsid

public static java.lang.String getClsid()

getAsIClassExtension

public IClassExtension getAsIClassExtension()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.


getAsIAnnoClass

public IAnnoClass getAsIAnnoClass()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.


getAsIAnnotationClassExtension

public IAnnotationClassExtension getAsIAnnotationClassExtension()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.


getAsIAnnoClassAdmin

public IAnnoClassAdmin getAsIAnnoClassAdmin()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.


getAsIConfirmSendRelatedObjectEvents

public IConfirmSendRelatedObjectEvents getAsIConfirmSendRelatedObjectEvents()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.


getAsIAnnoClassAdmin2

public IAnnoClassAdmin2 getAsIAnnoClassAdmin2()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.


getAsIAnnoClassAdmin3

public IAnnoClassAdmin3 getAsIAnnoClassAdmin3()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.


getAsIFeatureClassEdit

public IFeatureClassEdit getAsIFeatureClassEdit()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.


getAsIFeatureClassExtension

public IFeatureClassExtension getAsIFeatureClassExtension()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.


getAsIObjectClassExtension

public IObjectClassExtension getAsIObjectClassExtension()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.


getAsIPersistCustomFeaturesExtension

public IPersistCustomFeaturesExtension getAsIPersistCustomFeaturesExtension()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.


getAsIRelatedObjectClassEvents

public IRelatedObjectClassEvents getAsIRelatedObjectClassEvents()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.


getAsIObjectClassEvents

public IObjectClassEvents getAsIObjectClassEvents()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.


getAsISupportErrorInfo

public ISupportErrorInfo getAsISupportErrorInfo()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.


equals

public boolean equals(java.lang.Object o)
Compare this object with another


hashCode

public int hashCode()
the hashcode for this object


init

public void init(IClassHelper pClassHelper,
                 IPropertySet pExtensionProperties)
          throws java.io.IOException,
                 AutomationException
Description copied from interface: IClassExtension
Initializes the extension, passing in a reference to its class helper.

Supported Platforms

Windows, Solaris, Linux

Specified by:
init in interface IClassExtension
Parameters:
pClassHelper - A reference to a com.esri.arcgis.geodatabase.IClassHelper (in)
pExtensionProperties - A reference to a com.esri.arcgis.system.IPropertySet (in)
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

shutdown

public void shutdown()
              throws java.io.IOException,
                     AutomationException
Description copied from interface: IClassExtension
Informs the extension that its class helper is going away.

Supported Platforms

Windows, Solaris, Linux

Specified by:
shutdown in interface IClassExtension
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

getFeatureClass

public IFeatureClass getFeatureClass()
                              throws java.io.IOException,
                                     AutomationException
Description copied from interface: IAnnoClass
The feature class.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getFeatureClass in interface IAnnoClass
Returns:
A reference to a com.esri.arcgis.geodatabase.IFeatureClass
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

getAnnoProperties

public IAnnotateLayerPropertiesCollection getAnnoProperties()
                                                     throws java.io.IOException,
                                                            AutomationException
Description copied from interface: IAnnoClass
The labeling properties annotation classes.

Supported Platforms

Windows, Solaris, Linux

Remarks

Returns Nothing if no labeling properties set. This occurs when the annotation feature class is created by converting labels to annotation or when created as an annotation target containing graphics.

Specified by:
getAnnoProperties in interface IAnnoClass
Returns:
A reference to a com.esri.arcgis.carto.IAnnotateLayerPropertiesCollection
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSymbol

public ISymbol getSymbol(int symbolID)
                  throws java.io.IOException,
                         AutomationException
Description copied from interface: IAnnoClass
The symbol associated with the given ID.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getSymbol in interface IAnnoClass
Parameters:
symbolID - The symbolID (in)
Returns:
A reference to a com.esri.arcgis.display.ISymbol
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getReferenceScale

public double getReferenceScale()
                         throws java.io.IOException,
                                AutomationException
Description copied from interface: IAnnoClass
The reference scale.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getReferenceScale in interface IAnnoClass
Returns:
The referenceScale
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

getReferenceScaleUnits

public int getReferenceScaleUnits()
                           throws java.io.IOException,
                                  AutomationException
Description copied from interface: IAnnoClass
The units of the reference scale.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getReferenceScaleUnits in interface IAnnoClass
Returns:
A com.esri.arcgis.system.esriUnits constant
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

getSymbolCollection

public ISymbolCollection getSymbolCollection()
                                      throws java.io.IOException,
                                             AutomationException
Description copied from interface: IAnnoClass
The symbol collection.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getSymbolCollection in interface IAnnoClass
Returns:
A reference to a com.esri.arcgis.display.ISymbolCollection
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getVersion

public short getVersion()
                 throws java.io.IOException,
                        AutomationException
Description copied from interface: IAnnoClass
The version of the annotation class.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getVersion in interface IAnnoClass
Returns:
The version
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

draw

public void draw(IAnnotationFeature annoFeature,
                 IDisplay display,
                 ISymbol symbol)
          throws java.io.IOException,
                 AutomationException
Description copied from interface: IAnnoClass
Draws the given annotation feature.

Supported Platforms

Windows, Solaris, Linux

Specified by:
draw in interface IAnnoClass
Parameters:
annoFeature - A reference to a com.esri.arcgis.carto.IAnnotationFeature (in)
display - A reference to a com.esri.arcgis.display.IDisplay (in)
symbol - A reference to a com.esri.arcgis.display.ISymbol (in)
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

getElementFieldIndex

public int getElementFieldIndex()
                         throws java.io.IOException,
                                AutomationException
Description copied from interface: IAnnoClass
The element field index.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getElementFieldIndex in interface IAnnoClass
Returns:
The elementFieldIndex
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

getFeatureIDFieldIndex

public int getFeatureIDFieldIndex()
                           throws java.io.IOException,
                                  AutomationException
Description copied from interface: IAnnoClass
The feature ID field index.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getFeatureIDFieldIndex in interface IAnnoClass
Returns:
The featureIDFieldIndex
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

getDisplay

public IDisplay getDisplay()
                    throws java.io.IOException,
                           AutomationException
Description copied from interface: IAnnotationClassExtension
The display.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getDisplay in interface IAnnotationClassExtension
Returns:
A reference to a com.esri.arcgis.display.IDisplay
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

synchronizeAttributes

public void synchronizeAttributes(ITextElement pTextElement,
                                  IAnnotationFeature pAnnoFeature)
                           throws java.io.IOException,
                                  AutomationException
Description copied from interface: IAnnotationClassExtension
Sync the attributes.

Supported Platforms

Windows, Solaris, Linux

Specified by:
synchronizeAttributes in interface IAnnotationClassExtension
Parameters:
pTextElement - A reference to a com.esri.arcgis.carto.ITextElement (in)
pAnnoFeature - A reference to a com.esri.arcgis.carto.IAnnotationFeature (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getAnnotationClassIDFieldIndex

public int getAnnotationClassIDFieldIndex()
                                   throws java.io.IOException,
                                          AutomationException
Description copied from interface: IAnnotationClassExtension
The label class ID field index.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getAnnotationClassIDFieldIndex in interface IAnnotationClassExtension
Returns:
The annotationClassIDFieldIndex
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getStatusFieldIndex

public int getStatusFieldIndex()
                        throws java.io.IOException,
                               AutomationException
Description copied from interface: IAnnotationClassExtension
The status field index.

Specified by:
getStatusFieldIndex in interface IAnnotationClassExtension
Returns:
The statusFieldIndex
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isUpdateOnShapeChange

public boolean isUpdateOnShapeChange()
                              throws java.io.IOException,
                                     AutomationException
Description copied from interface: IAnnotationClassExtension
Indicates if an annotation is to be automatically recreated when a feature's shape is changed.

Supported Platforms

Windows, Solaris, Linux

Specified by:
isUpdateOnShapeChange in interface IAnnotationClassExtension
Returns:
The flag
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

isAutoCreate

public boolean isAutoCreate()
                     throws java.io.IOException,
                            AutomationException
Description copied from interface: IAnnotationClassExtension
Indicates if an annotation is to be automatically created when a feature is created.

Supported Platforms

Windows, Solaris, Linux

Specified by:
isAutoCreate in interface IAnnotationClassExtension
Returns:
The flag
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

isRequireSymbolID

public boolean isRequireSymbolID()
                          throws java.io.IOException,
                                 AutomationException
Description copied from interface: IAnnotationClassExtension
Indicates if an annotation must belong to a symbol in the symbol collection.

Supported Platforms

Windows, Solaris, Linux

Specified by:
isRequireSymbolID in interface IAnnotationClassExtension
Returns:
The flag
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

isAllowSymbolOverrides

public boolean isAllowSymbolOverrides()
                               throws java.io.IOException,
                                      AutomationException
Description copied from interface: IAnnotationClassExtension
Indicates if an annotation may override a symbol property even though it references the symbol collection.

Supported Platforms

Windows, Solaris, Linux

Specified by:
isAllowSymbolOverrides in interface IAnnotationClassExtension
Returns:
The flag
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

getOverposterProperties

public IOverposterProperties getOverposterProperties()
                                              throws java.io.IOException,
                                                     AutomationException
Description copied from interface: IAnnotationClassExtension
The overposter properties.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getOverposterProperties in interface IAnnotationClassExtension
Returns:
A reference to a com.esri.arcgis.carto.IOverposterProperties
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getLinkedFeatureClass

public IFeatureClass getLinkedFeatureClass()
                                    throws java.io.IOException,
                                           AutomationException
Description copied from interface: IAnnotationClassExtension
The feature class to which the annotation class is feature linked.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getLinkedFeatureClass in interface IAnnotationClassExtension
Returns:
A reference to a com.esri.arcgis.geodatabase.IFeatureClass
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

setAutoCreate

public void setAutoCreate(boolean flag)
                   throws java.io.IOException,
                          AutomationException
Description copied from interface: IAnnoClassAdmin
Indicates if an annotation is to be automatically created when a feature is created.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setAutoCreate in interface IAnnoClassAdmin
Parameters:
flag - The flag (in)
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

setAnnoProperties

public void setAnnoProperties(IAnnotateLayerPropertiesCollection rhs1)
                       throws java.io.IOException,
                              AutomationException
Description copied from interface: IAnnoClassAdmin
The labeling properties annotation class.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setAnnoProperties in interface IAnnoClassAdmin
Parameters:
rhs1 - A reference to a com.esri.arcgis.carto.IAnnotateLayerPropertiesCollection (in)
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

setReferenceScale

public void setReferenceScale(double rhs1)
                       throws java.io.IOException,
                              AutomationException
Description copied from interface: IAnnoClassAdmin
The reference scale.

Supported Platforms

Windows, Solaris, Linux

Remarks

The reference scale describes the scale at which the annotation text is displayed at the font size specified. As you zoom out, the text will get smaller, and as you zoom in, the text will get larger.

The reference scale should always be in the same units as the horizontal coordinate system (geographic or projected) of the annotation class.

Specified by:
setReferenceScale in interface IAnnoClassAdmin
Parameters:
rhs1 - The rhs1 (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setReferenceScaleUnits

public void setReferenceScaleUnits(int rhs1)
                            throws java.io.IOException,
                                   AutomationException
Description copied from interface: IAnnoClassAdmin
The units of the reference scale.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setReferenceScaleUnits in interface IAnnoClassAdmin
Parameters:
rhs1 - A com.esri.arcgis.system.esriUnits constant (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setSymbolCollectionByRef

public void setSymbolCollectionByRef(ISymbolCollection rhs1)
                              throws java.io.IOException,
                                     AutomationException
Description copied from interface: IAnnoClassAdmin
The symbol collection.

Specified by:
setSymbolCollectionByRef in interface IAnnoClassAdmin
Parameters:
rhs1 - A reference to a com.esri.arcgis.display.ISymbolCollection (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

updateProperties

public void updateProperties()
                      throws java.io.IOException,
                             AutomationException
Description copied from interface: IAnnoClassAdmin
Updates the property set.

Supported Platforms

Windows, Solaris, Linux

Specified by:
updateProperties in interface IAnnoClassAdmin
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

confirmSendRelatedObjectChanged

public boolean confirmSendRelatedObjectChanged(IRelationshipClass relationshipClass,
                                               IObject objectThatChanged)
                                        throws java.io.IOException,
                                               AutomationException
Description copied from interface: IConfirmSendRelatedObjectEvents
Notifies this object that a related object changed and asks if events should be sent.

Supported Platforms

Windows, Solaris, Linux

Specified by:
confirmSendRelatedObjectChanged in interface IConfirmSendRelatedObjectEvents
Parameters:
relationshipClass - A reference to a com.esri.arcgis.geodatabase.IRelationshipClass (in)
objectThatChanged - A reference to a com.esri.arcgis.geodatabase.IObject (in)
Returns:
The doSend
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
IRelatedObjectEvents, IClassExtension

confirmSendRelatedObjectMoved

public boolean confirmSendRelatedObjectMoved(IRelationshipClass relationshipClass,
                                             IObject objectThatChanged,
                                             ILine moveVector)
                                      throws java.io.IOException,
                                             AutomationException
Description copied from interface: IConfirmSendRelatedObjectEvents
Notifies this object that a related object moved and asks if events should be sent.

Supported Platforms

Windows, Solaris, Linux

Specified by:
confirmSendRelatedObjectMoved in interface IConfirmSendRelatedObjectEvents
Parameters:
relationshipClass - A reference to a com.esri.arcgis.geodatabase.IRelationshipClass (in)
objectThatChanged - A reference to a com.esri.arcgis.geodatabase.IObject (in)
moveVector - A reference to a com.esri.arcgis.geometry.ILine (in)
Returns:
The doSend
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
IRelatedObjectEvents, IClassExtension

confirmSendRelatedObjectSetMoved

public boolean confirmSendRelatedObjectSetMoved(IRelationshipClass relationshipClass,
                                                ISet objectsThatChanged,
                                                ILine moveVector)
                                         throws java.io.IOException,
                                                AutomationException
Description copied from interface: IConfirmSendRelatedObjectEvents
Notifies this object that a set of objects with relationships to the input set of objects moved and asks if events should be sent.

Supported Platforms

Windows, Solaris, Linux

Specified by:
confirmSendRelatedObjectSetMoved in interface IConfirmSendRelatedObjectEvents
Parameters:
relationshipClass - A reference to a com.esri.arcgis.geodatabase.IRelationshipClass (in)
objectsThatChanged - A reference to a com.esri.arcgis.system.ISet (in)
moveVector - A reference to a com.esri.arcgis.geometry.ILine (in)
Returns:
The doSend
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
IRelatedObjectEvents, IClassExtension

confirmSendRelatedObjectRotated

public boolean confirmSendRelatedObjectRotated(IRelationshipClass relationshipClass,
                                               IObject objectThatChanged,
                                               IPoint origin,
                                               double angle)
                                        throws java.io.IOException,
                                               AutomationException
Description copied from interface: IConfirmSendRelatedObjectEvents
Notifies this object that a related object rotated and asks if events should be sent.

Supported Platforms

Windows, Solaris, Linux

Specified by:
confirmSendRelatedObjectRotated in interface IConfirmSendRelatedObjectEvents
Parameters:
relationshipClass - A reference to a com.esri.arcgis.geodatabase.IRelationshipClass (in)
objectThatChanged - A reference to a com.esri.arcgis.geodatabase.IObject (in)
origin - A reference to a com.esri.arcgis.geometry.IPoint (in)
angle - The angle (in)
Returns:
The doSend
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
IRelatedObjectEvents, IClassExtension

confirmSendRelatedObjectSetRotated

public boolean confirmSendRelatedObjectSetRotated(IRelationshipClass relationshipClass,
                                                  ISet objectsThatChanged,
                                                  IPoint origin,
                                                  double angle)
                                           throws java.io.IOException,
                                                  AutomationException
Description copied from interface: IConfirmSendRelatedObjectEvents
Notifies this object that a set of objects with relationships to the input set of objects rotated and asks if events should be sent.

Supported Platforms

Windows, Solaris, Linux

Specified by:
confirmSendRelatedObjectSetRotated in interface IConfirmSendRelatedObjectEvents
Parameters:
relationshipClass - A reference to a com.esri.arcgis.geodatabase.IRelationshipClass (in)
objectsThatChanged - A reference to a com.esri.arcgis.system.ISet (in)
origin - A reference to a com.esri.arcgis.geometry.IPoint (in)
angle - The angle (in)
Returns:
The doSend
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
IRelatedObjectEvents, IClassExtension

setUpdateOnShapeChange

public void setUpdateOnShapeChange(boolean flag)
                            throws java.io.IOException,
                                   AutomationException
Description copied from interface: IAnnoClassAdmin2
Indicates if an annotation is to be automatically recreated when a feature's shape is changed.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setUpdateOnShapeChange in interface IAnnoClassAdmin2
Parameters:
flag - The flag (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setRequireSymbolID

public void setRequireSymbolID(boolean rhs1)
                        throws java.io.IOException,
                               AutomationException
Description copied from interface: IAnnoClassAdmin3
Indicates an annotation must belong to a symbol in the symbol collection.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setRequireSymbolID in interface IAnnoClassAdmin3
Parameters:
rhs1 - The rhs1 (in)
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

setAllowSymbolOverrides

public void setAllowSymbolOverrides(boolean rhs1)
                             throws java.io.IOException,
                                    AutomationException
Description copied from interface: IAnnoClassAdmin3
Indicates if an annotation may override a symbol property even though it references the symbol collection.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setAllowSymbolOverrides in interface IAnnoClassAdmin3
Parameters:
rhs1 - The rhs1 (in)
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

setOverposterProperties

public void setOverposterProperties(IOverposterProperties rhs1)
                             throws java.io.IOException,
                                    AutomationException
Description copied from interface: IAnnoClassAdmin3
The overposter properties.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setOverposterProperties in interface IAnnoClassAdmin3
Parameters:
rhs1 - A reference to a com.esri.arcgis.carto.IOverposterProperties (in)
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

updateFieldIndexes

public void updateFieldIndexes()
                        throws java.io.IOException,
                               AutomationException
Description copied from interface: IAnnoClassAdmin3
Updates the indexes of the fields that expose the annotation properties.

Supported Platforms

Windows, Solaris, Linux

Specified by:
updateFieldIndexes in interface IAnnoClassAdmin3
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

isCanEditWithProjection

public boolean isCanEditWithProjection()
                                throws java.io.IOException,
                                       AutomationException
Description copied from interface: IFeatureClassEdit
Indicates if the associated feature class can be edited in projected spaces.

Supported Platforms

Windows, Solaris, Linux

Remarks

ArcMap supports the editing of simple features in a different spatial reference than that of the feature dataset. If the associated feature class is of type esriFTSimple, editing of the feature class in different spatial reference can be prevented by implementing the CanEditWithProjection property and returning False.

Specified by:
isCanEditWithProjection in interface IFeatureClassEdit
Returns:
The isEditable
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.
See Also:
IClassExtension, ISpatialReference

hasCustomSplitPolicyForRelationship

public boolean hasCustomSplitPolicyForRelationship()
                                            throws java.io.IOException,
                                                   AutomationException
Description copied from interface: IFeatureClassEdit
True if the feature class has a custom split policy for handling relationships.

Supported Platforms

Windows, Solaris, Linux

Remarks

When a Feature with related objects is split, the geodatabase will automatically maintain or delete the related objects depending on the type of relationship. In the case of simple relationships, the related objects will be preserved and a new relationship will be created with the feature containing the larger part of the Shape. In the case of composite relationships, the related objects will be deleted.

If this is not the desired behavior, return True for the HasCustomSplitPolicy method. Through the CustomSplitPolicyForRelationship property, a custom split policy can be specified according to subtype and relationship.

Specified by:
hasCustomSplitPolicyForRelationship in interface IFeatureClassEdit
Returns:
The hasCustomPolicy
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
IClassExtension, IRelationshipClass

getCustomSplitPolicyForRelationship

public int getCustomSplitPolicyForRelationship(IRow row,
                                               IRelationshipClass relClass)
                                        throws java.io.IOException,
                                               AutomationException
Description copied from interface: IFeatureClassEdit
The custom split policy for handling relationships.

Supported Platforms

Windows, Solaris, Linux

Remarks

When a Feature with related objects is split, the geodatabase will automatically maintain or delete the related objects depending on the type of relationship. In the case of simple relationships, the related objects will be preserved and a new relationship will be created with the feature containing the larger part of the Shape. In the case of composite relationships, the related objects will be deleted.

If this is not the desired behavior, return True for the HasCustomSplitPolicy method. Through the CustomSplitPolicyForRelationship property, a custom split policy can be specified according to subtype and relationship. The support split policies are defined in the esriRelationshipSplitPolicy enumeration and described below:

esriRSPUseDefault: The default behavior, which is esriRSPPreserveOnLargest for simple relationships and esriRSPDeleteParts for composite relationships.

esriRSPPreserveOnLargest: Preserve related objects and create a relationship with the Feature with the largest part of the split geometry.

esriRSPPreserveOnSmallest: Preserve related objects and create a relationship with the Feature with the smallest part of the split geometry.

esriRSPPreserveOnAll: Preserve related objects and create a relationship with both Features. This option is not valid with relationships with 1..1 cardinality or composite relationships.

esriRSPDeleteRelationship: Delete the relationship.

esriRSPDeleteParts: Delete the related Objects.

Specified by:
getCustomSplitPolicyForRelationship in interface IFeatureClassEdit
Parameters:
row - A reference to a com.esri.arcgis.geodatabase.IRow (in)
relClass - A reference to a com.esri.arcgis.geodatabase.IRelationshipClass (in)
Returns:
A com.esri.arcgis.geodatabase.esriRelationshipSplitPolicy constant
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.
See Also:
IClassExtension, IRelationshipClass

saveClass

public void saveClass(IStream pStm)
               throws java.io.IOException,
                      AutomationException
Description copied from interface: IPersistCustomFeaturesExtension
Writes out to the stream, class information used to aid loading.

Supported Platforms

Windows, Solaris, Linux

Specified by:
saveClass in interface IPersistCustomFeaturesExtension
Parameters:
pStm - A reference to a com.esri.arcgis.system.IStream (in)
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

loadClass

public void loadClass(IStream pStm,
                      boolean[] pCanLoad)
               throws java.io.IOException,
                      AutomationException
Description copied from interface: IPersistCustomFeaturesExtension
Looks at the class information and determines if it can load the features.

Supported Platforms

Windows, Solaris, Linux

Specified by:
loadClass in interface IPersistCustomFeaturesExtension
Parameters:
pStm - A reference to a com.esri.arcgis.system.IStream (in)
pCanLoad - The pCanLoad (in)
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

saveFeature

public void saveFeature(IStream pStm,
                        IFeature pFeature)
                 throws java.io.IOException,
                        AutomationException
Description copied from interface: IPersistCustomFeaturesExtension
Writes out to the stream, feature infomation used to aid loading.

Supported Platforms

Windows, Solaris, Linux

Specified by:
saveFeature in interface IPersistCustomFeaturesExtension
Parameters:
pStm - A reference to a com.esri.arcgis.system.IStream (in)
pFeature - A reference to a com.esri.arcgis.geodatabase.IFeature (in)
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

loadFeature

public void loadFeature(IStream pStm,
                        IFeature pFeature)
                 throws java.io.IOException,
                        AutomationException
Description copied from interface: IPersistCustomFeaturesExtension
Loads the feature information and updates the feature.

Supported Platforms

Windows, Solaris, Linux

Specified by:
loadFeature in interface IPersistCustomFeaturesExtension
Parameters:
pStm - A reference to a com.esri.arcgis.system.IStream (in)
pFeature - A reference to a com.esri.arcgis.geodatabase.IFeature (in)
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

relatedObjectCreated

public void relatedObjectCreated(IRelationshipClass relationshipClass,
                                 IObject objectThatWasCreated)
                          throws java.io.IOException,
                                 AutomationException
Description copied from interface: IRelatedObjectClassEvents
Notifies this object class that a related object was created.

Supported Platforms

Windows, Solaris, Linux

Remarks

The RelationshipClass argument is useful for establishing new relationships. Since an object class may often participate in many relationships, the properties of RelationshipClass can be used to modify behavior of this method.

In order for this method to be called, the relationship class must have messaging set. If the object class which this class extension is associated with is the origin class in the relationship class, then the messaging should be set to Backward or Both. If the object class is the destination class in the relationship, then messaging should be set to Forward or Both.

Specified by:
relatedObjectCreated in interface IRelatedObjectClassEvents
Parameters:
relationshipClass - A reference to a com.esri.arcgis.geodatabase.IRelationshipClass (in)
objectThatWasCreated - A reference to a com.esri.arcgis.geodatabase.IObject (in)
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.
See Also:
IRelationshipClass, IClassExtension

onCreate

public void onCreate(IObjectClassEventsOnCreateEvent theEvent)
              throws java.io.IOException,
                     AutomationException
Description copied from interface: IObjectClassEvents
This event is fired when a new object is created in the object class.

Supported Platforms

Windows, Solaris, Linux

Specified by:
onCreate in interface IObjectClassEvents
Parameters:
theEvent - The event
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

onDelete

public void onDelete(IObjectClassEventsOnDeleteEvent theEvent)
              throws java.io.IOException,
                     AutomationException
Description copied from interface: IObjectClassEvents
This event is fired when an object is deleted from the object class.

Supported Platforms

Windows, Solaris, Linux

Specified by:
onDelete in interface IObjectClassEvents
Parameters:
theEvent - The event
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

onChange

public void onChange(IObjectClassEventsOnChangeEvent theEvent)
              throws java.io.IOException,
                     AutomationException
Description copied from interface: IObjectClassEvents
This event is fired when an object's attributes or geometry is updated.

Supported Platforms

Windows, Solaris, Linux

Specified by:
onChange in interface IObjectClassEvents
Parameters:
theEvent - The event
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

interfaceSupportsErrorInfo

public void interfaceSupportsErrorInfo(GUID riid)
                                throws java.io.IOException,
                                       AutomationException
Description copied from interface: ISupportErrorInfo

Supported Platforms

Windows, Solaris, Linux

Description

Indicates whether the interface supports IErrorInfo.

Specified by:
interfaceSupportsErrorInfo in interface ISupportErrorInfo
Parameters:
riid - A Structure: com.esri.arcgis.support.ms.stdole.GUID (in)
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.