com.esri.arcgis.framework
Class ICustomizationFilterProxy

java.lang.Object
  extended by com.esri.arcgis.interop.Dispatch
      extended by com.esri.arcgis.framework.ICustomizationFilterProxy
All Implemented Interfaces:
ICustomizationFilter, Externalizable, Serializable

public class ICustomizationFilterProxy
extends com.esri.arcgis.interop.Dispatch
implements ICustomizationFilter, Serializable

Provides access to members that define a customization filter.

Description

A customization filter provides a mechanism to lock parts of the customization functionality in the ArcGIS applications. You should only use customization filters in locked down applications where you have complete control of the application setup and how the users interact with that application.

Remarks

To activate your customization filter you would pass it into the IApplication::LockCustomization method. You can make the call to LockCustomization in a simple VBA macro, in the MxDocument_OpenDocument or MxDocument_NewDocument event in VBA, or in an extension. If this is done in a macro or the open document event in VBA, make sure that the VBA project has a reference the class that implements the customization filter.

If the customization filter is applied in an extension, you must be aware of the application start up sequence in order for this to work correctly. Also be aware that your customization filter applied by an extension may override other locking logic that might be saved in an existing ArcMap document or that another extension might activate a customization filter before your extension is even loaded. There can only be one active customization filter in a running application.

When To Use

To create a custom customization filter you would implement the ICustomizationFilter interface in a class module. The ICustomizationFilter interface has an OnCustomizationEvent event that gets fired whenever a user attempts any type of customization.

Product Availability

Available with ArcGIS Desktop.

See Also:
IApplication.lockCustomization(String, com.esri.arcgis.framework.ICustomizationFilter), 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
  ICustomizationFilterProxy()
           
  ICustomizationFilterProxy(Object obj)
           
protected ICustomizationFilterProxy(Object obj, String iid)
           
 
Method Summary
 void addListener(String iidStr, Object theListener, Object theSource)
           
 boolean onCustomizationEvent(int custEventType, Object eventCtx)
          Occurs when certain types of customization occur.
 void removeListener(String iidStr, Object theListener)
           
 
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

ICustomizationFilterProxy

public ICustomizationFilterProxy()

ICustomizationFilterProxy

public ICustomizationFilterProxy(Object obj)
                          throws IOException
Throws:
IOException

ICustomizationFilterProxy

protected ICustomizationFilterProxy(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

onCustomizationEvent

public boolean onCustomizationEvent(int custEventType,
                                    Object eventCtx)
                             throws IOException,
                                    AutomationException
Occurs when certain types of customization occur.

Description


custEventType One of six types of customization events that can happen. These are defined by the esriCustomizationEvent constants.

eventCtx provides event context information for each type of customization event. Refer to the list below to see what type of information is provided by eventCtx for each customization event type.

custEventType eventCtx
esriCEAddCategory string representing category name
esriCEAddCommand UID or string identifying a command
esriCEShowCustDlg nothing
esriCEShowVBAIDE nothing
esriCEInvokeCommand CommandItem
esriCEShowCustCtxMenu nothing
esriCERunVBACode string representing the project.module.function
esriCEEditVBACode string representing the project.module name

Remarks

In the Customize dialog, Macros, Menus, New Menus, and UIControls are four special categories that are formatted with the square bracket ([]) to indicate they are associated with special functionalities.

However, the eventCtx parameter always supplies the unformatted category name for custEventType esriCEAddCategory even though they are enclosed in square brackets in the Customize dialog.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
onCustomizationEvent in interface ICustomizationFilter
Parameters:
custEventType - A com.esri.arcgis.framework.esriCustomizationEvent constant (in)
eventCtx - A Variant (in)
Returns:
The bDeny
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
IApplication.lockCustomization(String, com.esri.arcgis.framework.ICustomizationFilter), esriCustomizationEvent