/*---------------------------------------------------------------------------------------------
 * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
 * See LICENSE.md in the project root for license terms and full copyright notice.
 *--------------------------------------------------------------------------------------------*/
/** @packageDocumentation
 * @module Tools
 */
import { SelectionContextToolDefinitions } from "../selection/SelectionContextItemDef";
import { itemDefToToolbarActionItem, itemDefToToolbarGroupItem, } from "../toolbar/ToolbarHelper";
import { CoreTools } from "./CoreToolDefinitions";
/* eslint-disable deprecation/deprecation */
/** Helper namespace to create commonly used toolbar items.
 * @beta
 */
export var ToolbarItems;
(function (ToolbarItems) {
    /** Creates an action item to open a keyin palette. */
    function createShowKeyinPalette(overrides) {
        return itemDefToToolbarActionItem(CoreTools.keyinPaletteButtonItemDef, overrides);
    }
    ToolbarItems.createShowKeyinPalette = createShowKeyinPalette;
    /** Creates an action item that runs a `FitViewTool`. */
    function createFitView(overrides) {
        return itemDefToToolbarActionItem(CoreTools.fitViewCommand, overrides);
    }
    ToolbarItems.createFitView = createFitView;
    /** Creates an action item that runs a `WindowAreaTool`. */
    function createWindowArea(overrides) {
        return itemDefToToolbarActionItem(CoreTools.windowAreaCommand, overrides);
    }
    ToolbarItems.createWindowArea = createWindowArea;
    /** Creates an action item that runs a `ZoomViewTool`. */
    function createZoomView(overrides) {
        return itemDefToToolbarActionItem(CoreTools.zoomViewCommand, overrides);
    }
    ToolbarItems.createZoomView = createZoomView;
    /** Creates an action item that runs a `PanViewTool`. */
    function createPanView(overrides) {
        return itemDefToToolbarActionItem(CoreTools.panViewCommand, overrides);
    }
    ToolbarItems.createPanView = createPanView;
    /** Creates an action item that runs a `RotateViewTool`. */
    function createRotateView(overrides) {
        return itemDefToToolbarActionItem(CoreTools.rotateViewCommand, overrides);
    }
    ToolbarItems.createRotateView = createRotateView;
    /** Creates an action item that runs a `WalkViewTool`. */
    function createWalkView(overrides) {
        return itemDefToToolbarActionItem(CoreTools.walkViewCommand, overrides);
    }
    ToolbarItems.createWalkView = createWalkView;
    /** Creates an action item that runs a `SelectionTool`. */
    function createSelectElement(overrides) {
        return itemDefToToolbarActionItem(CoreTools.selectElementCommand, overrides);
    }
    ToolbarItems.createSelectElement = createSelectElement;
    /** Creates an action item that runs a `SetupWalkCameraTool`. */
    function createSetupWalkCamera(overrides) {
        return itemDefToToolbarActionItem(CoreTools.setupCameraWalkTool, overrides);
    }
    ToolbarItems.createSetupWalkCamera = createSetupWalkCamera;
    /** Creates an action item that runs a `ViewToggleCameraTool`. */
    function createToggleCameraView(overrides) {
        return itemDefToToolbarActionItem(CoreTools.toggleCameraViewCommand, overrides);
    }
    ToolbarItems.createToggleCameraView = createToggleCameraView;
    /** Creates an action item that runs a `FlyViewTool`. */
    function createFlyView(overrides) {
        return itemDefToToolbarActionItem(CoreTools.flyViewCommand, overrides);
    }
    ToolbarItems.createFlyView = createFlyView;
    /** Creates an action item that runs a `ViewUndoTool`. */
    function createViewUndo(overrides) {
        return itemDefToToolbarActionItem(CoreTools.viewUndoCommand, overrides);
    }
    ToolbarItems.createViewUndo = createViewUndo;
    /** Creates an action item that runs a `ViewRedoTool`. */
    function createViewRedo(overrides) {
        return itemDefToToolbarActionItem(CoreTools.viewRedoCommand, overrides);
    }
    ToolbarItems.createViewRedo = createViewRedo;
    /** Creates an action item that runs a `ViewClipByPlaneTool`. */
    function createSectionByPlane(overrides) {
        return itemDefToToolbarActionItem(CoreTools.sectionByPlaneCommandItemDef, overrides);
    }
    ToolbarItems.createSectionByPlane = createSectionByPlane;
    /** Creates an action item that runs a `ViewClipByElementTool`. */
    function createSectionByElement(overrides) {
        return itemDefToToolbarActionItem(CoreTools.sectionByElementCommandItemDef, overrides);
    }
    ToolbarItems.createSectionByElement = createSectionByElement;
    /** Creates an action item that runs a `ViewClipByRangeTool`. */
    function createSectionByRange(overrides) {
        return itemDefToToolbarActionItem(CoreTools.sectionByRangeCommandItemDef, overrides);
    }
    ToolbarItems.createSectionByRange = createSectionByRange;
    /** Creates an action item that runs a `ViewClipByShapeTool`. */
    function createSectionByShape(overrides) {
        return itemDefToToolbarActionItem(CoreTools.sectionByShapeCommandItemDef, overrides);
    }
    ToolbarItems.createSectionByShape = createSectionByShape;
    /** Creates a group item with all sectioning tools. */
    function createSectionGroup(overrides) {
        return itemDefToToolbarGroupItem(CoreTools.sectionToolGroup, overrides);
    }
    ToolbarItems.createSectionGroup = createSectionGroup;
    /** Creates an action item that runs a `MeasureDistanceTool`. */
    function createMeasureDistance(overrides) {
        return itemDefToToolbarActionItem(CoreTools.measureDistanceToolItemDef, overrides);
    }
    ToolbarItems.createMeasureDistance = createMeasureDistance;
    /** Creates an action item that runs a `MeasureLocationTool`. */
    function createMeasureLocation(overrides) {
        return itemDefToToolbarActionItem(CoreTools.measureLocationToolItemDef, overrides);
    }
    ToolbarItems.createMeasureLocation = createMeasureLocation;
    /** Creates a group item with all measurement tools. */
    function createMeasureGroup(overrides) {
        return itemDefToToolbarGroupItem(CoreTools.measureToolGroup, overrides);
    }
    ToolbarItems.createMeasureGroup = createMeasureGroup;
    /** Creates an action item that clears a selection set. */
    function createClearSelection(overrides) {
        return itemDefToToolbarActionItem(CoreTools.clearSelectionItemDef, overrides);
    }
    ToolbarItems.createClearSelection = createClearSelection;
    /** Creates an action item that runs a `RestoreFrontstageLayoutTool`. */
    function createRestoreFrontstageLayout(overrides) {
        return itemDefToToolbarActionItem(CoreTools.restoreFrontstageLayoutCommandItemDef, overrides);
    }
    ToolbarItems.createRestoreFrontstageLayout = createRestoreFrontstageLayout;
    /** Creates an action item that isolates models in the selection. */
    function createIsolateModelsInSelection(overrides) {
        return itemDefToToolbarActionItem(SelectionContextToolDefinitions.isolateModelsInSelectionItemDef, overrides);
    }
    ToolbarItems.createIsolateModelsInSelection = createIsolateModelsInSelection;
    /** Creates an action item that isolates categories in the selection. */
    function createIsolateCategoriesInSelection(overrides) {
        return itemDefToToolbarActionItem(SelectionContextToolDefinitions.isolateCategoriesInSelectionItemDef, overrides);
    }
    ToolbarItems.createIsolateCategoriesInSelection = createIsolateCategoriesInSelection;
    /** Creates an action item that runs isolates elements. */
    function createIsolateElements(overrides) {
        return itemDefToToolbarActionItem(SelectionContextToolDefinitions.isolateElementsItemDef, overrides);
    }
    ToolbarItems.createIsolateElements = createIsolateElements;
    /** Creates a group item with all isolation tools. */
    function createIsolateSelectionGroup(overrides) {
        return itemDefToToolbarGroupItem(SelectionContextToolDefinitions.isolateSelectionToolGroup, overrides);
    }
    ToolbarItems.createIsolateSelectionGroup = createIsolateSelectionGroup;
    /** Creates an action item that hides models in selection. */
    function createHideModelsInSelection(overrides) {
        return itemDefToToolbarActionItem(SelectionContextToolDefinitions.hideModelsInSelectionItemDef, overrides);
    }
    ToolbarItems.createHideModelsInSelection = createHideModelsInSelection;
    /** Creates an action item that hides categories in selection. */
    function createHideCategoriesInSelection(overrides) {
        return itemDefToToolbarActionItem(SelectionContextToolDefinitions.hideCategoriesInSelectionItemDef, overrides);
    }
    ToolbarItems.createHideCategoriesInSelection = createHideCategoriesInSelection;
    /** Creates an action item that hides selected elements. */
    function createHideElements(overrides) {
        return itemDefToToolbarActionItem(SelectionContextToolDefinitions.hideElementsItemDef, overrides);
    }
    ToolbarItems.createHideElements = createHideElements;
    /** Creates a group item with all hide tools. */
    function createHideSectionGroup(overrides) {
        return itemDefToToolbarGroupItem(SelectionContextToolDefinitions.hideSectionToolGroup, overrides);
    }
    ToolbarItems.createHideSectionGroup = createHideSectionGroup;
    /** Creates an action item that emphasizes selected elements. */
    function createEmphasizeElements(overrides) {
        return itemDefToToolbarActionItem(SelectionContextToolDefinitions.emphasizeElementsItemDef, overrides);
    }
    ToolbarItems.createEmphasizeElements = createEmphasizeElements;
    /** Creates an action item that clears hide, isolate and emphasize visibility modifiers. */
    function createClearHideIsolateEmphasizeElements(overrides) {
        return itemDefToToolbarActionItem(SelectionContextToolDefinitions.clearHideIsolateEmphasizeElementsItemDef, overrides);
    }
    ToolbarItems.createClearHideIsolateEmphasizeElements = createClearHideIsolateEmphasizeElements;
})(ToolbarItems || (ToolbarItems = {}));
//# sourceMappingURL=ToolbarItems.js.map