UNPKG

@itwin/measure-tools-react

Version:
207 lines 9.37 kB
/*--------------------------------------------------------------------------------------------- * Copyright (c) Bentley Systems, Incorporated. All rights reserved. * See LICENSE.md in the project root for license terms and full copyright notice. *--------------------------------------------------------------------------------------------*/ import { IModelApp } from "@itwin/core-frontend"; import { SyncUiEventId, ToolItemDef } from "@itwin/appui-react"; import { MeasurementPreferences } from "../api/MeasurementPreferences.js"; import { MeasurementUIEvents } from "../api/MeasurementUIEvents.js"; import { ClearMeasurementsTool } from "./ClearMeasurementsTool.js"; import { MeasureAngleTool } from "./MeasureAngleTool.js"; import { MeasureAreaTool } from "./MeasureAreaTool.js"; import { MeasureDistanceTool } from "./MeasureDistanceTool.js"; import { MeasureLocationTool } from "./MeasureLocationTool.js"; import { MeasurePerpendicularTool } from "./MeasurePerpendicularTool.js"; import { MeasureRadiusTool } from "./MeasureRadiusTool.js"; import { ToggleDisplayMeasurementAxesTool } from "./ToggleDisplayMeasurementAxesTool.js"; import { MeasureTools } from "../MeasureTools.js"; import { ConditionalBooleanValue } from "@itwin/appui-abstract"; export class MeasureToolDefinitions { /** * @deprecated in 0.14.2 use getMeasureDistanceToolCommand instead */ static get measureDistanceToolCommand() { return new ToolItemDef({ toolId: MeasureDistanceTool.toolId, iconSpec: MeasureDistanceTool.iconSpec, label: () => MeasureDistanceTool.flyover, tooltip: () => MeasureDistanceTool.description, execute: () => { void IModelApp.tools.run(MeasureDistanceTool.toolId); }, }); } static getMeasureDistanceToolCommand(allowedViewportCallback = (() => true), enableSheetMeasurements) { return new ToolItemDef({ toolId: MeasureDistanceTool.toolId, iconSpec: MeasureDistanceTool.iconSpec, label: () => MeasureDistanceTool.flyover, tooltip: () => MeasureDistanceTool.description, execute: () => { const tool = new MeasureDistanceTool(enableSheetMeasurements, allowedViewportCallback); void tool.run(); }, }); } /** * @deprecated in 0.14.2 use getMeasureAreaToolCommand instead */ static get measureAreaToolCommand() { return new ToolItemDef({ toolId: MeasureAreaTool.toolId, iconSpec: MeasureAreaTool.iconSpec, label: () => MeasureAreaTool.flyover, tooltip: () => MeasureAreaTool.description, execute: () => { void IModelApp.tools.run(MeasureAreaTool.toolId); }, }); } static getMeasureAreaToolCommand(allowedViewportCallback = (() => true), enableSheetMeasurements) { return new ToolItemDef({ toolId: MeasureAreaTool.toolId, iconSpec: MeasureAreaTool.iconSpec, label: () => MeasureAreaTool.flyover, tooltip: () => MeasureAreaTool.description, execute: () => { const tool = new MeasureAreaTool(enableSheetMeasurements, allowedViewportCallback); void tool.run(); }, }); } /** * @deprecated in 0.15.0 use getMeasureLocationToolCommand instead */ static get measureLocationToolCommand() { return new ToolItemDef({ toolId: MeasureLocationTool.toolId, iconSpec: MeasureLocationTool.iconSpec, label: () => MeasureLocationTool.flyover, tooltip: () => MeasureLocationTool.description, execute: () => { void IModelApp.tools.run(MeasureLocationTool.toolId); }, }); } static getMeasureLocationToolCommand(allowedViewportCallback = (() => true), enableSheetMeasurements) { return new ToolItemDef({ toolId: MeasureLocationTool.toolId, iconSpec: MeasureLocationTool.iconSpec, label: () => MeasureLocationTool.flyover, tooltip: () => MeasureLocationTool.description, execute: () => { const tool = new MeasureLocationTool(enableSheetMeasurements, allowedViewportCallback); void tool.run(); }, }); } static get clearMeasurementsToolCommand() { return new ToolItemDef({ toolId: ClearMeasurementsTool.toolId, iconSpec: ClearMeasurementsTool.iconSpec, isHidden: !MeasurementUIEvents.isClearMeasurementButtonVisible, label: () => ClearMeasurementsTool.flyover, tooltip: () => ClearMeasurementsTool.description, execute: () => { void IModelApp.tools.run(ClearMeasurementsTool.toolId); }, }); } static get toggleDisplayMeasurementAxesToolCommand() { return new ToolItemDef({ toolId: ToggleDisplayMeasurementAxesTool.toolId, iconSpec: ToggleDisplayMeasurementAxesTool.iconSpec, isHidden: !MeasurementUIEvents.isToggleMeasurementAxesButtonVisible, label: () => MeasurementPreferences.current.displayMeasurementAxes ? MeasureTools.localization.getLocalizedString("MeasureTools:Generic.hideMeasurementAxes") : MeasureTools.localization.getLocalizedString("MeasureTools:Generic.displayMeasurementAxes"), tooltip: () => MeasurementPreferences.current.displayMeasurementAxes ? MeasureTools.localization.getLocalizedString("MeasureTools:Generic.hideMeasurementAxes") : MeasureTools.localization.getLocalizedString("MeasureTools:Generic.displayMeasurementAxes"), execute: () => { void IModelApp.tools.run(ToggleDisplayMeasurementAxesTool.toolId); }, }); } /** * @deprecated in 0.23.1 use getMeasureRadiusToolCommand instead */ static get measureRadiusToolCommand() { return new ToolItemDef({ toolId: MeasureRadiusTool.toolId, iconSpec: MeasureRadiusTool.iconSpec, label: () => MeasureRadiusTool.flyover, tooltip: () => MeasureRadiusTool.description, execute: () => { void IModelApp.tools.run(MeasureRadiusTool.toolId); }, }); } static getMeasureRadiusToolCommand(allowedViewportCallback = (() => true)) { return new ToolItemDef({ toolId: MeasureRadiusTool.toolId, iconSpec: MeasureRadiusTool.iconSpec, label: () => MeasureRadiusTool.flyover, tooltip: () => MeasureRadiusTool.description, execute: () => { const tool = new MeasureRadiusTool(allowedViewportCallback); void tool.run(); }, }); } /** * @deprecated in 0.23.1 use getMeasureRadiusToolCommand instead */ static get measureAngleToolCommand() { return new ToolItemDef({ toolId: MeasureAngleTool.toolId, iconSpec: MeasureAngleTool.iconSpec, label: () => MeasureAngleTool.flyover, tooltip: () => MeasureAngleTool.description, execute: () => { void IModelApp.tools.run(MeasureAngleTool.toolId); }, }); } static getMeasureAngleToolCommand(allowedViewportCallback = (() => true)) { return new ToolItemDef({ toolId: MeasureAngleTool.toolId, iconSpec: MeasureAngleTool.iconSpec, label: () => MeasureAngleTool.flyover, tooltip: () => MeasureAngleTool.description, execute: () => { const tool = new MeasureAngleTool(allowedViewportCallback); void tool.run(); }, }); } /** * @deprecated in 0.23.1 use getMeasureRadiusToolCommand instead */ static get measurePerpendicularToolCommand() { return new ToolItemDef({ toolId: MeasurePerpendicularTool.toolId, iconSpec: MeasurePerpendicularTool.iconSpec, label: () => MeasurePerpendicularTool.flyover, tooltip: () => MeasurePerpendicularTool.description, isHidden: new ConditionalBooleanValue(() => !!IModelApp.viewManager.selectedView?.view?.is2d(), [SyncUiEventId.ViewStateChanged]), execute: () => { void IModelApp.tools.run(MeasurePerpendicularTool.toolId); }, }); } static getMeasurePerpendicularToolCommand(allowedViewportCallback = (() => true)) { return new ToolItemDef({ toolId: MeasurePerpendicularTool.toolId, iconSpec: MeasurePerpendicularTool.iconSpec, label: () => MeasurePerpendicularTool.flyover, tooltip: () => MeasurePerpendicularTool.description, isHidden: new ConditionalBooleanValue(() => !!IModelApp.viewManager.selectedView?.view?.is2d(), [SyncUiEventId.ViewStateChanged]), execute: () => { const tool = new MeasurePerpendicularTool(allowedViewportCallback); void tool.run(); }, }); } } //# sourceMappingURL=MeasureToolDefinitions.js.map