ProtectedcanvasOptionalendProtectedloggerLogger instance for this manager Automatically uses LoggerCategory.MANAGER
ProtectedmanagerName of the manager for logging purposes Must be overridden in concrete classes
OptionalselectedOptionalstartGet the client from the canvas Convenience getter to avoid accessing canvas.client everywhere
Get the configuration from the canvas Convenience getter to avoid accessing canvas.configuration everywhere
Get the model from the canvas Convenience getter to avoid accessing canvas.model everywhere
Get the renderer from the canvas Convenience getter to avoid accessing canvas.renderer everywhere
ProtectedcreateProtectedcreatePath-based hit area for line/polyline edges — narrow stroke aligned with edge geometry, avoiding the AABB problem where diagonal edges have an oversized clickable rectangle.
ProtectedcreateProtectedcreateProtectedcreateProtectedcreateProtectedcreateDestroy the manager and cleanup resources Calls the onDestroy hook if defined
In "element" mode, grows the current selection to include, for every math block that has at least one selected source stroke, all of that block's sibling source strokes plus its frozen draw result stroke (if any). No-op in "operand" mode.
ProtectedgetBuild selected/covered stroke ID sets from JIIX math groups. Returns null when no JIIX groups exist (fallback to stroke overlap).
ProtectedgetFind the JIIX block ID of the single fully-selected math block, if any. Returns undefined when zero or more than one block qualifies.
ProtectedgetBuild selected/covered stroke ID sets from JIIX shape (Node/Edge) groups. Returns null when level is "stroke" or no groups exist (fallback to stroke overlap).
ProtectedgetBuild selected/covered stroke ID sets from JIIX text groups. Returns null when no JIIX groups exist (fallback to stroke overlap).
Whether the given math block currently qualifies as selected. Reuses the same per-block coverage rule as getSelectedMathJiixBlockId, without the single-block constraint (supports multi-block selection).
ProtectedonProtected OptionalonProtected OptionalonLifecycle hook called after manager initialization Override in subclasses if needed
This is called at the end of the constructor, allowing subclasses to perform initialization that requires access to this.managerName or other properties set in the subclass constructor.
The Interactive Ink Canvas instance