com.esri.arcgis.framework
Class ICustomizationFilterProxy
java.lang.Object
com.esri.arcgis.interop.Dispatch
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
Fields inherited from class com.esri.arcgis.interop.Dispatch |
DISPATCH_METHOD, DISPATCH_PROPERTYGET, DISPATCH_PROPERTYPUT, DISPATCH_PROPERTYPUTREF, objRef |
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 |
noncastable
public boolean noncastable
ICustomizationFilterProxy
public ICustomizationFilterProxy()
ICustomizationFilterProxy
public ICustomizationFilterProxy(Object obj)
throws IOException
- Throws:
IOException
ICustomizationFilterProxy
protected ICustomizationFilterProxy(Object obj,
String iid)
throws IOException
- Throws:
IOException
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