com.esri.arcgis.controls
Interface IEngineInkEnvironment

All Superinterfaces:
Serializable
All Known Implementing Classes:
EngineInkEnvironment

public interface IEngineInkEnvironment
extends Serializable

Provides access to members that control the EngineInkEnvironment singleton.

Description

The IEngineInkEnvironment interface manages the state of ink collection and the ink sketch.

Product Availability

Available with ArcGIS Engine.


Method Summary
 void clear()
          Deletes any active ink from the screen.
 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.
 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 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 start(boolean bGesturesOnly)
          Starts obtaining ink from the stylus.
 void stop(boolean bKeepInk)
          Stops obtaining ink from the stylus.
 

Method Detail

start

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.

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

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.

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

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.

Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getInkCollectionMode

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.

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

getInkCollector

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.

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

setToolCommitType

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

Product Availability

Available with ArcGIS Engine.

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

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.

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

setToolCommitDelay

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

Product Availability

Available with ArcGIS Engine.

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

getToolCommitDelay

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.

Returns:
The pDelay
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setPressureSensitiveStylus

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

Product Availability

Available with ArcGIS Engine.

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

isPressureSensitiveStylus

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.

Returns:
The usePressureSensitive
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setGeneralizeInk

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

Product Availability

Available with ArcGIS Engine.

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

isGeneralizeInk

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.

Returns:
The generalizeInk
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getInkGeometry

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.

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

setAutoRecognizeInkGraphics

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

Product Availability

Available with ArcGIS Engine.

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

isAutoRecognizeInkGraphics

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.

Returns:
The autoRecognize
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setScratchoutEnabled

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

Product Availability

Available with ArcGIS Engine.

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

isScratchoutEnabled

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.

Returns:
The pScratchout
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setProjectInkGraphicGeometry

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

Product Availability

Available with ArcGIS Engine.

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

isProjectInkGraphicGeometry

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.

Returns:
The projectInkGraphics
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setAlwaysShowAlternates

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.

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

isAlwaysShowAlternates

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.

Returns:
The showAlternates
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setOnlyEraseActiveInkSketch

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

Product Availability

Available with ArcGIS Engine.

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

isOnlyEraseActiveInkSketch

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.

Returns:
The onlyActive
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setMapNavigationGesturesEnabled

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

Product Availability

Available with ArcGIS Engine.

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

isMapNavigationGesturesEnabled

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.

Returns:
The pEnabled
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.