com.esri.arcgis.arcmapui
Class IDocumentEventsDispProxy

java.lang.Object
  extended by com.esri.arcgis.interop.Dispatch
      extended by com.esri.arcgis.arcmapui.IDocumentEventsDispProxy
All Implemented Interfaces:
IDocumentEventsDisp, Externalizable, Serializable, EventListener

public class IDocumentEventsDispProxy
extends com.esri.arcgis.interop.Dispatch
implements IDocumentEventsDisp, Serializable

Provides access to events that occur in ArcMap.

Remarks

When you are working in VBA, the IDocumentEventsDisp interface is automatically exposed for you. There is a MxDocument object defined in the ThisDocument class module. Select that object in the Object Box on the ThisDocument code window and then you can choose any of its events by clicking in the Procedure/Method Box on the ThisDocument code window. This stubs out the event procedures and you can write your code here.

In ArcMap there can be up to three VBA projects (Project, TemplateProject, and Normal) loaded and each one has a ThisDocument class module. You can write code for each document event in each ThisDocument code window. It is important to know the order in which the document events for each VBA project get fired. For example, when the NewDocument event occurs, the code in the MxDocument_NewDocument function in Project.ThisDocument executes first, then in TemplateProject.ThisDocument, and finally in Normal.ThisDocument.

If an event function in Project.ThisDocument returns True, then the code for this event in TemplateProject.ThisDocument and Normal.ThisDocument does not get executed. This provides a mechanism for a document to override any code that might be in the base template or the Normal template.

When To Use

Use the IDocumentEventsDisp interface to perform some action when the ArcMap document events occur.

Product Availability

Available with ArcGIS Desktop.

See Also:
Serialized Form

Field Summary
 boolean noncastable
           
 
Fields inherited from class com.esri.arcgis.interop.Dispatch
DISPATCH_METHOD, DISPATCH_PROPERTYGET, DISPATCH_PROPERTYPUT, DISPATCH_PROPERTYPUTREF, objRef
 
Constructor Summary
  IDocumentEventsDispProxy()
           
  IDocumentEventsDispProxy(Object obj)
           
protected IDocumentEventsDispProxy(Object obj, String iid)
           
 
Method Summary
 boolean activeViewChanged(IDocumentEventsDispActiveViewChangedEvent theEvent)
          Fired when the active view has changed.
 void addListener(String iidStr, Object theListener, Object theSource)
           
 boolean beforeCloseDocument(IDocumentEventsDispBeforeCloseDocumentEvent theEvent)
          Fired before a document is closed.
 boolean closeDocument(IDocumentEventsDispCloseDocumentEvent theEvent)
          Fired when a document is closed.
 boolean mapsChanged(IDocumentEventsDispMapsChangedEvent theEvent)
          Fired when a change is made to the map collection.
 boolean newDocument(IDocumentEventsDispNewDocumentEvent theEvent)
          Fired when a new document is created.
 boolean onContextMenu(IDocumentEventsDispOnContextMenuEvent theEvent)
          Indicates if a context menu should be displayed at the given xy location.
 boolean openDocument(IDocumentEventsDispOpenDocumentEvent theEvent)
          Fired when a document is opened.
 void removeListener(String iidStr, Object theListener)
           
 boolean vBAReset(IDocumentEventsDispVBAResetEvent theEvent)
          Fired when VBA is reset.
 
Methods inherited from class com.esri.arcgis.interop.Dispatch
bindUsingMoniker, constructVtblPosTable, convertToNative, cookieForListener, createDispatch, createObjrefMonikerDisplayName, equals, getActiveObject, getActiveObject, getDefaultProperty, getDispatchIdOfName, getLastErrorCode, getMtsObjectContext, getObjRef, getPropertyByName, getPropertyByName, getVtblPos, hashCode, initDispatch, invoke, invokeMethodByName, invokeMethodByName, invokeMethodByName, invokePropertyGetByName, invokePropertyPutByName, invokePropertyPutByRefByName, isNativeMode, isObjRef, optimizedVtblInvoke, queryInterface, readExternal, release, setNativeMode, setPropertyByName, toString, vtblInvoke, writeExternal
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

noncastable

public boolean noncastable
Constructor Detail

IDocumentEventsDispProxy

public IDocumentEventsDispProxy()

IDocumentEventsDispProxy

public IDocumentEventsDispProxy(Object obj)
                         throws IOException
Throws:
IOException

IDocumentEventsDispProxy

protected IDocumentEventsDispProxy(Object obj,
                                   String iid)
                            throws IOException
Throws:
IOException
Method Detail

addListener

public void addListener(String iidStr,
                        Object theListener,
                        Object theSource)
                 throws IOException
Overrides:
addListener in class com.esri.arcgis.interop.Dispatch
Throws:
IOException

removeListener

public void removeListener(String iidStr,
                           Object theListener)
                    throws IOException
Overrides:
removeListener in class com.esri.arcgis.interop.Dispatch
Throws:
IOException

activeViewChanged

public boolean activeViewChanged(IDocumentEventsDispActiveViewChangedEvent theEvent)
                          throws IOException,
                                 AutomationException
Fired when the active view has changed.

Remarks

There are two different view types in ArcMap--data view and page layout view. Only one type of view can be active in the application at a time; the one with the focus is the active view. The ActiveViewChanged event occurs when the active view is changed. For example, this event is fired when ArcMap is switched from data view to page layout view or vice versa.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

mapsChanged

public boolean mapsChanged(IDocumentEventsDispMapsChangedEvent theEvent)
                    throws IOException,
                           AutomationException
Fired when a change is made to the map collection.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

onContextMenu

public boolean onContextMenu(IDocumentEventsDispOnContextMenuEvent theEvent)
                      throws IOException,
                             AutomationException
Indicates if a context menu should be displayed at the given xy location. Return true if handled.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

newDocument

public boolean newDocument(IDocumentEventsDispNewDocumentEvent theEvent)
                    throws IOException,
                           AutomationException
Fired when a new document is created.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

openDocument

public boolean openDocument(IDocumentEventsDispOpenDocumentEvent theEvent)
                     throws IOException,
                            AutomationException
Fired when a document is opened.

Remarks

This event occurs when a document is opened in ArcMap.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

closeDocument

public boolean closeDocument(IDocumentEventsDispCloseDocumentEvent theEvent)
                      throws IOException,
                             AutomationException
Fired when a document is closed.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

beforeCloseDocument

public boolean beforeCloseDocument(IDocumentEventsDispBeforeCloseDocumentEvent theEvent)
                            throws IOException,
                                   AutomationException
Fired before a document is closed. Return True to abort the close process.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

vBAReset

public boolean vBAReset(IDocumentEventsDispVBAResetEvent theEvent)
                 throws IOException,
                        AutomationException
Fired when VBA is reset.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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