com.esri.arcgis.controls
Class EngineInkEnvironment

java.lang.Object
  extended by com.esri.arcgis.controls.EngineInkEnvironment
All Implemented Interfaces:
IActiveViewEvents, IGraphicsContainerEvents, IEngineInkEnvironment, com.esri.arcgis.interop.RemoteObjRef, Serializable, EventListener

public class EngineInkEnvironment
extends Object
implements com.esri.arcgis.interop.RemoteObjRef, IEngineInkEnvironment, IGraphicsContainerEvents, IActiveViewEvents

A singleton object representing Engine ink environment.

Description

The EngineInkEnvironment object is a singleton object (only one instance of the EngineInkEnvironment object is supported per thread) that manages the state of ink collection and the ink sketch.

Product Availability

Available with ArcGIS Engine.

Singleton:

This type is a singleton.

See Also:
Serialized Form

Constructor Summary
EngineInkEnvironment()
          Constructs a EngineInkEnvironment using ArcGIS Engine.
EngineInkEnvironment(Object obj)
          Deprecated. As of ArcGIS 9.2, replaced by normal Java casts.
EngineInkEnvironment theEngineInkEnvironment = (EngineInkEnvironment) obj;
 
Method Summary
 void addIEngineInkEnvironmentEventsListener(IEngineInkEnvironmentEvents theListener)
          addIEngineInkEnvironmentEventsListener.
 void afterDraw(IActiveViewEventsAfterDrawEvent theEvent)
          Fired after the specified phase is drawn.
 void afterItemDraw(IActiveViewEventsAfterItemDrawEvent theEvent)
          Fired after an individual view item is drawn.
 void allElementsDeleted(IGraphicsContainerEventsAllElementsDeletedEvent theEvent)
          Occurs when all the elements are deleted.
 void clear()
          Deletes any active ink from the screen.
 void contentsChanged(IActiveViewEventsContentsChangedEvent theEvent)
          Fired when the contents of the view changes.
 void contentsCleared(IActiveViewEventsContentsClearedEvent theEvent)
          Fired when the contents of the view is cleared.
 void elementAdded(IGraphicsContainerEventsElementAddedEvent theEvent)
          Occurs when the element is added.
 void elementDeleted(IGraphicsContainerEventsElementDeletedEvent theEvent)
          Occurs when the element is deleted.
 void elementsAdded(IGraphicsContainerEventsElementsAddedEvent theEvent)
          Occurs when the elements are added.
 void elementUpdated(IGraphicsContainerEventsElementUpdatedEvent theEvent)
          Occurs when the element is updated.
 boolean equals(Object o)
          Compare this object with another
 void focusMapChanged(IActiveViewEventsFocusMapChangedEvent theEvent)
          Fired when a new map is made active.
static String getClsid()
          getClsid.
 int getInkCollectionMode()
          Indicates if the extension is collecting ink.
 Object getInkCollector()
          The internal ink collecting object.
 Object getInkGeometry()
          The current Ink sketch as a geometry.
 float getToolCommitDelay()
          The auto commit delay interval in seconds.
 int getToolCommitType()
          The ink tool commit type.
 int hashCode()
          the hashcode for this object
 boolean isAlwaysShowAlternates()
          Indicates if the alternates dialog will always be shown when performing text recognition.
 boolean isAutoRecognizeInkGraphics()
          Indicates whether to attempt to recognize newly created InkGraphics as text.
 boolean isGeneralizeInk()
          Indicates whether the Ink should be generalized.
 boolean isMapNavigationGesturesEnabled()
          Indicates whether the map navigation gestures should be enabled.
 boolean isOnlyEraseActiveInkSketch()
          Indicates if only the active ink sketch may be erased.
 boolean isPressureSensitiveStylus()
          Indicates if the ink stylus is pressure-sensitive.
 boolean isProjectInkGraphicGeometry()
          Indicates whether to project an InkGraphic's Geometry.
 boolean isScratchoutEnabled()
          Indicates whether the scratch-out gesture should be enabled.
 void itemAdded(IActiveViewEventsItemAddedEvent theEvent)
          Fired when an item is added to the view.
 void itemDeleted(IActiveViewEventsItemDeletedEvent theEvent)
          Fired when an item is deleted from the view.
 void itemReordered(IActiveViewEventsItemReorderedEvent theEvent)
          Fired when a view item is reordered.
 void removeIEngineInkEnvironmentEventsListener(IEngineInkEnvironmentEvents theListener)
          removeIEngineInkEnvironmentEventsListener.
 void selectionChanged(IActiveViewEventsSelectionChangedEvent theEvent)
          Call this function to fire the selection changed event.
 void setAlwaysShowAlternates(boolean showAlternates)
          Indicates if the alternates dialog will always be shown when performing text recognition.
 void setAutoRecognizeInkGraphics(boolean autoRecognize)
          Indicates whether to attempt to recognize newly created InkGraphics as text.
 void setGeneralizeInk(boolean generalizeInk)
          Indicates whether the Ink should be generalized.
 void setMapNavigationGesturesEnabled(boolean pEnabled)
          Indicates whether the map navigation gestures should be enabled.
 void setOnlyEraseActiveInkSketch(boolean onlyActive)
          Indicates if only the active ink sketch may be erased.
 void setPressureSensitiveStylus(boolean usePressureSensitive)
          Indicates if the ink stylus is pressure-sensitive.
 void setProjectInkGraphicGeometry(boolean projectInkGraphics)
          Indicates whether to project an InkGraphic's Geometry.
 void setScratchoutEnabled(boolean pScratchout)
          Indicates whether the scratch-out gesture should be enabled.
 void setToolCommitDelay(float pDelay)
          The auto commit delay interval in seconds.
 void setToolCommitType(int pToolCommitType)
          The ink tool commit type.
 void spatialReferenceChanged(IActiveViewEventsSpatialReferenceChangedEvent theEvent)
          Fired when the spatial reference is changed.
 void start(boolean bGesturesOnly)
          Starts obtaining ink from the stylus.
 void stop(boolean bKeepInk)
          Stops obtaining ink from the stylus.
 void viewRefreshed(IActiveViewEventsViewRefreshedEvent theEvent)
          Fired when view is refreshed before draw happens.
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.esri.arcgis.interop.RemoteObjRef
getJintegraDispatch, release
 

Constructor Detail

EngineInkEnvironment

public EngineInkEnvironment()
                     throws IOException,
                            UnknownHostException
Constructs a EngineInkEnvironment using ArcGIS Engine.

Throws:
IOException - if there are interop problems
UnknownHostException - if there are interop problems

EngineInkEnvironment

public EngineInkEnvironment(Object obj)
                     throws IOException
Deprecated. As of ArcGIS 9.2, replaced by normal Java casts.
EngineInkEnvironment theEngineInkEnvironment = (EngineInkEnvironment) obj;

Construct a EngineInkEnvironment using a reference to such an object returned from ArcGIS Engine or Server. This is semantically equivalent to casting obj to EngineInkEnvironment.

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

getClsid

public static String getClsid()
getClsid.


equals

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

Overrides:
equals in class Object

hashCode

public int hashCode()
the hashcode for this object

Overrides:
hashCode in class Object

addIEngineInkEnvironmentEventsListener

public void addIEngineInkEnvironmentEventsListener(IEngineInkEnvironmentEvents theListener)
                                            throws IOException
addIEngineInkEnvironmentEventsListener. Listen to events generated by this class.

Parameters:
theListener - An object that implements the com.esri.arcgis.controls.IEngineInkEnvironmentEvents interface.
Throws:
IOException - If there are communications problems.

removeIEngineInkEnvironmentEventsListener

public void removeIEngineInkEnvironmentEventsListener(IEngineInkEnvironmentEvents theListener)
                                               throws IOException
removeIEngineInkEnvironmentEventsListener. Stop listening to events generated by this class.

Parameters:
theListener - An object that implements the com.esri.arcgis.controls.IEngineInkEnvironmentEvents interface.
Throws:
IOException - If there are communications problems.

start

public void start(boolean bGesturesOnly)
           throws IOException,
                  AutomationException
Starts obtaining ink from the stylus.

Description

Starts the collection of ink from the stylus. Access the ink collected using the InkGeometry property or as a Microsoft InkOverlay object using the InkCollector property.

Product Availability

Available with ArcGIS Engine.

Specified by:
start in interface IEngineInkEnvironment
Parameters:
bGesturesOnly - The bGesturesOnly (in, optional, pass false if not required)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

stop

public void stop(boolean bKeepInk)
          throws IOException,
                 AutomationException
Stops obtaining ink from the stylus.

Description

Stops the collection of ink from the stylus. Access the ink collected using the InkGeometry property or as a Microsoft InkOverlay object using the InkCollector property.

Product Availability

Available with ArcGIS Engine.

Specified by:
stop in interface IEngineInkEnvironment
Parameters:
bKeepInk - The bKeepInk (in, optional, pass false if not required)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

clear

public void clear()
           throws IOException,
                  AutomationException
Deletes any active ink from the screen.

Description

Clears the ink strokes from the ink collection.

Product Availability

Available with ArcGIS Engine.

Specified by:
clear in interface IEngineInkEnvironment
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getInkCollectionMode

public int getInkCollectionMode()
                         throws IOException,
                                AutomationException
Indicates if the extension is collecting ink.

Description

Returns the current collection mode of the class. There are 3 modes for collection: NotCollecting, InkAndGestures, and Gestures only. Note that gestures are supported on tablet pcs only.

Product Availability

Available with ArcGIS Engine.

Specified by:
getInkCollectionMode in interface IEngineInkEnvironment
Returns:
A com.esri.arcgis.controls.esriEngineInkCollectionMode constant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getInkCollector

public Object getInkCollector()
                       throws IOException,
                              AutomationException
The internal ink collecting object.

Description

Returns an InkOverlay object. To get the InkOverlay object, reference the Microsoft Tablet PC Type Library. Properties of the Ink itself can be changed with the native Ink objects.

Product Availability

Available with ArcGIS Engine.

Specified by:
getInkCollector in interface IEngineInkEnvironment
Returns:
A reference to another Object (IUnknown)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setToolCommitType

public void setToolCommitType(int pToolCommitType)
                       throws IOException,
                              AutomationException
The ink tool commit type.

Product Availability

Available with ArcGIS Engine.

Specified by:
setToolCommitType in interface IEngineInkEnvironment
Parameters:
pToolCommitType - A com.esri.arcgis.controls.esriEngineInkToolCommitType constant (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getToolCommitType

public int getToolCommitType()
                      throws IOException,
                             AutomationException
The ink tool commit type.

Description

The ToolCommitType property controls the Tablet "Auto-Finish" options that are on the Tablet Options dialog. If the ToolCommitType is not set to ETPC_Manual, then the ToolCommitDelay is used to automatically complete the ink sketch within x number of seconds.

Product Availability

Available with ArcGIS Engine.

Specified by:
getToolCommitType in interface IEngineInkEnvironment
Returns:
A com.esri.arcgis.controls.esriEngineInkToolCommitType constant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setToolCommitDelay

public void setToolCommitDelay(float pDelay)
                        throws IOException,
                               AutomationException
The auto commit delay interval in seconds.

Product Availability

Available with ArcGIS Engine.

Specified by:
setToolCommitDelay in interface IEngineInkEnvironment
Parameters:
pDelay - The pDelay (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getToolCommitDelay

public float getToolCommitDelay()
                         throws IOException,
                                AutomationException
The auto commit delay interval in seconds.

Description

The ToolCommitDelay property is used to automatically complete the ink sketch within x number of seconds. If the ToolCommitType is set to ETPC_Manual, then this property is not used.

Product Availability

Available with ArcGIS Engine.

Specified by:
getToolCommitDelay in interface IEngineInkEnvironment
Returns:
The pDelay
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setPressureSensitiveStylus

public void setPressureSensitiveStylus(boolean usePressureSensitive)
                                throws IOException,
                                       AutomationException
Indicates if the ink stylus is pressure-sensitive.

Product Availability

Available with ArcGIS Engine.

Specified by:
setPressureSensitiveStylus in interface IEngineInkEnvironment
Parameters:
usePressureSensitive - The usePressureSensitive (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isPressureSensitiveStylus

public boolean isPressureSensitiveStylus()
                                  throws IOException,
                                         AutomationException
Indicates if the ink stylus is pressure-sensitive.

Description

Enables or disables the pressure sensitivity of the stylus.

Product Availability

Available with ArcGIS Engine.

Specified by:
isPressureSensitiveStylus in interface IEngineInkEnvironment
Returns:
The usePressureSensitive
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setGeneralizeInk

public void setGeneralizeInk(boolean generalizeInk)
                      throws IOException,
                             AutomationException
Indicates whether the Ink should be generalized.

Product Availability

Available with ArcGIS Engine.

Specified by:
setGeneralizeInk in interface IEngineInkEnvironment
Parameters:
generalizeInk - The generalizeInk (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isGeneralizeInk

public boolean isGeneralizeInk()
                        throws IOException,
                               AutomationException
Indicates whether the Ink should be generalized.

Description

Generalizes the ink sketch to reduce the size of the ink geometry that is created.

Product Availability

Available with ArcGIS Engine.

Specified by:
isGeneralizeInk in interface IEngineInkEnvironment
Returns:
The generalizeInk
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getInkGeometry

public Object getInkGeometry()
                      throws IOException,
                             AutomationException
The current Ink sketch as a geometry.

Description

A representation of the Ink that has been captured.

Product Availability

Available with ArcGIS Engine.

Specified by:
getInkGeometry in interface IEngineInkEnvironment
Returns:
A reference to another Object (IUnknown)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setAutoRecognizeInkGraphics

public void setAutoRecognizeInkGraphics(boolean autoRecognize)
                                 throws IOException,
                                        AutomationException
Indicates whether to attempt to recognize newly created InkGraphics as text.

Product Availability

Available with ArcGIS Engine.

Specified by:
setAutoRecognizeInkGraphics in interface IEngineInkEnvironment
Parameters:
autoRecognize - The autoRecognize (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isAutoRecognizeInkGraphics

public boolean isAutoRecognizeInkGraphics()
                                   throws IOException,
                                          AutomationException
Indicates whether to attempt to recognize newly created InkGraphics as text.

Description

When AutoRecgonizeInkGraphics is set to true, every time that an ink graphic is created or updated, its ink will be recognized and the textual representation will be stored with the graphic element. The ControlsInkFindInkCommand will then use the text property to search for ink stored in a graphics layer. This is important if the Find is going to be performed on a non-tablet pc as recognition is only support on tablets.

Product Availability

Available with ArcGIS Engine.

Specified by:
isAutoRecognizeInkGraphics in interface IEngineInkEnvironment
Returns:
The autoRecognize
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setScratchoutEnabled

public void setScratchoutEnabled(boolean pScratchout)
                          throws IOException,
                                 AutomationException
Indicates whether the scratch-out gesture should be enabled.

Product Availability

Available with ArcGIS Engine.

Specified by:
setScratchoutEnabled in interface IEngineInkEnvironment
Parameters:
pScratchout - The pScratchout (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isScratchoutEnabled

public boolean isScratchoutEnabled()
                            throws IOException,
                                   AutomationException
Indicates whether the scratch-out gesture should be enabled.

Description

The ScratchOutEnabled property determines whether or not the ScratchOut gesture can be used to erase ink strokes. If ink is being used to create a graphic representation, pen motions can be confused as a scratch out gesture and therefore turning off this property can be quite useful.

Product Availability

Available with ArcGIS Engine.

Specified by:
isScratchoutEnabled in interface IEngineInkEnvironment
Returns:
The pScratchout
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setProjectInkGraphicGeometry

public void setProjectInkGraphicGeometry(boolean projectInkGraphics)
                                  throws IOException,
                                         AutomationException
Indicates whether to project an InkGraphic's Geometry.

Product Availability

Available with ArcGIS Engine.

Specified by:
setProjectInkGraphicGeometry in interface IEngineInkEnvironment
Parameters:
projectInkGraphics - The projectInkGraphics (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isProjectInkGraphicGeometry

public boolean isProjectInkGraphicGeometry()
                                    throws IOException,
                                           AutomationException
Indicates whether to project an InkGraphic's Geometry.

Description

Sets whether or not ink will rendered as polylines when the data frame is projected. If the projection is quite different from the projection that ink was captured in, the ink display result may be less than desirable. By rendering as polyline geometry, the result will be slightly coarse, but more legible.

Product Availability

Available with ArcGIS Engine.

Specified by:
isProjectInkGraphicGeometry in interface IEngineInkEnvironment
Returns:
The projectInkGraphics
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setAlwaysShowAlternates

public void setAlwaysShowAlternates(boolean showAlternates)
                             throws IOException,
                                    AutomationException
Indicates if the alternates dialog will always be shown when performing text recognition.

Product Availability

Available with ArcGIS Engine.

Specified by:
setAlwaysShowAlternates in interface IEngineInkEnvironment
Parameters:
showAlternates - The showAlternates (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isAlwaysShowAlternates

public boolean isAlwaysShowAlternates()
                               throws IOException,
                                      AutomationException
Indicates if the alternates dialog will always be shown when performing text recognition.

Description

When using the ControlsInkFindInkCommand, alternate text representations can be shown if recognition results are poor. Setting the AlwaysShowAlternates to true will force the ControlsInkFindInkCommand to display all textual representations of the ink sketched.

Product Availability

Available with ArcGIS Engine.

Specified by:
isAlwaysShowAlternates in interface IEngineInkEnvironment
Returns:
The showAlternates
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setOnlyEraseActiveInkSketch

public void setOnlyEraseActiveInkSketch(boolean onlyActive)
                                 throws IOException,
                                        AutomationException
Indicates if only the active ink sketch may be erased.

Product Availability

Available with ArcGIS Engine.

Specified by:
setOnlyEraseActiveInkSketch in interface IEngineInkEnvironment
Parameters:
onlyActive - The onlyActive (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isOnlyEraseActiveInkSketch

public boolean isOnlyEraseActiveInkSketch()
                                   throws IOException,
                                          AutomationException
Indicates if only the active ink sketch may be erased.

Description

Indicates whether or not the ControlsInkEraserTool can delete just the active ink sketch or any ink from the map. When the OnlyEraseActiveInkSketch is set to true the ControlsInkEraserTool will only remove ink that has not yet been committed (i.e. active). When the OnlyEraseActiveInkSketch is set to false the ControlsInkEraserTool will delete any ink from the map.

By default only the active ink sketch can be erased.

Product Availability

Available with ArcGIS Engine.

Specified by:
isOnlyEraseActiveInkSketch in interface IEngineInkEnvironment
Returns:
The onlyActive
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setMapNavigationGesturesEnabled

public void setMapNavigationGesturesEnabled(boolean pEnabled)
                                     throws IOException,
                                            AutomationException
Indicates whether the map navigation gestures should be enabled.

Product Availability

Available with ArcGIS Engine.

Specified by:
setMapNavigationGesturesEnabled in interface IEngineInkEnvironment
Parameters:
pEnabled - The pEnabled (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isMapNavigationGesturesEnabled

public boolean isMapNavigationGesturesEnabled()
                                       throws IOException,
                                              AutomationException
Indicates whether the map navigation gestures should be enabled.

Description

Indicates whether or not a map navigation gesture can be made using a pen. Map navigation gestures are only supported on platforms that recognize gestures (e.g. Microsoft Windows XP Tablet PC Edition or the appropriate Tablet PC SDK).

If ink is being used to create graphic representation then pen motions (e.g. V) can be confused as map gestures (Pan Down) and therefore it is useful to be able to turn off this property, by setting MapNavigationGesturesEnabled to false.

By default map navigation gestures are disabled.

Product Availability

Available with ArcGIS Engine.

Specified by:
isMapNavigationGesturesEnabled in interface IEngineInkEnvironment
Returns:
The pEnabled
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

elementAdded

public void elementAdded(IGraphicsContainerEventsElementAddedEvent theEvent)
                  throws IOException,
                         AutomationException
Occurs when the element is added.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

elementsAdded

public void elementsAdded(IGraphicsContainerEventsElementsAddedEvent theEvent)
                   throws IOException,
                          AutomationException
Occurs when the elements are added.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

elementDeleted

public void elementDeleted(IGraphicsContainerEventsElementDeletedEvent theEvent)
                    throws IOException,
                           AutomationException
Occurs when the element is deleted.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

allElementsDeleted

public void allElementsDeleted(IGraphicsContainerEventsAllElementsDeletedEvent theEvent)
                        throws IOException,
                               AutomationException
Occurs when all the elements are deleted.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

elementUpdated

public void elementUpdated(IGraphicsContainerEventsElementUpdatedEvent theEvent)
                    throws IOException,
                           AutomationException
Occurs when the element is updated.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

contentsChanged

public void contentsChanged(IActiveViewEventsContentsChangedEvent theEvent)
                     throws IOException,
                            AutomationException
Fired when the contents of the view changes.

Remarks

The Map object fires this event when a new document is loaded. Adding a new layer to a Map does not trigger this event.

The PageLayout object fires the event when IGraphicsContainer::DeleteAllElements in called and when a new document is loaded.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
contentsChanged in interface IActiveViewEvents
Parameters:
theEvent - The event
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
IActiveView.contentsChanged()

contentsCleared

public void contentsCleared(IActiveViewEventsContentsClearedEvent theEvent)
                     throws IOException,
                            AutomationException
Fired when the contents of the view is cleared.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

itemAdded

public void itemAdded(IActiveViewEventsItemAddedEvent theEvent)
               throws IOException,
                      AutomationException
Fired when an item is added to the view.

Remarks

The Map fires the event every time a new layer is added.

The PageLayout fires this event whenever a new element is added to the layout. Elements include not only graphics but data frames as well.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

itemDeleted

public void itemDeleted(IActiveViewEventsItemDeletedEvent theEvent)
                 throws IOException,
                        AutomationException
Fired when an item is deleted from the view.

Remarks

The PageLayout object fires this event whenever elements are deleted from the layout.

The Map object fires this event when a layer is removed.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

itemReordered

public void itemReordered(IActiveViewEventsItemReorderedEvent theEvent)
                   throws IOException,
                          AutomationException
Fired when a view item is reordered.

Remarks

The Map objects only fire this event whenever IMap::MoveLayer is called. In the ArcMap application, this occurs when you reorder layers in the table of contents. The Map will also fire this event when new layers are added.

The PageLayout object fires this event when changing the order of graphics. For example, IGraphicsContainer::BringToFront, PutElementOrder, SendToBack, SendBackward, and BringForward all fire this event. These functions are on ArcMap's Drawing menu under the Order pull right menu. Although the Map object is also a graphics container, it does not fire this event when its graphics are reordered.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

selectionChanged

public void selectionChanged(IActiveViewEventsSelectionChangedEvent theEvent)
                      throws IOException,
                             AutomationException
Call this function to fire the selection changed event.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

viewRefreshed

public void viewRefreshed(IActiveViewEventsViewRefreshedEvent theEvent)
                   throws IOException,
                          AutomationException
Fired when view is refreshed before draw happens.

Description

Method that gets fired in response to IActiveView::Refresh and IActiveView::PartialRefresh.

Remarks

This event is useful in the case where you're watching for something to change in the view and there aren't any specific events for that change (e.g. ContentsChanged, ItemAdded). You can always listen for this method as a last resort. Care must be taken however to be very efficient in your implementation of this event because it will be called quite often.

The event parameters directly coincide with the arguments to IActiveView::PartialRefresh. For additional information about the arguments, see the help for that method.

If the event object connects to both the layout and a map, then the view parameter tells you which object initiated the event.

In an implementation of this method you typically want to check the phase and respond to only one. Otherwise, your code will execute multiple times per drawing sequence.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

afterDraw

public void afterDraw(IActiveViewEventsAfterDrawEvent theEvent)
               throws IOException,
                      AutomationException
Fired after the specified phase is drawn.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

afterItemDraw

public void afterItemDraw(IActiveViewEventsAfterItemDrawEvent theEvent)
                   throws IOException,
                          AutomationException
Fired after an individual view item is drawn. Example: view items include layers in a map or elements in a page layout.

Remarks

AfterItemDraw can be used to execute after each individual item has drawn. Event firing can be an expensive operation (time consuming) when there are many layers in a map, however. As a result, the AfterItemDraw event is only fired when the IViewManger::VerboseEvents property is set to True. By default this property is False.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

focusMapChanged

public void focusMapChanged(IActiveViewEventsFocusMapChangedEvent theEvent)
                     throws IOException,
                            AutomationException
Fired when a new map is made active.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

spatialReferenceChanged

public void spatialReferenceChanged(IActiveViewEventsSpatialReferenceChangedEvent theEvent)
                             throws IOException,
                                    AutomationException
Fired when the spatial reference is changed.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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