An IInputMode that can be added to a MultiplexingInputMode to suppress other modes from performing unwanted actions if the control has just become focused.
Remarks
This mode requests the input mutex once the canvas gains focus. It returns the mutex after the mode has regained focus and the pointer has been clicked or 100 milliseconds have passed. This mode should be registered with the MultiplexingInputMode using the add method and a large priority number (e.g. 1000
). So that other modes don't receive the input mutex once this one has released the mutex.
This mode is exclusive by default.
Type Details
- yFiles module
- view
Constructors
Creates a new instance of this mode.
Parameters
A map of options to pass to the method.
- priority - number
- enabled - boolean
- The enabled state of this input mode. This option sets the enabled property on the created object.
- guardCursor - Cursor
- The Cursor that will be shown during active guards. This option sets the guardCursor property on the created object.
Properties
Gets the installed controller.
Gets or sets the enabled state of this input mode.
Remarks
Retrieves the IInputModeContext this mode has been installed in.
Remarks
null
if this mode is currently not installed. Use InputModeContext to create a context that has this IInputMode as the inputMode.Gets the priority of this input mode.
Remarks
Implements
Methods
Will be called to unconditionally cancel all ongoing edits.
Remarks
This will be called prior to the uninstalling of this instance and when other input modes temporarily acquire the mutex.
In order to stop an active input mode manually, client code should use the following idiom:
if (!mode.tryStop()) {
mode.cancel()
}
Implements
Installs this mode into the given context that is provided by the canvas.
Remarks
In general a mode can only be installed into a single canvas at all times.
This method is called to initialize this instance. Subclasses should override this method to register the corresponding event handler delegates for the various input events they need to register with.
Overriding implementations should call the base implementation first.
Parameters
A map of options to pass to the method.
- context - IInputModeContext
- The context that this instance shall be installed into. The same instance will be passed to this instance during uninstall. A reference to the context may be kept and queried during the time the mode is installed.
- controller - ConcurrencyController
- The controller for this mode.
See Also
Implements
Called after cancel has been called.
Remarks
Can be overridden in subclasses to perform additional actions after the mode has been canceled.
This implementation does nothing.
Called after the active property of the installed ConcurrencyController has been set to true
.
Remarks
Can be overridden in subclasses to perform additional actions after the mode has been activated.
Overriding implementations should call the base implementation.
Called after the active property of the installed ConcurrencyController has been set to false
.
Remarks
Can be overridden in subclasses to perform additional actions after the mode has been deactivated.
Overriding implementations should call the base implementation.
Called after tryStop has been called.
Remarks
Can be overridden in subclasses to perform additional actions after the mode has been stopped.
This implementation does nothing.
Will be called to request a stop of the current editing progress.
Remarks
false
Returns
- ↪boolean
true
if and only if the editing has been stopped or there was no edit in progress
See Also
Implements
Uninstalls this mode from the given context.
Remarks
This code should clean up all changes made to the canvas in the install method. After a mode has been uninstalled it can be installed again into the same or another canvas.
Overriding implementations should call the base implementation after their own code.
Parameters
A map of options to pass to the method.
- context - IInputModeContext
- The context to deregister from. This is the same instance that had been passed to install during installation.