@itwin/frontend-devtools
Version:
Debug menu and supporting UI widgets
42 lines • 1.94 kB
TypeScript
/** @packageDocumentation
* @module Tools
*/
import { AxisAlignedBox3d } from "@itwin/core-common";
import { DecorateContext, IModelConnection, Tool } from "@itwin/core-frontend";
/** @beta */
export declare class ProjectExtentsDecoration {
private static _decorator?;
protected _removeDecorationListener?: () => void;
protected _extents: AxisAlignedBox3d;
constructor(iModel: IModelConnection);
protected stop(): void;
protected updateDecorationListener(add: boolean): void;
static get isActive(): boolean;
/** This will allow the render system to cache and reuse the decorations created by this decorator's decorate() method. */
readonly useCachedDecorations = true;
decorate(context: DecorateContext): void;
static toggle(imodel: IModelConnection, enabled?: boolean): boolean;
}
/** Enable or disable the project extents decoration. This decoration draws a box coinciding with the iModel's project extents.
* @param imodel The iModel from which to obtain the extents.
* @param enable If undefined, the current enabled state of the decoration will be inverted; otherwise it will be enabled if true, or disabled if false.
* @returns true if the extents are now ON, false if they are now OFF.
* @beta
*/
export declare function toggleProjectExtents(imodel: IModelConnection, enabled?: boolean): boolean;
/** Enable or disable project extents decoration.
* The key-in takes at most 1 argument (case-insensitive):
* - "ON" => enable project extents
* - "OFF" => disable project extents
* - "TOGGLE" or omitted => toggle project extents
* @see [toggleProjectExtents]
* @beta
*/
export declare class ToggleProjectExtentsTool extends Tool {
static toolId: string;
static get minArgs(): number;
static get maxArgs(): number;
run(enable?: boolean): Promise<boolean>;
parseAndRun(...args: string[]): Promise<boolean>;
}
//# sourceMappingURL=ProjectExtents.d.ts.map