@itwin/core-markup
Version:
iTwin.js markup package
39 lines • 1.76 kB
TypeScript
/** @packageDocumentation
* @module MarkupTools
*/
import { XAndY } from "@itwin/core-geometry";
import { BeTouchEvent, EventHandled, PrimitiveTool, Viewport } from "@itwin/core-frontend";
import { G, Element as MarkupElement, Text as MarkupText } from "@svgdotjs/svg.js";
import { Markup } from "./Markup";
/** Base class for all tools that operate on Markup elements.
* @public
*/
export declare abstract class MarkupTool extends PrimitiveTool {
markup: Markup;
static toolKey: string;
requireWriteableTarget(): boolean;
isCompatibleViewport(vp: Viewport | undefined, isSelectedViewChange: boolean): boolean;
onInstall(): Promise<boolean>;
onPostInstall(): Promise<void>;
onUnsuspend(): Promise<void>;
onRestartTool(): Promise<void>;
protected showPrompt(): void;
protected setupAndPromptForNextAction(): void;
protected outputMarkupPrompt(msg: string): void;
onTouchMoveStart(ev: BeTouchEvent, startEv: BeTouchEvent): Promise<EventHandled>;
onTouchMove(ev: BeTouchEvent): Promise<void>;
onTouchComplete(ev: BeTouchEvent): Promise<void>;
onTouchCancel(ev: BeTouchEvent): Promise<void>;
undoPreviousStep(): Promise<boolean>;
redoPreviousStep(): Promise<boolean>;
/** Find the topmost MarkupElement at the specified point in the markup view.
* @param pt the point in view coordinates
* @returns The topmost element, or undefined if no elements under pt.
*/
pickElement(pt: XAndY): MarkupElement | undefined;
protected setCurrentStyle(element: MarkupElement, canBeFilled: boolean): void;
protected setCurrentTextStyle(element: MarkupElement): void;
/** @internal */
createBoxedText(g: G, text: MarkupText): G;
}
//# sourceMappingURL=MarkupTool.d.ts.map