Extension for working with topology.
Product Availability
Supported Platforms
Interfaces
Interfaces | Description |
---|---|
IActiveViewEvents (esriCarto) | Provides access to events that occur when the state of the active view changes. |
IConnectionPointContainer | Supports connection points for connectable objects. |
IEditEvents (esriEditor) | Provides access to editor events. Implement it to listen for specific events that occur during an edit session. |
IEditEvents2 (esriEditor) | Provides access to more editor events. Implement it to listen for specific events that occur during an edit session. |
IEditEvents3 (esriEditor) | Provides access to more editor events. Implement it to listen for specific events that occur during an edit session. |
IExtension (esriSystem) | Provides access to members that define an extension. |
IObjectClassEvents (esriGeoDatabase) | Provides access to events that occur with an object class. |
IPersistStream (esriSystem) | |
ITopologyExtension | Provides access to members that control a topology. |
ITopologyExtension2 | Provides access to additional members that control the topology extension. |
ITopologyExtension3 | Provides access to additional members that control the topology extension. |
ITopologyExtension4 | Provides access to additional members that control the topology extension. |
Event Interfaces
Interfaces | Description |
---|---|
ITopologyExtensionEvents (default) | Provides access to events that occur when working with a topology. |
ITopologyExtensionEvents2 | Provides access to more events that occur when working with a topology. |
Remarks
The TopologyExtension CoClass is the main component used when working with a topology inside ArcMap. From the TopologyExtension you can access the current MapTopology, work with the set of active topology errors, or listen for topology-related events.
In order to use the TopologyExtension you must be inside an edit session.
To get a reference to the TopologyExtension extension, use IApplication::FindExtensionByCLSID or IApplication::FindExtensionByName.
The following C# code example shows the method being used to acquire a reference of type ITopologyExtension to the TopologyExtension object.
public void GetTopologyExtension()
{
UID extUid = new UIDClass();
extUid.Value = "esriEditorExt.TopologyExtension";
//You can get app from ICommand :: OnCreate() hook parameter
ITopologyExtension topologyExt = app.FindExtensionByCLSID(extUid) as ITopologyExtension;
}
The following VBNet code example shows the former method being used to acquire a reference of type ITopologyExtension to the TopologyExtension object.
Public Sub GetTopologyExtension()
'You can get app from ICommand :: OnCreate() hook parameter
Dim extUid As UID = New UIDClass()
extUid.Value = "esriEditorExt.TopologyExtension"
Dim topologyExt As ITopologyExtension = TryCast(app.FindExtensionByCLSID(extUid), ITopologyExtension)
End Sub
Working with Events
When working with TopologyExtension's default outbound interface in Visual Basic 6 declare variables as follows: Private WithEvents pTopologyExtension as TopologyExtension
When implementing ITopologyExtensionEvents2 declare variables as follows:Private WithEvents pAdjustment as Adjustment