@itwin/appui-react 3.0.0-dev.136 → 3.0.0-dev.141
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -3
- package/lib/cjs/appui-react/UiFramework.d.ts +4 -0
- package/lib/cjs/appui-react/UiFramework.d.ts.map +1 -1
- package/lib/cjs/appui-react/UiFramework.js +12 -6
- package/lib/cjs/appui-react/UiFramework.js.map +1 -1
- package/lib/cjs/appui-react/backstage/BackstageItemProps.d.ts +3 -3
- package/lib/cjs/appui-react/backstage/BackstageItemProps.js +1 -1
- package/lib/cjs/appui-react/backstage/BackstageItemProps.js.map +1 -1
- package/lib/cjs/appui-react/backstage/BackstageItemUtilities.d.ts +5 -5
- package/lib/cjs/appui-react/backstage/BackstageItemUtilities.js +3 -3
- package/lib/cjs/appui-react/backstage/BackstageItemUtilities.js.map +1 -1
- package/lib/cjs/appui-react/frontstage/FrontstageComposer.d.ts.map +1 -1
- package/lib/cjs/appui-react/frontstage/FrontstageComposer.js +1 -0
- package/lib/cjs/appui-react/frontstage/FrontstageComposer.js.map +1 -1
- package/lib/cjs/appui-react/frontstage/FrontstageDef.d.ts +13 -2
- package/lib/cjs/appui-react/frontstage/FrontstageDef.d.ts.map +1 -1
- package/lib/cjs/appui-react/frontstage/FrontstageDef.js +129 -1
- package/lib/cjs/appui-react/frontstage/FrontstageDef.js.map +1 -1
- package/lib/cjs/appui-react/messages/AppNotificationManager.d.ts +1 -1
- package/lib/cjs/appui-react/messages/AppNotificationManager.js +1 -1
- package/lib/cjs/appui-react/messages/AppNotificationManager.js.map +1 -1
- package/lib/cjs/appui-react/redux/StateManager.d.ts +1 -1
- package/lib/cjs/appui-react/redux/StateManager.js.map +1 -1
- package/lib/cjs/appui-react/shared/CustomItemProps.js.map +1 -1
- package/lib/cjs/appui-react/shared/ItemDefBase.d.ts +2 -2
- package/lib/cjs/appui-react/shared/ItemDefBase.d.ts.map +1 -1
- package/lib/cjs/appui-react/shared/ItemDefBase.js +1 -1
- package/lib/cjs/appui-react/shared/ItemDefBase.js.map +1 -1
- package/lib/cjs/appui-react/shared/ItemProps.d.ts +2 -2
- package/lib/cjs/appui-react/shared/ItemProps.js.map +1 -1
- package/lib/cjs/appui-react/stagepanels/StagePanelDef.d.ts +3 -3
- package/lib/cjs/appui-react/stagepanels/StagePanelDef.d.ts.map +1 -1
- package/lib/cjs/appui-react/stagepanels/StagePanelDef.js +25 -5
- package/lib/cjs/appui-react/stagepanels/StagePanelDef.js.map +1 -1
- package/lib/cjs/appui-react/statusbar/StatusBarItemsManager.d.ts +1 -1
- package/lib/cjs/appui-react/statusbar/StatusBarItemsManager.js +1 -1
- package/lib/cjs/appui-react/statusbar/StatusBarItemsManager.js.map +1 -1
- package/lib/cjs/appui-react/toolbar/ToolButton.js +1 -1
- package/lib/cjs/appui-react/toolbar/ToolButton.js.map +1 -1
- package/lib/cjs/appui-react/tools/CoreToolDefinitions.d.ts +1 -1
- package/lib/cjs/appui-react/tools/CoreToolDefinitions.js +1 -1
- package/lib/cjs/appui-react/tools/CoreToolDefinitions.js.map +1 -1
- package/lib/cjs/appui-react/widget-panels/Frontstage.d.ts +0 -2
- package/lib/cjs/appui-react/widget-panels/Frontstage.d.ts.map +1 -1
- package/lib/cjs/appui-react/widget-panels/Frontstage.js +1 -51
- package/lib/cjs/appui-react/widget-panels/Frontstage.js.map +1 -1
- package/lib/cjs/appui-react/widgets/WidgetDef.d.ts +1 -1
- package/lib/cjs/appui-react/widgets/WidgetDef.d.ts.map +1 -1
- package/lib/cjs/appui-react/widgets/WidgetDef.js +17 -5
- package/lib/cjs/appui-react/widgets/WidgetDef.js.map +1 -1
- package/lib/cjs/appui-react/zones/ZoneDef.d.ts +4 -4
- package/lib/cjs/appui-react/zones/ZoneDef.d.ts.map +1 -1
- package/lib/cjs/appui-react/zones/ZoneDef.js +4 -4
- package/lib/cjs/appui-react/zones/ZoneDef.js.map +1 -1
- package/lib/esm/appui-react/UiFramework.d.ts +4 -0
- package/lib/esm/appui-react/UiFramework.d.ts.map +1 -1
- package/lib/esm/appui-react/UiFramework.js +12 -6
- package/lib/esm/appui-react/UiFramework.js.map +1 -1
- package/lib/esm/appui-react/backstage/BackstageItemProps.d.ts +3 -3
- package/lib/esm/appui-react/backstage/BackstageItemProps.js +1 -1
- package/lib/esm/appui-react/backstage/BackstageItemProps.js.map +1 -1
- package/lib/esm/appui-react/backstage/BackstageItemUtilities.d.ts +5 -5
- package/lib/esm/appui-react/backstage/BackstageItemUtilities.js +3 -3
- package/lib/esm/appui-react/backstage/BackstageItemUtilities.js.map +1 -1
- package/lib/esm/appui-react/frontstage/FrontstageComposer.d.ts.map +1 -1
- package/lib/esm/appui-react/frontstage/FrontstageComposer.js +1 -0
- package/lib/esm/appui-react/frontstage/FrontstageComposer.js.map +1 -1
- package/lib/esm/appui-react/frontstage/FrontstageDef.d.ts +13 -2
- package/lib/esm/appui-react/frontstage/FrontstageDef.d.ts.map +1 -1
- package/lib/esm/appui-react/frontstage/FrontstageDef.js +131 -3
- package/lib/esm/appui-react/frontstage/FrontstageDef.js.map +1 -1
- package/lib/esm/appui-react/messages/AppNotificationManager.d.ts +1 -1
- package/lib/esm/appui-react/messages/AppNotificationManager.js +1 -1
- package/lib/esm/appui-react/messages/AppNotificationManager.js.map +1 -1
- package/lib/esm/appui-react/redux/StateManager.d.ts +1 -1
- package/lib/esm/appui-react/redux/StateManager.js.map +1 -1
- package/lib/esm/appui-react/shared/CustomItemProps.js.map +1 -1
- package/lib/esm/appui-react/shared/ItemDefBase.d.ts +2 -2
- package/lib/esm/appui-react/shared/ItemDefBase.d.ts.map +1 -1
- package/lib/esm/appui-react/shared/ItemDefBase.js +1 -1
- package/lib/esm/appui-react/shared/ItemDefBase.js.map +1 -1
- package/lib/esm/appui-react/shared/ItemProps.d.ts +2 -2
- package/lib/esm/appui-react/shared/ItemProps.js.map +1 -1
- package/lib/esm/appui-react/stagepanels/StagePanelDef.d.ts +3 -3
- package/lib/esm/appui-react/stagepanels/StagePanelDef.d.ts.map +1 -1
- package/lib/esm/appui-react/stagepanels/StagePanelDef.js +25 -5
- package/lib/esm/appui-react/stagepanels/StagePanelDef.js.map +1 -1
- package/lib/esm/appui-react/statusbar/StatusBarItemsManager.d.ts +1 -1
- package/lib/esm/appui-react/statusbar/StatusBarItemsManager.js +1 -1
- package/lib/esm/appui-react/statusbar/StatusBarItemsManager.js.map +1 -1
- package/lib/esm/appui-react/toolbar/ToolButton.js +1 -1
- package/lib/esm/appui-react/toolbar/ToolButton.js.map +1 -1
- package/lib/esm/appui-react/tools/CoreToolDefinitions.d.ts +1 -1
- package/lib/esm/appui-react/tools/CoreToolDefinitions.js +1 -1
- package/lib/esm/appui-react/tools/CoreToolDefinitions.js.map +1 -1
- package/lib/esm/appui-react/widget-panels/Frontstage.d.ts +0 -2
- package/lib/esm/appui-react/widget-panels/Frontstage.d.ts.map +1 -1
- package/lib/esm/appui-react/widget-panels/Frontstage.js +0 -49
- package/lib/esm/appui-react/widget-panels/Frontstage.js.map +1 -1
- package/lib/esm/appui-react/widgets/WidgetDef.d.ts +1 -1
- package/lib/esm/appui-react/widgets/WidgetDef.d.ts.map +1 -1
- package/lib/esm/appui-react/widgets/WidgetDef.js +17 -5
- package/lib/esm/appui-react/widgets/WidgetDef.js.map +1 -1
- package/lib/esm/appui-react/zones/ZoneDef.d.ts +4 -4
- package/lib/esm/appui-react/zones/ZoneDef.d.ts.map +1 -1
- package/lib/esm/appui-react/zones/ZoneDef.js +4 -4
- package/lib/esm/appui-react/zones/ZoneDef.js.map +1 -1
- package/package.json +34 -34
|
@@ -24,8 +24,8 @@ export var StagePanelState;
|
|
|
24
24
|
StagePanelState[StagePanelState["Open"] = 2] = "Open";
|
|
25
25
|
StagePanelState[StagePanelState["Popup"] = 3] = "Popup";
|
|
26
26
|
})(StagePanelState || (StagePanelState = {}));
|
|
27
|
-
/**
|
|
28
|
-
* @beta
|
|
27
|
+
/** Panel State Changed Event class.
|
|
28
|
+
* @beta
|
|
29
29
|
*/
|
|
30
30
|
export class PanelStateChangedEvent extends UiEvent {
|
|
31
31
|
}
|
|
@@ -34,7 +34,7 @@ export class PanelSizeChangedEvent extends UiEvent {
|
|
|
34
34
|
}
|
|
35
35
|
/**
|
|
36
36
|
* A StagePanelDef represents each Stage Panel within a Frontstage.
|
|
37
|
-
* @public
|
|
37
|
+
* @public
|
|
38
38
|
*/
|
|
39
39
|
export class StagePanelDef extends WidgetHost {
|
|
40
40
|
/** Constructor for PanelDef.
|
|
@@ -53,7 +53,18 @@ export class StagePanelDef extends WidgetHost {
|
|
|
53
53
|
/** @internal */
|
|
54
54
|
get minSize() { return this._minSize; }
|
|
55
55
|
/** Default size of the panel */
|
|
56
|
-
get size() {
|
|
56
|
+
get size() {
|
|
57
|
+
// istanbul ignore next
|
|
58
|
+
if ("1" === UiFramework.uiVersion)
|
|
59
|
+
return this._size;
|
|
60
|
+
// istanbul ignore else
|
|
61
|
+
if (FrontstageManager.activeFrontstageDef) {
|
|
62
|
+
const [_, size] = FrontstageManager.activeFrontstageDef.getPanelCurrentState(this);
|
|
63
|
+
return size;
|
|
64
|
+
}
|
|
65
|
+
// istanbul ignore next
|
|
66
|
+
return this._defaultSize;
|
|
67
|
+
}
|
|
57
68
|
set size(size) {
|
|
58
69
|
if (this._size === size)
|
|
59
70
|
return;
|
|
@@ -87,7 +98,16 @@ export class StagePanelDef extends WidgetHost {
|
|
|
87
98
|
get location() { return this._location; }
|
|
88
99
|
/** Panel state. Defaults to PanelState.Open. */
|
|
89
100
|
get panelState() {
|
|
90
|
-
|
|
101
|
+
var _a;
|
|
102
|
+
if ("1" === UiFramework.uiVersion)
|
|
103
|
+
return this._panelState;
|
|
104
|
+
// istanbul ignore else
|
|
105
|
+
if (FrontstageManager.activeFrontstageDef) {
|
|
106
|
+
const [state] = (_a = FrontstageManager.activeFrontstageDef) === null || _a === void 0 ? void 0 : _a.getPanelCurrentState(this);
|
|
107
|
+
return state;
|
|
108
|
+
}
|
|
109
|
+
// istanbul ignore next
|
|
110
|
+
return this.defaultState;
|
|
91
111
|
}
|
|
92
112
|
set panelState(panelState) {
|
|
93
113
|
if (panelState === this._panelState)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StagePanelDef.js","sourceRoot":"","sources":["../../../../src/appui-react/stagepanels/StagePanelDef.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/* eslint-disable deprecation/deprecation */\r\n/** @packageDocumentation\r\n * @module Frontstage\r\n */\r\n\r\nimport produce, { Draft } from \"immer\";\r\nimport { StagePanelLocation, StagePanelSection } from \"@itwin/appui-abstract\";\r\nimport { UiEvent } from \"@itwin/core-react\";\r\nimport { NineZoneState, PanelSide } from \"@itwin/appui-layout-react\";\r\nimport { FrontstageManager } from \"../frontstage/FrontstageManager\";\r\nimport { WidgetDef } from \"../widgets/WidgetDef\";\r\nimport { WidgetHost } from \"../widgets/WidgetHost\";\r\nimport { StagePanelMaxSizeSpec, StagePanelProps, StagePanelZoneProps, StagePanelZonesProps } from \"./StagePanel\";\r\nimport { getStableWidgetProps, ZoneLocation } from \"../zones/Zone\";\r\nimport { UiFramework } from \"../UiFramework\";\r\n\r\n/** Enum for StagePanel state.\r\n * @public\r\n */\r\nexport enum StagePanelState {\r\n Off,\r\n Minimized,\r\n Open,\r\n Popup,\r\n}\r\n\r\n/** Panel State Changed Event Args interface.\r\n * @public @deprecated\r\n */\r\nexport interface PanelStateChangedEventArgs {\r\n panelDef: StagePanelDef;\r\n panelState: StagePanelState;\r\n}\r\n\r\n/** Widget State Changed Event class.\r\n * @beta @deprecated\r\n */\r\nexport class PanelStateChangedEvent extends UiEvent<PanelStateChangedEventArgs> { }\r\n\r\n/** @internal */\r\nexport interface PanelSizeChangedEventArgs {\r\n panelDef: StagePanelDef;\r\n size: number | undefined;\r\n}\r\n\r\n/** @internal */\r\nexport class PanelSizeChangedEvent extends UiEvent<PanelSizeChangedEventArgs> { }\r\n\r\n/**\r\n * A StagePanelDef represents each Stage Panel within a Frontstage.\r\n * @public @deprecated\r\n */\r\nexport class StagePanelDef extends WidgetHost {\r\n private _panelState = StagePanelState.Open;\r\n private _defaultState = StagePanelState.Open;\r\n private _maxSizeSpec: StagePanelMaxSizeSpec | undefined;\r\n private _minSize: number | undefined;\r\n private _size: number | undefined;\r\n private _defaultSize: number | undefined;\r\n private _resizable = true;\r\n private _pinned = true;\r\n private _applicationData?: any;\r\n private _location: StagePanelLocation = StagePanelLocation.Left;\r\n private _panelZones = new StagePanelZonesDef();\r\n\r\n /** Constructor for PanelDef.\r\n */\r\n constructor() {\r\n super();\r\n }\r\n\r\n /** @internal */\r\n public get maxSizeSpec() { return this._maxSizeSpec; }\r\n\r\n /** @internal */\r\n public get minSize() { return this._minSize; }\r\n\r\n /** Default size of the panel */\r\n public get size() { return this._size; }\r\n\r\n public set size(size) {\r\n if (this._size === size)\r\n return;\r\n\r\n // istanbul ignore else\r\n if (UiFramework.uiVersion === \"2\") {\r\n const frontstageDef = FrontstageManager.activeFrontstageDef;\r\n // istanbul ignore else\r\n if (frontstageDef && frontstageDef.nineZoneState) {\r\n const side = toPanelSide(this.location);\r\n frontstageDef.nineZoneState = setPanelSize(frontstageDef.nineZoneState, side, size);\r\n const panel = frontstageDef.nineZoneState.panels[side];\r\n if (panel.size === this._size)\r\n return;\r\n size = panel.size;\r\n }\r\n }\r\n this._size = size;\r\n FrontstageManager.onPanelSizeChangedEvent.emit({\r\n panelDef: this,\r\n size,\r\n });\r\n }\r\n\r\n /** Indicates whether the panel is resizable. */\r\n // istanbul ignore next\r\n public get resizable(): boolean { return this._resizable; }\r\n\r\n /** Indicates whether the panel is pinned. */\r\n public get pinned(): boolean { return this._pinned; }\r\n\r\n /** Any application data to attach to this Panel. */\r\n public get applicationData(): any | undefined { return this._applicationData; }\r\n /** Location of panel. */\r\n public get location(): StagePanelLocation { return this._location; }\r\n\r\n /** Panel state. Defaults to PanelState.Open. */\r\n public get panelState() {\r\n return this._panelState;\r\n }\r\n\r\n public set panelState(panelState: StagePanelState) {\r\n if (panelState === this._panelState)\r\n return;\r\n const frontstageDef = FrontstageManager.activeFrontstageDef;\r\n if (UiFramework.uiVersion === \"2\" && frontstageDef && frontstageDef.nineZoneState) {\r\n const side = toPanelSide(this.location);\r\n frontstageDef.nineZoneState = produce(frontstageDef.nineZoneState, (nineZone) => {\r\n const panel = nineZone.panels[side];\r\n switch (panelState) {\r\n case StagePanelState.Minimized: {\r\n panel.collapsed = true;\r\n break;\r\n }\r\n case StagePanelState.Open: {\r\n panel.collapsed = false;\r\n break;\r\n }\r\n case StagePanelState.Off: {\r\n panel.collapsed = true;\r\n break;\r\n }\r\n }\r\n });\r\n }\r\n this._panelState = panelState;\r\n FrontstageManager.onPanelStateChangedEvent.emit({\r\n panelDef: this,\r\n panelState,\r\n });\r\n }\r\n\r\n /** @internal */\r\n public get defaultState() { return this._defaultState; }\r\n\r\n /** @internal */\r\n public get defaultSize() { return this._defaultSize; }\r\n\r\n /** Panel zones.\r\n * @internal\r\n */\r\n public get panelZones() {\r\n return this._panelZones;\r\n }\r\n\r\n /** @internal */\r\n public initializeFromProps(props?: StagePanelProps, panelLocation?: StagePanelLocation): void {\r\n if (panelLocation !== undefined)\r\n this._location = panelLocation;\r\n if (!props)\r\n return;\r\n this._size = props.size;\r\n this._defaultSize = props.size;\r\n this._maxSizeSpec = props.maxSize;\r\n this._minSize = props.minSize;\r\n if (panelLocation !== undefined)\r\n this._location = panelLocation;\r\n if (props.defaultState !== undefined) {\r\n this._panelState = props.defaultState;\r\n this._defaultState = props.defaultState;\r\n }\r\n this._resizable = props.resizable;\r\n if (props.pinned !== undefined)\r\n this._pinned = props.pinned;\r\n if (props.applicationData !== undefined)\r\n this._applicationData = props.applicationData;\r\n if (props.panelZones) {\r\n this._panelZones.initializeFromProps(props.panelZones, this._location);\r\n }\r\n\r\n if (props.widgets) {\r\n props.widgets.forEach((widgetNode, index) => {\r\n const stableId = `uifw-sp-${StagePanelLocation[this._location]}-${index}`;\r\n const stableProps = getStableWidgetProps(widgetNode.props, stableId);\r\n const widgetDef = new WidgetDef(stableProps);\r\n this.addWidgetDef(widgetDef);\r\n });\r\n }\r\n }\r\n\r\n /** Gets the list of Widgets. */\r\n public override get widgetDefs(): ReadonlyArray<WidgetDef> {\r\n const widgetDefs = [...super.widgetDefs];\r\n for (const [, panelZone] of this.panelZones) {\r\n widgetDefs.push(...panelZone.widgetDefs);\r\n }\r\n return widgetDefs;\r\n }\r\n\r\n /** Gets the list of Widgets (w/o StagePanelZone widgets).\r\n * @internal\r\n */\r\n public get panelWidgetDefs() {\r\n return super.widgetDefs;\r\n }\r\n\r\n /** @internal */\r\n public override updateDynamicWidgetDefs(stageId: string, stageUsage: string, location: ZoneLocation | StagePanelLocation, _section: StagePanelSection | undefined,\r\n widgetDefs: WidgetDef[], frontstageApplicationData?: any,\r\n ): void {\r\n this.panelZones.start.updateDynamicWidgetDefs(stageId, stageUsage, location, StagePanelSection.Start, widgetDefs, frontstageApplicationData);\r\n this.panelZones.middle.updateDynamicWidgetDefs(stageId, stageUsage, location, StagePanelSection.Middle, widgetDefs, frontstageApplicationData);\r\n this.panelZones.end.updateDynamicWidgetDefs(stageId, stageUsage, location, StagePanelSection.End, widgetDefs, frontstageApplicationData);\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport type StagePanelZoneDefKeys = keyof Pick<StagePanelZonesDef, \"start\" | \"middle\" | \"end\">;\r\n\r\nconst stagePanelZoneDefKeys: StagePanelZoneDefKeys[] = [\"start\", \"middle\", \"end\"];\r\n\r\n/** @internal */\r\nexport class StagePanelZonesDef {\r\n private _start = new StagePanelZoneDef();\r\n private _middle = new StagePanelZoneDef();\r\n private _end = new StagePanelZoneDef();\r\n\r\n public get start() {\r\n return this._start;\r\n }\r\n\r\n public get middle() {\r\n return this._middle;\r\n }\r\n\r\n public get end() {\r\n return this._end;\r\n }\r\n\r\n /** @internal */\r\n public initializeFromProps(props: StagePanelZonesProps, panelLocation: StagePanelLocation): void {\r\n if (props.start) {\r\n this.start.initializeFromProps(props.start, panelLocation, \"start\");\r\n }\r\n if (props.middle) {\r\n this.middle.initializeFromProps(props.middle, panelLocation, \"middle\");\r\n }\r\n if (props.end) {\r\n this.end.initializeFromProps(props.end, panelLocation, \"end\");\r\n }\r\n }\r\n\r\n /** @internal */\r\n public *[Symbol.iterator](): Iterator<[StagePanelZoneDefKeys, StagePanelZoneDef]> {\r\n for (const key of stagePanelZoneDefKeys) {\r\n const value = this[key];\r\n yield [key, value];\r\n }\r\n return undefined;\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport class StagePanelZoneDef extends WidgetHost {\r\n /** @internal */\r\n public initializeFromProps(props: StagePanelZoneProps, panelLocation: StagePanelLocation, panelZone: StagePanelZoneDefKeys): void {\r\n props.widgets.forEach((widgetNode, index) => {\r\n const stableId = `uifw-spz-${StagePanelLocation[panelLocation]}-${panelZone}-${index}`;\r\n const stableProps = getStableWidgetProps(widgetNode.props, stableId);\r\n const widgetDef = new WidgetDef(stableProps);\r\n this.addWidgetDef(widgetDef);\r\n });\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport function toPanelSide(location: StagePanelLocation): PanelSide {\r\n switch (location) {\r\n case StagePanelLocation.Bottom:\r\n case StagePanelLocation.BottomMost:\r\n return \"bottom\";\r\n case StagePanelLocation.Left:\r\n return \"left\";\r\n case StagePanelLocation.Right:\r\n return \"right\";\r\n case StagePanelLocation.Top:\r\n case StagePanelLocation.TopMost:\r\n return \"top\";\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport const setPanelSize = produce((\r\n nineZone: Draft<NineZoneState>,\r\n side: PanelSide,\r\n size: number | undefined,\r\n) => {\r\n const panel = nineZone.panels[side];\r\n panel.size = size === undefined ? size : Math.min(Math.max(size, panel.minSize), panel.maxSize);\r\n});\r\n"]}
|
|
1
|
+
{"version":3,"file":"StagePanelDef.js","sourceRoot":"","sources":["../../../../src/appui-react/stagepanels/StagePanelDef.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/* eslint-disable deprecation/deprecation */\r\n/** @packageDocumentation\r\n * @module Frontstage\r\n */\r\n\r\nimport produce, { Draft } from \"immer\";\r\nimport { StagePanelLocation, StagePanelSection } from \"@itwin/appui-abstract\";\r\nimport { UiEvent } from \"@itwin/core-react\";\r\nimport { NineZoneState, PanelSide } from \"@itwin/appui-layout-react\";\r\nimport { FrontstageManager } from \"../frontstage/FrontstageManager\";\r\nimport { WidgetDef } from \"../widgets/WidgetDef\";\r\nimport { WidgetHost } from \"../widgets/WidgetHost\";\r\nimport { StagePanelMaxSizeSpec, StagePanelProps, StagePanelZoneProps, StagePanelZonesProps } from \"./StagePanel\";\r\nimport { getStableWidgetProps, ZoneLocation } from \"../zones/Zone\";\r\nimport { UiFramework } from \"../UiFramework\";\r\n\r\n/** Enum for StagePanel state.\r\n * @public\r\n */\r\nexport enum StagePanelState {\r\n Off,\r\n Minimized,\r\n Open,\r\n Popup,\r\n}\r\n\r\n/** Panel State Changed Event Args interface.\r\n * @public @deprecated\r\n */\r\nexport interface PanelStateChangedEventArgs {\r\n panelDef: StagePanelDef;\r\n panelState: StagePanelState;\r\n}\r\n\r\n/** Panel State Changed Event class.\r\n * @beta\r\n */\r\nexport class PanelStateChangedEvent extends UiEvent<PanelStateChangedEventArgs> { }\r\n\r\n/** @internal */\r\nexport interface PanelSizeChangedEventArgs {\r\n panelDef: StagePanelDef;\r\n size: number | undefined;\r\n}\r\n\r\n/** @internal */\r\nexport class PanelSizeChangedEvent extends UiEvent<PanelSizeChangedEventArgs> { }\r\n\r\n/**\r\n * A StagePanelDef represents each Stage Panel within a Frontstage.\r\n * @public\r\n */\r\nexport class StagePanelDef extends WidgetHost {\r\n private _panelState = StagePanelState.Open;\r\n private _defaultState = StagePanelState.Open;\r\n private _maxSizeSpec: StagePanelMaxSizeSpec | undefined;\r\n private _minSize: number | undefined;\r\n private _size: number | undefined;\r\n private _defaultSize: number | undefined;\r\n private _resizable = true;\r\n private _pinned = true;\r\n private _applicationData?: any;\r\n private _location: StagePanelLocation = StagePanelLocation.Left;\r\n private _panelZones = new StagePanelZonesDef();\r\n\r\n /** Constructor for PanelDef.\r\n */\r\n constructor() {\r\n super();\r\n }\r\n\r\n /** @internal */\r\n public get maxSizeSpec() { return this._maxSizeSpec; }\r\n\r\n /** @internal */\r\n public get minSize() { return this._minSize; }\r\n\r\n /** Default size of the panel */\r\n public get size() {\r\n // istanbul ignore next\r\n if (\"1\" === UiFramework.uiVersion)\r\n return this._size;\r\n\r\n // istanbul ignore else\r\n if (FrontstageManager.activeFrontstageDef) {\r\n const [_, size] = FrontstageManager.activeFrontstageDef.getPanelCurrentState(this);\r\n return size;\r\n }\r\n // istanbul ignore next\r\n return this._defaultSize;\r\n }\r\n\r\n public set size(size) {\r\n if (this._size === size)\r\n return;\r\n\r\n // istanbul ignore else\r\n if (UiFramework.uiVersion === \"2\") {\r\n const frontstageDef = FrontstageManager.activeFrontstageDef;\r\n // istanbul ignore else\r\n if (frontstageDef && frontstageDef.nineZoneState) {\r\n const side = toPanelSide(this.location);\r\n frontstageDef.nineZoneState = setPanelSize(frontstageDef.nineZoneState, side, size);\r\n const panel = frontstageDef.nineZoneState.panels[side];\r\n if (panel.size === this._size)\r\n return;\r\n size = panel.size;\r\n }\r\n }\r\n this._size = size;\r\n FrontstageManager.onPanelSizeChangedEvent.emit({\r\n panelDef: this,\r\n size,\r\n });\r\n }\r\n\r\n /** Indicates whether the panel is resizable. */\r\n // istanbul ignore next\r\n public get resizable(): boolean { return this._resizable; }\r\n\r\n /** Indicates whether the panel is pinned. */\r\n public get pinned(): boolean { return this._pinned; }\r\n\r\n /** Any application data to attach to this Panel. */\r\n public get applicationData(): any | undefined { return this._applicationData; }\r\n /** Location of panel. */\r\n public get location(): StagePanelLocation { return this._location; }\r\n\r\n /** Panel state. Defaults to PanelState.Open. */\r\n public get panelState() {\r\n if (\"1\" === UiFramework.uiVersion)\r\n return this._panelState;\r\n\r\n // istanbul ignore else\r\n if (FrontstageManager.activeFrontstageDef) {\r\n const [state] = FrontstageManager.activeFrontstageDef?.getPanelCurrentState(this);\r\n return state;\r\n }\r\n // istanbul ignore next\r\n return this.defaultState;\r\n }\r\n\r\n public set panelState(panelState: StagePanelState) {\r\n if (panelState === this._panelState)\r\n return;\r\n const frontstageDef = FrontstageManager.activeFrontstageDef;\r\n if (UiFramework.uiVersion === \"2\" && frontstageDef && frontstageDef.nineZoneState) {\r\n const side = toPanelSide(this.location);\r\n frontstageDef.nineZoneState = produce(frontstageDef.nineZoneState, (nineZone) => {\r\n const panel = nineZone.panels[side];\r\n switch (panelState) {\r\n case StagePanelState.Minimized: {\r\n panel.collapsed = true;\r\n break;\r\n }\r\n case StagePanelState.Open: {\r\n panel.collapsed = false;\r\n break;\r\n }\r\n case StagePanelState.Off: {\r\n panel.collapsed = true;\r\n break;\r\n }\r\n }\r\n });\r\n }\r\n this._panelState = panelState;\r\n FrontstageManager.onPanelStateChangedEvent.emit({\r\n panelDef: this,\r\n panelState,\r\n });\r\n }\r\n\r\n /** @internal */\r\n public get defaultState() { return this._defaultState; }\r\n\r\n /** @internal */\r\n public get defaultSize() { return this._defaultSize; }\r\n\r\n /** Panel zones.\r\n * @internal\r\n */\r\n public get panelZones() {\r\n return this._panelZones;\r\n }\r\n\r\n /** @internal */\r\n public initializeFromProps(props?: StagePanelProps, panelLocation?: StagePanelLocation): void {\r\n if (panelLocation !== undefined)\r\n this._location = panelLocation;\r\n if (!props)\r\n return;\r\n this._size = props.size;\r\n this._defaultSize = props.size;\r\n this._maxSizeSpec = props.maxSize;\r\n this._minSize = props.minSize;\r\n if (panelLocation !== undefined)\r\n this._location = panelLocation;\r\n if (props.defaultState !== undefined) {\r\n this._panelState = props.defaultState;\r\n this._defaultState = props.defaultState;\r\n }\r\n this._resizable = props.resizable;\r\n if (props.pinned !== undefined)\r\n this._pinned = props.pinned;\r\n if (props.applicationData !== undefined)\r\n this._applicationData = props.applicationData;\r\n if (props.panelZones) {\r\n this._panelZones.initializeFromProps(props.panelZones, this._location);\r\n }\r\n\r\n if (props.widgets) {\r\n props.widgets.forEach((widgetNode, index) => {\r\n const stableId = `uifw-sp-${StagePanelLocation[this._location]}-${index}`;\r\n const stableProps = getStableWidgetProps(widgetNode.props, stableId);\r\n const widgetDef = new WidgetDef(stableProps);\r\n this.addWidgetDef(widgetDef);\r\n });\r\n }\r\n }\r\n\r\n /** Gets the list of Widgets. */\r\n public override get widgetDefs(): ReadonlyArray<WidgetDef> {\r\n const widgetDefs = [...super.widgetDefs];\r\n for (const [, panelZone] of this.panelZones) {\r\n widgetDefs.push(...panelZone.widgetDefs);\r\n }\r\n return widgetDefs;\r\n }\r\n\r\n /** Gets the list of Widgets (w/o StagePanelZone widgets).\r\n * @internal\r\n */\r\n public get panelWidgetDefs() {\r\n return super.widgetDefs;\r\n }\r\n\r\n /** @internal */\r\n public override updateDynamicWidgetDefs(stageId: string, stageUsage: string, location: ZoneLocation | StagePanelLocation, _section: StagePanelSection | undefined,\r\n widgetDefs: WidgetDef[], frontstageApplicationData?: any,\r\n ): void {\r\n this.panelZones.start.updateDynamicWidgetDefs(stageId, stageUsage, location, StagePanelSection.Start, widgetDefs, frontstageApplicationData);\r\n this.panelZones.middle.updateDynamicWidgetDefs(stageId, stageUsage, location, StagePanelSection.Middle, widgetDefs, frontstageApplicationData);\r\n this.panelZones.end.updateDynamicWidgetDefs(stageId, stageUsage, location, StagePanelSection.End, widgetDefs, frontstageApplicationData);\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport type StagePanelZoneDefKeys = keyof Pick<StagePanelZonesDef, \"start\" | \"middle\" | \"end\">;\r\n\r\nconst stagePanelZoneDefKeys: StagePanelZoneDefKeys[] = [\"start\", \"middle\", \"end\"];\r\n\r\n/** @internal */\r\nexport class StagePanelZonesDef {\r\n private _start = new StagePanelZoneDef();\r\n private _middle = new StagePanelZoneDef();\r\n private _end = new StagePanelZoneDef();\r\n\r\n public get start() {\r\n return this._start;\r\n }\r\n\r\n public get middle() {\r\n return this._middle;\r\n }\r\n\r\n public get end() {\r\n return this._end;\r\n }\r\n\r\n /** @internal */\r\n public initializeFromProps(props: StagePanelZonesProps, panelLocation: StagePanelLocation): void {\r\n if (props.start) {\r\n this.start.initializeFromProps(props.start, panelLocation, \"start\");\r\n }\r\n if (props.middle) {\r\n this.middle.initializeFromProps(props.middle, panelLocation, \"middle\");\r\n }\r\n if (props.end) {\r\n this.end.initializeFromProps(props.end, panelLocation, \"end\");\r\n }\r\n }\r\n\r\n /** @internal */\r\n public *[Symbol.iterator](): Iterator<[StagePanelZoneDefKeys, StagePanelZoneDef]> {\r\n for (const key of stagePanelZoneDefKeys) {\r\n const value = this[key];\r\n yield [key, value];\r\n }\r\n return undefined;\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport class StagePanelZoneDef extends WidgetHost {\r\n /** @internal */\r\n public initializeFromProps(props: StagePanelZoneProps, panelLocation: StagePanelLocation, panelZone: StagePanelZoneDefKeys): void {\r\n props.widgets.forEach((widgetNode, index) => {\r\n const stableId = `uifw-spz-${StagePanelLocation[panelLocation]}-${panelZone}-${index}`;\r\n const stableProps = getStableWidgetProps(widgetNode.props, stableId);\r\n const widgetDef = new WidgetDef(stableProps);\r\n this.addWidgetDef(widgetDef);\r\n });\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport function toPanelSide(location: StagePanelLocation): PanelSide {\r\n switch (location) {\r\n case StagePanelLocation.Bottom:\r\n case StagePanelLocation.BottomMost:\r\n return \"bottom\";\r\n case StagePanelLocation.Left:\r\n return \"left\";\r\n case StagePanelLocation.Right:\r\n return \"right\";\r\n case StagePanelLocation.Top:\r\n case StagePanelLocation.TopMost:\r\n return \"top\";\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport const setPanelSize = produce((\r\n nineZone: Draft<NineZoneState>,\r\n side: PanelSide,\r\n size: number | undefined,\r\n) => {\r\n const panel = nineZone.panels[side];\r\n panel.size = size === undefined ? size : Math.min(Math.max(size, panel.minSize), panel.maxSize);\r\n});\r\n"]}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
import { StatusBarItemsManager as UIA_StatusBarItemsManager } from "@itwin/appui-abstract";
|
|
5
5
|
/** StatusBar Items Manager class.
|
|
6
6
|
* @beta
|
|
7
|
-
* @deprecated Use [StatusBarItemsManager]($appui-abstract)
|
|
7
|
+
* @deprecated Use [StatusBarItemsManager]($appui-abstract) instead
|
|
8
8
|
*/
|
|
9
9
|
export declare class StatusBarItemsManager extends UIA_StatusBarItemsManager {
|
|
10
10
|
}
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
import { StatusBarItemsManager as UIA_StatusBarItemsManager } from "@itwin/appui-abstract";
|
|
9
9
|
/** StatusBar Items Manager class.
|
|
10
10
|
* @beta
|
|
11
|
-
* @deprecated Use [StatusBarItemsManager]($appui-abstract)
|
|
11
|
+
* @deprecated Use [StatusBarItemsManager]($appui-abstract) instead
|
|
12
12
|
*/
|
|
13
13
|
export class StatusBarItemsManager extends UIA_StatusBarItemsManager {
|
|
14
14
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StatusBarItemsManager.js","sourceRoot":"","sources":["../../../../src/appui-react/statusbar/StatusBarItemsManager.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH,OAAO,EAAE,qBAAqB,IAAI,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AAE3F;;;GAGG;AACH,MAAM,OAAO,qBAAsB,SAAQ,yBAAyB;CAAI","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module StatusBar\r\n */\r\n\r\nimport { StatusBarItemsManager as UIA_StatusBarItemsManager } from \"@itwin/appui-abstract\";\r\n\r\n/** StatusBar Items Manager class.\r\n * @beta\r\n * @deprecated Use [StatusBarItemsManager]($appui-abstract)
|
|
1
|
+
{"version":3,"file":"StatusBarItemsManager.js","sourceRoot":"","sources":["../../../../src/appui-react/statusbar/StatusBarItemsManager.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH,OAAO,EAAE,qBAAqB,IAAI,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AAE3F;;;GAGG;AACH,MAAM,OAAO,qBAAsB,SAAQ,yBAAyB;CAAI","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module StatusBar\r\n */\r\n\r\nimport { StatusBarItemsManager as UIA_StatusBarItemsManager } from \"@itwin/appui-abstract\";\r\n\r\n/** StatusBar Items Manager class.\r\n * @beta\r\n * @deprecated Use [StatusBarItemsManager]($appui-abstract) instead\r\n */\r\nexport class StatusBarItemsManager extends UIA_StatusBarItemsManager { }\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToolButton.js","sourceRoot":"","sources":["../../../../src/appui-react/toolbar/ToolButton.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Item\r\n */\r\n\r\nimport * as React from \"react\";\r\nimport { IModelApp, Tool } from \"@itwin/core-frontend\";\r\nimport { ConditionalStringValue, StringGetter } from \"@itwin/appui-abstract\";\r\nimport { BadgeUtilities, CommonProps, Icon } from \"@itwin/core-react\";\r\nimport { getToolbarItemProps, Item } from \"@itwin/appui-layout-react\";\r\nimport { FrontstageManager } from \"../frontstage/FrontstageManager\";\r\nimport { BaseItemState } from \"../shared/ItemDefBase\";\r\nimport { ToolItemProps } from \"../shared/ItemProps\";\r\nimport { SyncUiEventArgs, SyncUiEventDispatcher, SyncUiEventId } from \"../syncui/SyncUiEventDispatcher\";\r\nimport { UiFramework } from \"../UiFramework\";\r\nimport { PropsHelper } from \"../utils/PropsHelper\";\r\nimport { onEscapeSetFocusToHome } from \"../hooks/useEscapeSetFocusToHome\";\r\n\r\n/** Properties for the [[ToolButton]] React Component.\r\n * @public\r\n */\r\nexport interface ToolButtonProps extends ToolItemProps, CommonProps { }\r\n\r\n/** Tool Button React Component.\r\n * @public\r\n */\r\nexport class ToolButton extends React.Component<ToolButtonProps, BaseItemState> {\r\n private _componentUnmounting = false;\r\n private _label: string | StringGetter | ConditionalStringValue = \"\";\r\n\r\n /** @internal */\r\n public override readonly state: Readonly<BaseItemState>;\r\n\r\n constructor(props: ToolItemProps) {\r\n super(props);\r\n\r\n if (props.label)\r\n this._label = props.label;\r\n else if (props.labelKey)\r\n this._label = UiFramework.localization.getLocalizedString(props.labelKey);\r\n\r\n this.state = {\r\n isVisible: undefined !== props.isVisible ? props.isVisible : true, // eslint-disable-line deprecation/deprecation\r\n isEnabled: undefined !== props.isEnabled ? props.isEnabled : true, // eslint-disable-line deprecation/deprecation\r\n isActive: undefined !== props.isActive ? props.isActive : false,\r\n isPressed: undefined !== props.isPressed ? props.isPressed : false,\r\n };\r\n }\r\n\r\n private _handleSyncUiEvent = (args: SyncUiEventArgs): void => {\r\n // istanbul ignore if\r\n if (this._componentUnmounting) return;\r\n\r\n let refreshState = false;\r\n let newState: BaseItemState = { ...this.state };\r\n\r\n // since this is a tool button automatically monitor the activation of tools so the active state of the button is updated.\r\n if (args.eventIds.has(SyncUiEventId.ToolActivated)) {\r\n newState.isActive = this.props.toolId === FrontstageManager.activeToolId;\r\n refreshState = true;\r\n }\r\n\r\n if (!refreshState && this.props.stateSyncIds && this.props.stateSyncIds.length > 0) // eslint-disable-line deprecation/deprecation\r\n refreshState = this.props.stateSyncIds.some((value: string): boolean => args.eventIds.has(value.toLowerCase())); // eslint-disable-line deprecation/deprecation\r\n\r\n if (refreshState) {\r\n if (this.props.stateFunc) // eslint-disable-line deprecation/deprecation\r\n newState = this.props.stateFunc(newState); // eslint-disable-line deprecation/deprecation\r\n\r\n // istanbul ignore next\r\n if ((this.state.isActive !== newState.isActive) ||\r\n ( /* istanbul ignore next */ this.state.isEnabled !== newState.isEnabled) ||\r\n ( /* istanbul ignore next */ this.state.isVisible !== newState.isVisible)) {\r\n this.setState({\r\n isActive: newState.isActive,\r\n isEnabled: newState.isEnabled,\r\n isVisible: newState.isVisible,\r\n });\r\n }\r\n }\r\n };\r\n\r\n public override componentDidMount() {\r\n SyncUiEventDispatcher.onSyncUiEvent.addListener(this._handleSyncUiEvent);\r\n }\r\n\r\n public override componentWillUnmount() {\r\n this._componentUnmounting = true;\r\n SyncUiEventDispatcher.onSyncUiEvent.removeListener(this._handleSyncUiEvent);\r\n }\r\n\r\n private _execute = async () => {\r\n if (this.props.execute) {\r\n this.props.execute();\r\n } else {\r\n const thisTool: typeof Tool | undefined = IModelApp.tools.find(this.props.toolId);\r\n // istanbul ignore
|
|
1
|
+
{"version":3,"file":"ToolButton.js","sourceRoot":"","sources":["../../../../src/appui-react/toolbar/ToolButton.tsx"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,SAAS,EAAQ,MAAM,sBAAsB,CAAC;AAEvD,OAAO,EAAE,cAAc,EAAe,IAAI,EAAE,MAAM,mBAAmB,CAAC;AACtE,OAAO,EAAE,mBAAmB,EAAE,IAAI,EAAE,MAAM,2BAA2B,CAAC;AACtE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAGpE,OAAO,EAAmB,qBAAqB,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AACxG,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAO1E;;GAEG;AACH,MAAM,OAAO,UAAW,SAAQ,KAAK,CAAC,SAAyC;IAO7E,YAAY,KAAoB;QAC9B,KAAK,CAAC,KAAK,CAAC,CAAC;QAPP,yBAAoB,GAAG,KAAK,CAAC;QAC7B,WAAM,GAAmD,EAAE,CAAC;QAqB5D,uBAAkB,GAAG,CAAC,IAAqB,EAAQ,EAAE;YAC3D,qBAAqB;YACrB,IAAI,IAAI,CAAC,oBAAoB;gBAAE,OAAO;YAEtC,IAAI,YAAY,GAAG,KAAK,CAAC;YACzB,IAAI,QAAQ,GAAkB,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;YAEhD,0HAA0H;YAC1H,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,aAAa,CAAC,aAAa,CAAC,EAAE;gBAClD,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,iBAAiB,CAAC,YAAY,CAAC;gBACzE,YAAY,GAAG,IAAI,CAAC;aACrB;YAED,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,KAAK,CAAC,YAAY,IAAI,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,8CAA8C;gBAChI,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,KAAa,EAAW,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,CAAC,8CAA8C;YAEjK,IAAI,YAAY,EAAE;gBAChB,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,8CAA8C;oBACtE,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,8CAA8C;gBAE3F,uBAAuB;gBACvB,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,KAAK,QAAQ,CAAC,QAAQ,CAAC;oBAC7C,EAAE,0BAA2B,IAAI,CAAC,KAAK,CAAC,SAAS,KAAK,QAAQ,CAAC,SAAS,CAAC;oBACzE,EAAE,0BAA2B,IAAI,CAAC,KAAK,CAAC,SAAS,KAAK,QAAQ,CAAC,SAAS,CAAC,EAAE;oBAC3E,IAAI,CAAC,QAAQ,CAAC;wBACZ,QAAQ,EAAE,QAAQ,CAAC,QAAQ;wBAC3B,SAAS,EAAE,QAAQ,CAAC,SAAS;wBAC7B,SAAS,EAAE,QAAQ,CAAC,SAAS;qBAC9B,CAAC,CAAC;iBACJ;aACF;QACH,CAAC,CAAC;QAWM,aAAQ,GAAG,KAAK,IAAI,EAAE;YAC5B,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE;gBACtB,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;aACtB;iBAAM;gBACL,MAAM,QAAQ,GAA4B,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;gBAClF,uBAAuB;gBACvB,IAAI,QAAQ;oBACV,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC;aAChC;QACH,CAAC,CAAC;QAhEA,IAAI,KAAK,CAAC,KAAK;YACb,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC;aACvB,IAAI,KAAK,CAAC,QAAQ;YACrB,IAAI,CAAC,MAAM,GAAG,WAAW,CAAC,YAAY,CAAC,kBAAkB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAE5E,IAAI,CAAC,KAAK,GAAG;YACX,SAAS,EAAE,SAAS,KAAK,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI;YACjE,SAAS,EAAE,SAAS,KAAK,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI;YACjE,QAAQ,EAAE,SAAS,KAAK,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK;YAC/D,SAAS,EAAE,SAAS,KAAK,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK;SACnE,CAAC;IACJ,CAAC;IAmCe,iBAAiB;QAC/B,qBAAqB,CAAC,aAAa,CAAC,WAAW,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;IAC3E,CAAC;IAEe,oBAAoB;QAClC,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC;QACjC,qBAAqB,CAAC,aAAa,CAAC,cAAc,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;IAC9E,CAAC;IAaD,IAAW,KAAK;QACd,OAAO,WAAW,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACpD,CAAC;IAEe,MAAM;QACpB,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS;YACvB,OAAO,IAAI,CAAC;QAEd,MAAM,IAAI,GAAG,oBAAC,IAAI,IAAC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAI,CAAC;QACrD,MAAM,gBAAgB,GAAG,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACzD,MAAM,KAAK,GAAG,cAAc,CAAC,wBAAwB,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAE5E,OAAO,CACL,oBAAC,IAAI,CAAC,8CAA8C;eAC9C,gBAAgB,EACpB,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,EAC/B,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,EACvB,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,EAC7B,UAAU,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,EACjC,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,EACtB,OAAO,EAAE,IAAI,CAAC,QAAQ,EACtB,SAAS,EAAE,sBAAsB,EACjC,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,KAAK,GACZ,CACH,CAAC;IACJ,CAAC;CACF","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Item\r\n */\r\n\r\nimport * as React from \"react\";\r\nimport { IModelApp, Tool } from \"@itwin/core-frontend\";\r\nimport { ConditionalStringValue, StringGetter } from \"@itwin/appui-abstract\";\r\nimport { BadgeUtilities, CommonProps, Icon } from \"@itwin/core-react\";\r\nimport { getToolbarItemProps, Item } from \"@itwin/appui-layout-react\";\r\nimport { FrontstageManager } from \"../frontstage/FrontstageManager\";\r\nimport { BaseItemState } from \"../shared/ItemDefBase\";\r\nimport { ToolItemProps } from \"../shared/ItemProps\";\r\nimport { SyncUiEventArgs, SyncUiEventDispatcher, SyncUiEventId } from \"../syncui/SyncUiEventDispatcher\";\r\nimport { UiFramework } from \"../UiFramework\";\r\nimport { PropsHelper } from \"../utils/PropsHelper\";\r\nimport { onEscapeSetFocusToHome } from \"../hooks/useEscapeSetFocusToHome\";\r\n\r\n/** Properties for the [[ToolButton]] React Component.\r\n * @public\r\n */\r\nexport interface ToolButtonProps extends ToolItemProps, CommonProps { }\r\n\r\n/** Tool Button React Component.\r\n * @public\r\n */\r\nexport class ToolButton extends React.Component<ToolButtonProps, BaseItemState> {\r\n private _componentUnmounting = false;\r\n private _label: string | StringGetter | ConditionalStringValue = \"\";\r\n\r\n /** @internal */\r\n public override readonly state: Readonly<BaseItemState>;\r\n\r\n constructor(props: ToolItemProps) {\r\n super(props);\r\n\r\n if (props.label)\r\n this._label = props.label;\r\n else if (props.labelKey)\r\n this._label = UiFramework.localization.getLocalizedString(props.labelKey);\r\n\r\n this.state = {\r\n isVisible: undefined !== props.isVisible ? props.isVisible : true, // eslint-disable-line deprecation/deprecation\r\n isEnabled: undefined !== props.isEnabled ? props.isEnabled : true, // eslint-disable-line deprecation/deprecation\r\n isActive: undefined !== props.isActive ? props.isActive : false,\r\n isPressed: undefined !== props.isPressed ? props.isPressed : false,\r\n };\r\n }\r\n\r\n private _handleSyncUiEvent = (args: SyncUiEventArgs): void => {\r\n // istanbul ignore if\r\n if (this._componentUnmounting) return;\r\n\r\n let refreshState = false;\r\n let newState: BaseItemState = { ...this.state };\r\n\r\n // since this is a tool button automatically monitor the activation of tools so the active state of the button is updated.\r\n if (args.eventIds.has(SyncUiEventId.ToolActivated)) {\r\n newState.isActive = this.props.toolId === FrontstageManager.activeToolId;\r\n refreshState = true;\r\n }\r\n\r\n if (!refreshState && this.props.stateSyncIds && this.props.stateSyncIds.length > 0) // eslint-disable-line deprecation/deprecation\r\n refreshState = this.props.stateSyncIds.some((value: string): boolean => args.eventIds.has(value.toLowerCase())); // eslint-disable-line deprecation/deprecation\r\n\r\n if (refreshState) {\r\n if (this.props.stateFunc) // eslint-disable-line deprecation/deprecation\r\n newState = this.props.stateFunc(newState); // eslint-disable-line deprecation/deprecation\r\n\r\n // istanbul ignore next\r\n if ((this.state.isActive !== newState.isActive) ||\r\n ( /* istanbul ignore next */ this.state.isEnabled !== newState.isEnabled) ||\r\n ( /* istanbul ignore next */ this.state.isVisible !== newState.isVisible)) {\r\n this.setState({\r\n isActive: newState.isActive,\r\n isEnabled: newState.isEnabled,\r\n isVisible: newState.isVisible,\r\n });\r\n }\r\n }\r\n };\r\n\r\n public override componentDidMount() {\r\n SyncUiEventDispatcher.onSyncUiEvent.addListener(this._handleSyncUiEvent);\r\n }\r\n\r\n public override componentWillUnmount() {\r\n this._componentUnmounting = true;\r\n SyncUiEventDispatcher.onSyncUiEvent.removeListener(this._handleSyncUiEvent);\r\n }\r\n\r\n private _execute = async () => {\r\n if (this.props.execute) {\r\n this.props.execute();\r\n } else {\r\n const thisTool: typeof Tool | undefined = IModelApp.tools.find(this.props.toolId);\r\n // istanbul ignore next\r\n if (thisTool)\r\n await (new thisTool()).run();\r\n }\r\n };\r\n\r\n public get label(): string {\r\n return PropsHelper.getStringFromSpec(this._label);\r\n }\r\n\r\n public override render(): React.ReactNode {\r\n if (!this.state.isVisible)\r\n return null;\r\n\r\n const icon = <Icon iconSpec={this.props.iconSpec} />;\r\n const toolbarItemProps = getToolbarItemProps(this.props);\r\n const badge = BadgeUtilities.getComponentForBadgeType(this.props.badgeType);\r\n\r\n return (\r\n <Item // eslint-disable-line deprecation/deprecation\r\n {...toolbarItemProps}\r\n className={this.props.className}\r\n style={this.props.style}\r\n isActive={this.state.isActive}\r\n isDisabled={!this.state.isEnabled}\r\n title={this.label}\r\n key={this.props.toolId}\r\n onClick={this._execute}\r\n onKeyDown={onEscapeSetFocusToHome}\r\n icon={icon}\r\n badge={badge}\r\n />\r\n );\r\n }\r\n}\r\n"]}
|
|
@@ -5,7 +5,7 @@ import { CommandItemDef } from "../shared/CommandItemDef";
|
|
|
5
5
|
import { CustomItemDef } from "../shared/CustomItemDef";
|
|
6
6
|
import { ToolItemDef } from "../shared/ToolItemDef";
|
|
7
7
|
import { GroupItemDef } from "../toolbar/GroupItem";
|
|
8
|
-
/** Utility Class that provides definitions of tools provided by
|
|
8
|
+
/** Utility Class that provides definitions of tools provided by the ($core-frontend) core. These definitions can be used to populate the UI.
|
|
9
9
|
* @public
|
|
10
10
|
*/
|
|
11
11
|
export declare class CoreTools {
|
|
@@ -22,7 +22,7 @@ import { GroupItemDef } from "../toolbar/GroupItem";
|
|
|
22
22
|
import { RestoreFrontstageLayoutTool } from "./RestoreLayoutTool";
|
|
23
23
|
import { UiFramework } from "../UiFramework";
|
|
24
24
|
/* eslint-disable deprecation/deprecation */
|
|
25
|
-
/** Utility Class that provides definitions of tools provided by
|
|
25
|
+
/** Utility Class that provides definitions of tools provided by the ($core-frontend) core. These definitions can be used to populate the UI.
|
|
26
26
|
* @public
|
|
27
27
|
*/
|
|
28
28
|
// istanbul ignore next
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CoreToolDefinitions.js","sourceRoot":"","sources":["../../../../src/appui-react/tools/CoreToolDefinitions.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Tools\r\n */\r\n\r\nimport * as React from \"react\";\r\n// cSpell:ignore configurableui keyinbrowser\r\nimport {\r\n FitViewTool, FlyViewTool, IModelApp, MeasureDistanceTool, MeasureLocationTool, PanViewTool, RotateViewTool, SelectionTool, ViewClipByElementTool,\r\n ViewClipByPlaneTool, ViewClipByRangeTool, ViewClipByShapeTool, ViewClipDecorationProvider, ViewRedoTool, ViewToggleCameraTool, ViewUndoTool,\r\n WalkViewTool, WindowAreaTool, ZoomViewTool,\r\n} from \"@itwin/core-frontend\";\r\nimport { ConditionalBooleanValue, ConditionalStringValue } from \"@itwin/appui-abstract\";\r\nimport { ToolbarPopupContext } from \"@itwin/components-react\";\r\nimport { PopupButton, PopupButtonChildrenRenderPropArgs } from \"../toolbar/PopupButton\";\r\nimport { ContentViewManager } from \"../content/ContentViewManager\";\r\nimport { KeyinBrowser } from \"../keyinbrowser/KeyinBrowser\";\r\nimport { getIsHiddenIfSelectionNotActive, getSelectionContextSyncEventIds, selectionContextStateFunc } from \"../selection/SelectionContextItemDef\";\r\nimport { CommandItemDef } from \"../shared/CommandItemDef\";\r\nimport { CustomItemDef } from \"../shared/CustomItemDef\";\r\nimport { BaseItemState } from \"../shared/ItemDefBase\";\r\nimport { ToolItemDef } from \"../shared/ToolItemDef\";\r\nimport { SyncUiEventId } from \"../syncui/SyncUiEventDispatcher\";\r\nimport { GroupItemDef } from \"../toolbar/GroupItem\";\r\nimport { RestoreFrontstageLayoutTool } from \"./RestoreLayoutTool\";\r\nimport { UiFramework } from \"../UiFramework\";\r\n\r\n/* eslint-disable deprecation/deprecation */\r\n\r\n/** Utility Class that provides definitions of tools provided by iModel.js core. These definitions can be used to populate the UI.\r\n * @public\r\n */\r\n// istanbul ignore next\r\nexport class CoreTools {\r\n /** Get the CustomItemDef for PopupButton\r\n * @public\r\n */\r\n public static get keyinBrowserButtonItemDef() {\r\n return new CustomItemDef({\r\n customId: \"uif:keyinbrowser\",\r\n iconSpec: \"icon-process\",\r\n labelKey: \"UiFramework:keyinbrowser.label\",\r\n popupPanelNode: <ToolbarPopupContext.Consumer>\r\n {({ closePanel }) => (\r\n <KeyinBrowser onExecute={closePanel} onCancel={closePanel} />\r\n )}\r\n </ToolbarPopupContext.Consumer>,\r\n // DEPRECATED way\r\n reactElement: (\r\n <PopupButton iconSpec=\"icon-process\" labelKey=\"UiFramework:keyinbrowser.label\">\r\n {this._renderKeyInBrowser}\r\n </PopupButton>\r\n ),\r\n });\r\n }\r\n\r\n // istanbul ignore next\r\n private static _renderKeyInBrowser = ({ closePanel }: PopupButtonChildrenRenderPropArgs) => {\r\n return (\r\n <KeyinBrowser onExecute={closePanel} onCancel={closePanel} />\r\n );\r\n };\r\n\r\n public static get keyinPaletteButtonItemDef() {\r\n return new ToolItemDef({\r\n toolId: \"uif:keyinpalette\",\r\n iconSpec: \"icon-process\",\r\n labelKey: \"UiFramework:keyinbrowser.label\",\r\n execute: () => { IModelApp.uiAdmin.showKeyinPalette(); },\r\n });\r\n }\r\n\r\n public static get fitViewCommand() {\r\n return new ToolItemDef({\r\n toolId: FitViewTool.toolId,\r\n iconSpec: FitViewTool.iconSpec,\r\n label: FitViewTool.flyover,\r\n description: FitViewTool.description,\r\n execute: async () => IModelApp.tools.run(FitViewTool.toolId, IModelApp.viewManager.selectedView, true),\r\n });\r\n }\r\n\r\n public static get windowAreaCommand() {\r\n return new ToolItemDef({\r\n toolId: WindowAreaTool.toolId,\r\n iconSpec: WindowAreaTool.iconSpec,\r\n label: WindowAreaTool.flyover,\r\n description: WindowAreaTool.description,\r\n execute: async () => IModelApp.tools.run(WindowAreaTool.toolId, IModelApp.viewManager.selectedView),\r\n });\r\n }\r\n\r\n public static get zoomViewCommand() {\r\n return new ToolItemDef({\r\n toolId: ZoomViewTool.toolId,\r\n iconSpec: ZoomViewTool.iconSpec,\r\n label: ZoomViewTool.flyover,\r\n description: ZoomViewTool.description,\r\n execute: async () => IModelApp.tools.run(ZoomViewTool.toolId, IModelApp.viewManager.selectedView),\r\n });\r\n }\r\n\r\n public static get panViewCommand() {\r\n return new ToolItemDef({\r\n toolId: PanViewTool.toolId,\r\n iconSpec: PanViewTool.iconSpec,\r\n label: PanViewTool.flyover,\r\n description: PanViewTool.description,\r\n execute: async () => IModelApp.tools.run(PanViewTool.toolId, IModelApp.viewManager.selectedView),\r\n });\r\n }\r\n\r\n public static get rotateViewCommand() {\r\n return new ToolItemDef({\r\n toolId: RotateViewTool.toolId,\r\n iconSpec: new ConditionalStringValue(() => {\r\n const activeContentControl = ContentViewManager.getActiveContentControl();\r\n if (activeContentControl?.viewport?.view.is2d())\r\n return \"icon-rotate-left\";\r\n return \"icon-gyroscope\";\r\n }, [SyncUiEventId.ActiveContentChanged, SyncUiEventId.ActiveViewportChanged, SyncUiEventId.ViewStateChanged]),\r\n label: RotateViewTool.flyover,\r\n description: RotateViewTool.description,\r\n execute: async () => IModelApp.tools.run(RotateViewTool.toolId, IModelApp.viewManager.selectedView),\r\n });\r\n }\r\n\r\n public static get walkViewCommand() {\r\n return new ToolItemDef({\r\n toolId: WalkViewTool.toolId,\r\n iconSpec: WalkViewTool.iconSpec,\r\n label: WalkViewTool.flyover,\r\n description: WalkViewTool.description,\r\n isHidden: new ConditionalBooleanValue(() => {\r\n const activeContentControl = ContentViewManager.getActiveContentControl();\r\n return !!activeContentControl?.viewport?.view.is2d();\r\n }, [SyncUiEventId.ActiveContentChanged, SyncUiEventId.ActiveViewportChanged, SyncUiEventId.ViewStateChanged]),\r\n execute: async () => IModelApp.tools.run(WalkViewTool.toolId, IModelApp.viewManager.selectedView),\r\n });\r\n }\r\n\r\n public static get selectElementCommand() {\r\n return new ToolItemDef({\r\n toolId: SelectionTool.toolId,\r\n iconSpec: SelectionTool.iconSpec,\r\n label: SelectionTool.flyover,\r\n description: SelectionTool.description,\r\n execute: async () => IModelApp.tools.run(SelectionTool.toolId),\r\n });\r\n }\r\n\r\n public static get toggleCameraViewCommand() {\r\n return new ToolItemDef({\r\n toolId: ViewToggleCameraTool.toolId,\r\n iconSpec: new ConditionalStringValue(() => {\r\n const activeContentControl = ContentViewManager.getActiveContentControl();\r\n if (activeContentControl?.viewport?.view.is3d() && activeContentControl?.viewport?.isCameraOn)\r\n return \"icon-camera-animation\";\r\n return \"icon-camera-animation-disabled\";\r\n }, [SyncUiEventId.ActiveContentChanged, SyncUiEventId.ActiveViewportChanged, SyncUiEventId.ViewStateChanged]),\r\n label: ViewToggleCameraTool.flyover,\r\n description: ViewToggleCameraTool.description,\r\n isHidden: new ConditionalBooleanValue(() => {\r\n const activeContentControl = ContentViewManager.getActiveContentControl();\r\n return !(activeContentControl?.viewport?.view.is3d() && activeContentControl?.viewport?.view.supportsCamera());\r\n }, [SyncUiEventId.ActiveContentChanged, SyncUiEventId.ActiveViewportChanged, SyncUiEventId.ViewStateChanged]),\r\n execute: async () => IModelApp.tools.run(ViewToggleCameraTool.toolId, IModelApp.viewManager.selectedView),\r\n });\r\n }\r\n\r\n public static get flyViewCommand() {\r\n return new ToolItemDef({\r\n toolId: FlyViewTool.toolId,\r\n iconSpec: FlyViewTool.iconSpec,\r\n label: FlyViewTool.flyover,\r\n description: FlyViewTool.description,\r\n execute: async () => IModelApp.tools.run(FlyViewTool.toolId, IModelApp.viewManager.selectedView),\r\n });\r\n }\r\n\r\n // TODO - Need to provide a sync message that is fired when the Undo/Redo button needs to be refreshed in the\r\n // active view.\r\n public static get viewUndoCommand() {\r\n return new ToolItemDef({\r\n toolId: ViewUndoTool.toolId,\r\n isDisabled: new ConditionalBooleanValue(() => {\r\n const activeContentControl = ContentViewManager.getActiveContentControl();\r\n if (activeContentControl && activeContentControl.viewport)\r\n return !activeContentControl.viewport.isUndoPossible;\r\n return false;\r\n }, [SyncUiEventId.ActiveContentChanged, SyncUiEventId.ActiveViewportChanged, SyncUiEventId.ViewStateChanged]),\r\n iconSpec: ViewUndoTool.iconSpec,\r\n label: ViewUndoTool.flyover,\r\n description: ViewUndoTool.description,\r\n execute: async () =>\r\n IModelApp.tools.run(ViewUndoTool.toolId, IModelApp.viewManager.selectedView)\r\n ,\r\n stateSyncIds: [SyncUiEventId.ActiveContentChanged, SyncUiEventId.ActiveViewportChanged, SyncUiEventId.ViewStateChanged],\r\n stateFunc: (currentState: Readonly<BaseItemState>): BaseItemState => {\r\n const returnState: BaseItemState = { ...currentState };\r\n const activeContentControl = ContentViewManager.getActiveContentControl();\r\n if (activeContentControl && activeContentControl.viewport)\r\n returnState.isEnabled = activeContentControl.viewport.isUndoPossible;\r\n return returnState;\r\n },\r\n });\r\n }\r\n\r\n public static get viewRedoCommand() {\r\n return new ToolItemDef({\r\n toolId: ViewRedoTool.toolId,\r\n iconSpec: ViewRedoTool.iconSpec,\r\n label: ViewRedoTool.flyover,\r\n description: ViewRedoTool.description,\r\n execute: async () => IModelApp.tools.run(ViewRedoTool.toolId, IModelApp.viewManager.selectedView),\r\n isDisabled: new ConditionalBooleanValue(() => {\r\n const activeContentControl = ContentViewManager.getActiveContentControl();\r\n if (activeContentControl && activeContentControl.viewport)\r\n return !activeContentControl.viewport.isRedoPossible;\r\n return false;\r\n }, [SyncUiEventId.ActiveContentChanged, SyncUiEventId.ActiveViewportChanged, SyncUiEventId.ViewStateChanged]),\r\n stateSyncIds: [SyncUiEventId.ActiveContentChanged, SyncUiEventId.ActiveViewportChanged, SyncUiEventId.ViewStateChanged],\r\n stateFunc: (currentState: Readonly<BaseItemState>): BaseItemState => {\r\n const returnState: BaseItemState = { ...currentState };\r\n const activeContentControl = ContentViewManager.getActiveContentControl();\r\n if (activeContentControl && activeContentControl.viewport)\r\n returnState.isEnabled = activeContentControl.viewport.isRedoPossible;\r\n return returnState;\r\n },\r\n });\r\n }\r\n\r\n private static turnOnClipVolume() {\r\n const vp = IModelApp.viewManager.selectedView;\r\n if (!vp || !vp.view.is3d())\r\n return;\r\n\r\n // Turn on clip volume flag for section tools\r\n vp.viewFlags = vp.viewFlags.with(\"clipVolume\", true);\r\n }\r\n\r\n // note current ViewClipByPlaneTool is not automatically registered so the app must call ViewClipByPlaneTool.register();\r\n public static get sectionByPlaneCommandItemDef() {\r\n return new ToolItemDef({\r\n toolId: ViewClipByPlaneTool.toolId,\r\n iconSpec: ViewClipByPlaneTool.iconSpec,\r\n label: ViewClipByPlaneTool.flyover,\r\n description: ViewClipByPlaneTool.description,\r\n execute: async () => {\r\n this.turnOnClipVolume();\r\n return IModelApp.tools.run(ViewClipByPlaneTool.toolId, ViewClipDecorationProvider.create());\r\n },\r\n });\r\n }\r\n\r\n // note current ViewClipByElementTool is not automatically registered so the app must call ViewClipByElementTool.register();\r\n public static get sectionByElementCommandItemDef() {\r\n return new ToolItemDef({\r\n toolId: ViewClipByElementTool.toolId,\r\n iconSpec: ViewClipByElementTool.iconSpec,\r\n label: ViewClipByElementTool.flyover,\r\n description: ViewClipByElementTool.description,\r\n execute: async () => {\r\n this.turnOnClipVolume();\r\n return IModelApp.tools.run(ViewClipByElementTool.toolId, ViewClipDecorationProvider.create());\r\n },\r\n });\r\n }\r\n\r\n // note current ViewClipByRangeTool is not automatically registered so the app must call ViewClipByRangeTool.register();\r\n public static get sectionByRangeCommandItemDef() {\r\n return new ToolItemDef({\r\n toolId: ViewClipByRangeTool.toolId,\r\n iconSpec: ViewClipByRangeTool.iconSpec,\r\n label: ViewClipByRangeTool.flyover,\r\n description: ViewClipByRangeTool.description,\r\n execute: async () => {\r\n this.turnOnClipVolume();\r\n return IModelApp.tools.run(ViewClipByRangeTool.toolId, ViewClipDecorationProvider.create());\r\n },\r\n });\r\n }\r\n\r\n // note current ViewClipByShapeTool is not automatically registered so the app must call ViewClipByShapeTool.register();\r\n public static get sectionByShapeCommandItemDef() {\r\n return new ToolItemDef({\r\n toolId: ViewClipByShapeTool.toolId,\r\n iconSpec: ViewClipByShapeTool.iconSpec,\r\n label: ViewClipByShapeTool.flyover,\r\n description: ViewClipByShapeTool.description,\r\n execute: async () => {\r\n this.turnOnClipVolume();\r\n return IModelApp.tools.run(ViewClipByShapeTool.toolId, ViewClipDecorationProvider.create());\r\n },\r\n });\r\n }\r\n\r\n public static get sectionToolGroup() {\r\n ViewClipByElementTool.register();\r\n ViewClipByPlaneTool.register();\r\n ViewClipByRangeTool.register();\r\n ViewClipByShapeTool.register();\r\n\r\n return new GroupItemDef({\r\n groupId: \"sectionTools-group\",\r\n labelKey: \"UiFramework:tools.sectionTools\",\r\n iconSpec: \"icon-section-tool\",\r\n isHidden: new ConditionalBooleanValue(() => {\r\n const activeContentControl = ContentViewManager.getActiveContentControl();\r\n return !!activeContentControl?.viewport?.view.is2d();\r\n }, [SyncUiEventId.ActiveContentChanged, SyncUiEventId.ActiveViewportChanged, SyncUiEventId.ViewStateChanged]),\r\n items: [this.sectionByPlaneCommandItemDef, this.sectionByElementCommandItemDef, this.sectionByRangeCommandItemDef, this.sectionByShapeCommandItemDef],\r\n itemsInColumn: 4,\r\n });\r\n }\r\n\r\n public static get sectionToolGroupWithPanel() {\r\n ViewClipByElementTool.register();\r\n ViewClipByPlaneTool.register();\r\n ViewClipByRangeTool.register();\r\n ViewClipByShapeTool.register();\r\n\r\n return new GroupItemDef({\r\n groupId: \"sectionTools-group-with-panel\",\r\n labelKey: \"UiFramework:tools.sectionTools\",\r\n panelLabelKey: \"UiFramework:tools.sectionPanelLabel\",\r\n iconSpec: \"icon-section-tool\",\r\n isHidden: new ConditionalBooleanValue(() => {\r\n const activeContentControl = ContentViewManager.getActiveContentControl();\r\n return !!activeContentControl?.viewport?.view.is2d();\r\n }, [SyncUiEventId.ActiveContentChanged, SyncUiEventId.ActiveViewportChanged, SyncUiEventId.ViewStateChanged]),\r\n items: [\r\n new ToolItemDef({\r\n ...this.sectionByPlaneCommandItemDef,\r\n labelKey: \"UiFramework:tools.sectionByPlane\",\r\n }),\r\n new ToolItemDef({\r\n ...this.sectionByElementCommandItemDef,\r\n labelKey: \"UiFramework:tools.sectionByElement\",\r\n }),\r\n new ToolItemDef({\r\n ...this.sectionByRangeCommandItemDef,\r\n labelKey: \"UiFramework:tools.sectionByRange\",\r\n }),\r\n new ToolItemDef({\r\n ...this.sectionByShapeCommandItemDef,\r\n labelKey: \"UiFramework:tools.sectionByShape\",\r\n }),\r\n ],\r\n itemsInColumn: 4,\r\n });\r\n\r\n }\r\n\r\n // note current MeasureDistanceTool is not automatically registered so the app must call MeasureDistanceTool.register();\r\n public static get measureDistanceToolItemDef() {\r\n return new ToolItemDef({\r\n toolId: MeasureDistanceTool.toolId,\r\n iconSpec: MeasureDistanceTool.iconSpec,\r\n label: MeasureDistanceTool.flyover,\r\n description: MeasureDistanceTool.description,\r\n execute: async () => {\r\n return IModelApp.tools.run(MeasureDistanceTool.toolId);\r\n },\r\n });\r\n }\r\n\r\n // note current MeasureLocationTool is not automatically registered so the app must call MeasureLocationTool.register();\r\n public static get measureLocationToolItemDef() {\r\n return new ToolItemDef({\r\n toolId: MeasureLocationTool.toolId,\r\n iconSpec: MeasureLocationTool.iconSpec,\r\n label: MeasureLocationTool.flyover,\r\n description: MeasureLocationTool.description,\r\n execute: async () => {\r\n return IModelApp.tools.run(MeasureLocationTool.toolId);\r\n },\r\n });\r\n }\r\n\r\n public static get measureToolGroup() {\r\n MeasureDistanceTool.register();\r\n MeasureLocationTool.register();\r\n\r\n return new GroupItemDef({\r\n groupId: \"measureTools-group\",\r\n labelKey: \"UiFramework:tools.measureTools\",\r\n iconSpec: \"icon-measure\",\r\n items: [this.measureDistanceToolItemDef, this.measureLocationToolItemDef],\r\n itemsInColumn: 2,\r\n });\r\n }\r\n\r\n public static get clearSelectionItemDef() {\r\n return new CommandItemDef({\r\n commandId: \"UiFramework.ClearSelection\",\r\n iconSpec: \"icon-selection-clear\",\r\n labelKey: \"UiFramework:buttons.clearSelection\",\r\n stateSyncIds: getSelectionContextSyncEventIds(),\r\n stateFunc: selectionContextStateFunc,\r\n isHidden: getIsHiddenIfSelectionNotActive(),\r\n execute: async () => {\r\n const iModelConnection = UiFramework.getIModelConnection();\r\n if (iModelConnection) {\r\n iModelConnection.selectionSet.emptyAll();\r\n }\r\n const tool = IModelApp.toolAdmin.primitiveTool;\r\n if (tool)\r\n await tool.onRestartTool();\r\n else\r\n await IModelApp.toolAdmin.startDefaultTool();\r\n },\r\n });\r\n }\r\n\r\n public static get restoreFrontstageLayoutCommandItemDef() {\r\n return new ToolItemDef({\r\n toolId: RestoreFrontstageLayoutTool.toolId,\r\n iconSpec: RestoreFrontstageLayoutTool.iconSpec,\r\n label: RestoreFrontstageLayoutTool.flyover,\r\n description: RestoreFrontstageLayoutTool.description,\r\n execute: async () => {\r\n return IModelApp.tools.run(RestoreFrontstageLayoutTool.toolId);\r\n },\r\n });\r\n }\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"file":"CoreToolDefinitions.js","sourceRoot":"","sources":["../../../../src/appui-react/tools/CoreToolDefinitions.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Tools\r\n */\r\n\r\nimport * as React from \"react\";\r\n// cSpell:ignore configurableui keyinbrowser\r\nimport {\r\n FitViewTool, FlyViewTool, IModelApp, MeasureDistanceTool, MeasureLocationTool, PanViewTool, RotateViewTool, SelectionTool, ViewClipByElementTool,\r\n ViewClipByPlaneTool, ViewClipByRangeTool, ViewClipByShapeTool, ViewClipDecorationProvider, ViewRedoTool, ViewToggleCameraTool, ViewUndoTool,\r\n WalkViewTool, WindowAreaTool, ZoomViewTool,\r\n} from \"@itwin/core-frontend\";\r\nimport { ConditionalBooleanValue, ConditionalStringValue } from \"@itwin/appui-abstract\";\r\nimport { ToolbarPopupContext } from \"@itwin/components-react\";\r\nimport { PopupButton, PopupButtonChildrenRenderPropArgs } from \"../toolbar/PopupButton\";\r\nimport { ContentViewManager } from \"../content/ContentViewManager\";\r\nimport { KeyinBrowser } from \"../keyinbrowser/KeyinBrowser\";\r\nimport { getIsHiddenIfSelectionNotActive, getSelectionContextSyncEventIds, selectionContextStateFunc } from \"../selection/SelectionContextItemDef\";\r\nimport { CommandItemDef } from \"../shared/CommandItemDef\";\r\nimport { CustomItemDef } from \"../shared/CustomItemDef\";\r\nimport { BaseItemState } from \"../shared/ItemDefBase\";\r\nimport { ToolItemDef } from \"../shared/ToolItemDef\";\r\nimport { SyncUiEventId } from \"../syncui/SyncUiEventDispatcher\";\r\nimport { GroupItemDef } from \"../toolbar/GroupItem\";\r\nimport { RestoreFrontstageLayoutTool } from \"./RestoreLayoutTool\";\r\nimport { UiFramework } from \"../UiFramework\";\r\n\r\n/* eslint-disable deprecation/deprecation */\r\n\r\n/** Utility Class that provides definitions of tools provided by the ($core-frontend) core. These definitions can be used to populate the UI.\r\n * @public\r\n */\r\n// istanbul ignore next\r\nexport class CoreTools {\r\n /** Get the CustomItemDef for PopupButton\r\n * @public\r\n */\r\n public static get keyinBrowserButtonItemDef() {\r\n return new CustomItemDef({\r\n customId: \"uif:keyinbrowser\",\r\n iconSpec: \"icon-process\",\r\n labelKey: \"UiFramework:keyinbrowser.label\",\r\n popupPanelNode: <ToolbarPopupContext.Consumer>\r\n {({ closePanel }) => (\r\n <KeyinBrowser onExecute={closePanel} onCancel={closePanel} />\r\n )}\r\n </ToolbarPopupContext.Consumer>,\r\n // DEPRECATED way\r\n reactElement: (\r\n <PopupButton iconSpec=\"icon-process\" labelKey=\"UiFramework:keyinbrowser.label\">\r\n {this._renderKeyInBrowser}\r\n </PopupButton>\r\n ),\r\n });\r\n }\r\n\r\n // istanbul ignore next\r\n private static _renderKeyInBrowser = ({ closePanel }: PopupButtonChildrenRenderPropArgs) => {\r\n return (\r\n <KeyinBrowser onExecute={closePanel} onCancel={closePanel} />\r\n );\r\n };\r\n\r\n public static get keyinPaletteButtonItemDef() {\r\n return new ToolItemDef({\r\n toolId: \"uif:keyinpalette\",\r\n iconSpec: \"icon-process\",\r\n labelKey: \"UiFramework:keyinbrowser.label\",\r\n execute: () => { IModelApp.uiAdmin.showKeyinPalette(); },\r\n });\r\n }\r\n\r\n public static get fitViewCommand() {\r\n return new ToolItemDef({\r\n toolId: FitViewTool.toolId,\r\n iconSpec: FitViewTool.iconSpec,\r\n label: FitViewTool.flyover,\r\n description: FitViewTool.description,\r\n execute: async () => IModelApp.tools.run(FitViewTool.toolId, IModelApp.viewManager.selectedView, true),\r\n });\r\n }\r\n\r\n public static get windowAreaCommand() {\r\n return new ToolItemDef({\r\n toolId: WindowAreaTool.toolId,\r\n iconSpec: WindowAreaTool.iconSpec,\r\n label: WindowAreaTool.flyover,\r\n description: WindowAreaTool.description,\r\n execute: async () => IModelApp.tools.run(WindowAreaTool.toolId, IModelApp.viewManager.selectedView),\r\n });\r\n }\r\n\r\n public static get zoomViewCommand() {\r\n return new ToolItemDef({\r\n toolId: ZoomViewTool.toolId,\r\n iconSpec: ZoomViewTool.iconSpec,\r\n label: ZoomViewTool.flyover,\r\n description: ZoomViewTool.description,\r\n execute: async () => IModelApp.tools.run(ZoomViewTool.toolId, IModelApp.viewManager.selectedView),\r\n });\r\n }\r\n\r\n public static get panViewCommand() {\r\n return new ToolItemDef({\r\n toolId: PanViewTool.toolId,\r\n iconSpec: PanViewTool.iconSpec,\r\n label: PanViewTool.flyover,\r\n description: PanViewTool.description,\r\n execute: async () => IModelApp.tools.run(PanViewTool.toolId, IModelApp.viewManager.selectedView),\r\n });\r\n }\r\n\r\n public static get rotateViewCommand() {\r\n return new ToolItemDef({\r\n toolId: RotateViewTool.toolId,\r\n iconSpec: new ConditionalStringValue(() => {\r\n const activeContentControl = ContentViewManager.getActiveContentControl();\r\n if (activeContentControl?.viewport?.view.is2d())\r\n return \"icon-rotate-left\";\r\n return \"icon-gyroscope\";\r\n }, [SyncUiEventId.ActiveContentChanged, SyncUiEventId.ActiveViewportChanged, SyncUiEventId.ViewStateChanged]),\r\n label: RotateViewTool.flyover,\r\n description: RotateViewTool.description,\r\n execute: async () => IModelApp.tools.run(RotateViewTool.toolId, IModelApp.viewManager.selectedView),\r\n });\r\n }\r\n\r\n public static get walkViewCommand() {\r\n return new ToolItemDef({\r\n toolId: WalkViewTool.toolId,\r\n iconSpec: WalkViewTool.iconSpec,\r\n label: WalkViewTool.flyover,\r\n description: WalkViewTool.description,\r\n isHidden: new ConditionalBooleanValue(() => {\r\n const activeContentControl = ContentViewManager.getActiveContentControl();\r\n return !!activeContentControl?.viewport?.view.is2d();\r\n }, [SyncUiEventId.ActiveContentChanged, SyncUiEventId.ActiveViewportChanged, SyncUiEventId.ViewStateChanged]),\r\n execute: async () => IModelApp.tools.run(WalkViewTool.toolId, IModelApp.viewManager.selectedView),\r\n });\r\n }\r\n\r\n public static get selectElementCommand() {\r\n return new ToolItemDef({\r\n toolId: SelectionTool.toolId,\r\n iconSpec: SelectionTool.iconSpec,\r\n label: SelectionTool.flyover,\r\n description: SelectionTool.description,\r\n execute: async () => IModelApp.tools.run(SelectionTool.toolId),\r\n });\r\n }\r\n\r\n public static get toggleCameraViewCommand() {\r\n return new ToolItemDef({\r\n toolId: ViewToggleCameraTool.toolId,\r\n iconSpec: new ConditionalStringValue(() => {\r\n const activeContentControl = ContentViewManager.getActiveContentControl();\r\n if (activeContentControl?.viewport?.view.is3d() && activeContentControl?.viewport?.isCameraOn)\r\n return \"icon-camera-animation\";\r\n return \"icon-camera-animation-disabled\";\r\n }, [SyncUiEventId.ActiveContentChanged, SyncUiEventId.ActiveViewportChanged, SyncUiEventId.ViewStateChanged]),\r\n label: ViewToggleCameraTool.flyover,\r\n description: ViewToggleCameraTool.description,\r\n isHidden: new ConditionalBooleanValue(() => {\r\n const activeContentControl = ContentViewManager.getActiveContentControl();\r\n return !(activeContentControl?.viewport?.view.is3d() && activeContentControl?.viewport?.view.supportsCamera());\r\n }, [SyncUiEventId.ActiveContentChanged, SyncUiEventId.ActiveViewportChanged, SyncUiEventId.ViewStateChanged]),\r\n execute: async () => IModelApp.tools.run(ViewToggleCameraTool.toolId, IModelApp.viewManager.selectedView),\r\n });\r\n }\r\n\r\n public static get flyViewCommand() {\r\n return new ToolItemDef({\r\n toolId: FlyViewTool.toolId,\r\n iconSpec: FlyViewTool.iconSpec,\r\n label: FlyViewTool.flyover,\r\n description: FlyViewTool.description,\r\n execute: async () => IModelApp.tools.run(FlyViewTool.toolId, IModelApp.viewManager.selectedView),\r\n });\r\n }\r\n\r\n // TODO - Need to provide a sync message that is fired when the Undo/Redo button needs to be refreshed in the\r\n // active view.\r\n public static get viewUndoCommand() {\r\n return new ToolItemDef({\r\n toolId: ViewUndoTool.toolId,\r\n isDisabled: new ConditionalBooleanValue(() => {\r\n const activeContentControl = ContentViewManager.getActiveContentControl();\r\n if (activeContentControl && activeContentControl.viewport)\r\n return !activeContentControl.viewport.isUndoPossible;\r\n return false;\r\n }, [SyncUiEventId.ActiveContentChanged, SyncUiEventId.ActiveViewportChanged, SyncUiEventId.ViewStateChanged]),\r\n iconSpec: ViewUndoTool.iconSpec,\r\n label: ViewUndoTool.flyover,\r\n description: ViewUndoTool.description,\r\n execute: async () =>\r\n IModelApp.tools.run(ViewUndoTool.toolId, IModelApp.viewManager.selectedView)\r\n ,\r\n stateSyncIds: [SyncUiEventId.ActiveContentChanged, SyncUiEventId.ActiveViewportChanged, SyncUiEventId.ViewStateChanged],\r\n stateFunc: (currentState: Readonly<BaseItemState>): BaseItemState => {\r\n const returnState: BaseItemState = { ...currentState };\r\n const activeContentControl = ContentViewManager.getActiveContentControl();\r\n if (activeContentControl && activeContentControl.viewport)\r\n returnState.isEnabled = activeContentControl.viewport.isUndoPossible;\r\n return returnState;\r\n },\r\n });\r\n }\r\n\r\n public static get viewRedoCommand() {\r\n return new ToolItemDef({\r\n toolId: ViewRedoTool.toolId,\r\n iconSpec: ViewRedoTool.iconSpec,\r\n label: ViewRedoTool.flyover,\r\n description: ViewRedoTool.description,\r\n execute: async () => IModelApp.tools.run(ViewRedoTool.toolId, IModelApp.viewManager.selectedView),\r\n isDisabled: new ConditionalBooleanValue(() => {\r\n const activeContentControl = ContentViewManager.getActiveContentControl();\r\n if (activeContentControl && activeContentControl.viewport)\r\n return !activeContentControl.viewport.isRedoPossible;\r\n return false;\r\n }, [SyncUiEventId.ActiveContentChanged, SyncUiEventId.ActiveViewportChanged, SyncUiEventId.ViewStateChanged]),\r\n stateSyncIds: [SyncUiEventId.ActiveContentChanged, SyncUiEventId.ActiveViewportChanged, SyncUiEventId.ViewStateChanged],\r\n stateFunc: (currentState: Readonly<BaseItemState>): BaseItemState => {\r\n const returnState: BaseItemState = { ...currentState };\r\n const activeContentControl = ContentViewManager.getActiveContentControl();\r\n if (activeContentControl && activeContentControl.viewport)\r\n returnState.isEnabled = activeContentControl.viewport.isRedoPossible;\r\n return returnState;\r\n },\r\n });\r\n }\r\n\r\n private static turnOnClipVolume() {\r\n const vp = IModelApp.viewManager.selectedView;\r\n if (!vp || !vp.view.is3d())\r\n return;\r\n\r\n // Turn on clip volume flag for section tools\r\n vp.viewFlags = vp.viewFlags.with(\"clipVolume\", true);\r\n }\r\n\r\n // note current ViewClipByPlaneTool is not automatically registered so the app must call ViewClipByPlaneTool.register();\r\n public static get sectionByPlaneCommandItemDef() {\r\n return new ToolItemDef({\r\n toolId: ViewClipByPlaneTool.toolId,\r\n iconSpec: ViewClipByPlaneTool.iconSpec,\r\n label: ViewClipByPlaneTool.flyover,\r\n description: ViewClipByPlaneTool.description,\r\n execute: async () => {\r\n this.turnOnClipVolume();\r\n return IModelApp.tools.run(ViewClipByPlaneTool.toolId, ViewClipDecorationProvider.create());\r\n },\r\n });\r\n }\r\n\r\n // note current ViewClipByElementTool is not automatically registered so the app must call ViewClipByElementTool.register();\r\n public static get sectionByElementCommandItemDef() {\r\n return new ToolItemDef({\r\n toolId: ViewClipByElementTool.toolId,\r\n iconSpec: ViewClipByElementTool.iconSpec,\r\n label: ViewClipByElementTool.flyover,\r\n description: ViewClipByElementTool.description,\r\n execute: async () => {\r\n this.turnOnClipVolume();\r\n return IModelApp.tools.run(ViewClipByElementTool.toolId, ViewClipDecorationProvider.create());\r\n },\r\n });\r\n }\r\n\r\n // note current ViewClipByRangeTool is not automatically registered so the app must call ViewClipByRangeTool.register();\r\n public static get sectionByRangeCommandItemDef() {\r\n return new ToolItemDef({\r\n toolId: ViewClipByRangeTool.toolId,\r\n iconSpec: ViewClipByRangeTool.iconSpec,\r\n label: ViewClipByRangeTool.flyover,\r\n description: ViewClipByRangeTool.description,\r\n execute: async () => {\r\n this.turnOnClipVolume();\r\n return IModelApp.tools.run(ViewClipByRangeTool.toolId, ViewClipDecorationProvider.create());\r\n },\r\n });\r\n }\r\n\r\n // note current ViewClipByShapeTool is not automatically registered so the app must call ViewClipByShapeTool.register();\r\n public static get sectionByShapeCommandItemDef() {\r\n return new ToolItemDef({\r\n toolId: ViewClipByShapeTool.toolId,\r\n iconSpec: ViewClipByShapeTool.iconSpec,\r\n label: ViewClipByShapeTool.flyover,\r\n description: ViewClipByShapeTool.description,\r\n execute: async () => {\r\n this.turnOnClipVolume();\r\n return IModelApp.tools.run(ViewClipByShapeTool.toolId, ViewClipDecorationProvider.create());\r\n },\r\n });\r\n }\r\n\r\n public static get sectionToolGroup() {\r\n ViewClipByElementTool.register();\r\n ViewClipByPlaneTool.register();\r\n ViewClipByRangeTool.register();\r\n ViewClipByShapeTool.register();\r\n\r\n return new GroupItemDef({\r\n groupId: \"sectionTools-group\",\r\n labelKey: \"UiFramework:tools.sectionTools\",\r\n iconSpec: \"icon-section-tool\",\r\n isHidden: new ConditionalBooleanValue(() => {\r\n const activeContentControl = ContentViewManager.getActiveContentControl();\r\n return !!activeContentControl?.viewport?.view.is2d();\r\n }, [SyncUiEventId.ActiveContentChanged, SyncUiEventId.ActiveViewportChanged, SyncUiEventId.ViewStateChanged]),\r\n items: [this.sectionByPlaneCommandItemDef, this.sectionByElementCommandItemDef, this.sectionByRangeCommandItemDef, this.sectionByShapeCommandItemDef],\r\n itemsInColumn: 4,\r\n });\r\n }\r\n\r\n public static get sectionToolGroupWithPanel() {\r\n ViewClipByElementTool.register();\r\n ViewClipByPlaneTool.register();\r\n ViewClipByRangeTool.register();\r\n ViewClipByShapeTool.register();\r\n\r\n return new GroupItemDef({\r\n groupId: \"sectionTools-group-with-panel\",\r\n labelKey: \"UiFramework:tools.sectionTools\",\r\n panelLabelKey: \"UiFramework:tools.sectionPanelLabel\",\r\n iconSpec: \"icon-section-tool\",\r\n isHidden: new ConditionalBooleanValue(() => {\r\n const activeContentControl = ContentViewManager.getActiveContentControl();\r\n return !!activeContentControl?.viewport?.view.is2d();\r\n }, [SyncUiEventId.ActiveContentChanged, SyncUiEventId.ActiveViewportChanged, SyncUiEventId.ViewStateChanged]),\r\n items: [\r\n new ToolItemDef({\r\n ...this.sectionByPlaneCommandItemDef,\r\n labelKey: \"UiFramework:tools.sectionByPlane\",\r\n }),\r\n new ToolItemDef({\r\n ...this.sectionByElementCommandItemDef,\r\n labelKey: \"UiFramework:tools.sectionByElement\",\r\n }),\r\n new ToolItemDef({\r\n ...this.sectionByRangeCommandItemDef,\r\n labelKey: \"UiFramework:tools.sectionByRange\",\r\n }),\r\n new ToolItemDef({\r\n ...this.sectionByShapeCommandItemDef,\r\n labelKey: \"UiFramework:tools.sectionByShape\",\r\n }),\r\n ],\r\n itemsInColumn: 4,\r\n });\r\n\r\n }\r\n\r\n // note current MeasureDistanceTool is not automatically registered so the app must call MeasureDistanceTool.register();\r\n public static get measureDistanceToolItemDef() {\r\n return new ToolItemDef({\r\n toolId: MeasureDistanceTool.toolId,\r\n iconSpec: MeasureDistanceTool.iconSpec,\r\n label: MeasureDistanceTool.flyover,\r\n description: MeasureDistanceTool.description,\r\n execute: async () => {\r\n return IModelApp.tools.run(MeasureDistanceTool.toolId);\r\n },\r\n });\r\n }\r\n\r\n // note current MeasureLocationTool is not automatically registered so the app must call MeasureLocationTool.register();\r\n public static get measureLocationToolItemDef() {\r\n return new ToolItemDef({\r\n toolId: MeasureLocationTool.toolId,\r\n iconSpec: MeasureLocationTool.iconSpec,\r\n label: MeasureLocationTool.flyover,\r\n description: MeasureLocationTool.description,\r\n execute: async () => {\r\n return IModelApp.tools.run(MeasureLocationTool.toolId);\r\n },\r\n });\r\n }\r\n\r\n public static get measureToolGroup() {\r\n MeasureDistanceTool.register();\r\n MeasureLocationTool.register();\r\n\r\n return new GroupItemDef({\r\n groupId: \"measureTools-group\",\r\n labelKey: \"UiFramework:tools.measureTools\",\r\n iconSpec: \"icon-measure\",\r\n items: [this.measureDistanceToolItemDef, this.measureLocationToolItemDef],\r\n itemsInColumn: 2,\r\n });\r\n }\r\n\r\n public static get clearSelectionItemDef() {\r\n return new CommandItemDef({\r\n commandId: \"UiFramework.ClearSelection\",\r\n iconSpec: \"icon-selection-clear\",\r\n labelKey: \"UiFramework:buttons.clearSelection\",\r\n stateSyncIds: getSelectionContextSyncEventIds(),\r\n stateFunc: selectionContextStateFunc,\r\n isHidden: getIsHiddenIfSelectionNotActive(),\r\n execute: async () => {\r\n const iModelConnection = UiFramework.getIModelConnection();\r\n if (iModelConnection) {\r\n iModelConnection.selectionSet.emptyAll();\r\n }\r\n const tool = IModelApp.toolAdmin.primitiveTool;\r\n if (tool)\r\n await tool.onRestartTool();\r\n else\r\n await IModelApp.toolAdmin.startDefaultTool();\r\n },\r\n });\r\n }\r\n\r\n public static get restoreFrontstageLayoutCommandItemDef() {\r\n return new ToolItemDef({\r\n toolId: RestoreFrontstageLayoutTool.toolId,\r\n iconSpec: RestoreFrontstageLayoutTool.iconSpec,\r\n label: RestoreFrontstageLayoutTool.flyover,\r\n description: RestoreFrontstageLayoutTool.description,\r\n execute: async () => {\r\n return IModelApp.tools.run(RestoreFrontstageLayoutTool.toolId);\r\n },\r\n });\r\n }\r\n}\r\n"]}
|
|
@@ -677,8 +677,6 @@ export declare function useFrontstageManager(frontstageDef: FrontstageDef): void
|
|
|
677
677
|
/** @internal */
|
|
678
678
|
export declare function useItemsManager(frontstageDef: FrontstageDef): void;
|
|
679
679
|
/** @internal */
|
|
680
|
-
export declare function useSyncDefinitions(frontstageDef: FrontstageDef): void;
|
|
681
|
-
/** @internal */
|
|
682
680
|
export declare function saveFrontstagePopoutWidgetSizeAndPosition(state: NineZoneState, stageId: string, stageVersion: number, childWindowId: string, childWindow: Window): Promise<NineZoneState>;
|
|
683
681
|
export {};
|
|
684
682
|
//# sourceMappingURL=Frontstage.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Frontstage.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/widget-panels/Frontstage.tsx"],"names":[],"mappings":"AAMA;;GAEG;AAIH,OAAO,mBAAmB,CAAC;AAE3B,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAsC,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACxF,OAAO,EAAmB,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAChG,OAAO,EAGiD,gBAAgB,EAAE,cAAc,EAAE,aAAa,EAC/E,SAAS,EAAqC,QAAQ,EAC7E,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EAAE,aAAa,EAAgE,MAAM,6BAA6B,CAAC;AAG1H,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAGtF,OAAO,EAAE,SAAS,EAAgD,MAAM,sBAAsB,CAAC;AAC/F,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAmC7C,gBAAgB;AAChB,wBAAgB,gBAAgB,CAAC,aAAa,EAAE,aAAa,6BAgB5D;AAcD;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,aAAa,EAAE,aAAa,QAejE;AAsBD,gBAAgB;AAChB,wBAAgB,mBAAmB,CAAC,aAAa,EAAE,aAAa,oBA8B/D;AAED,gBAAgB;AAChB,eAAO,MAAM,sBAAsB,oCAqBjC,CAAC;AAKH,gBAAgB;AAChB,wBAAgB,2BAA2B,CAAC,EAAE,aAAa,EAAE,EAAE;IAAE,aAAa,EAAE,aAAa,CAAA;CAAE,
|
|
1
|
+
{"version":3,"file":"Frontstage.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/widget-panels/Frontstage.tsx"],"names":[],"mappings":"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"}
|
|
@@ -171,7 +171,6 @@ export function ActiveFrontstageDefProvider({ frontstageDef }) {
|
|
|
171
171
|
useSaveFrontstageSettings(frontstageDef);
|
|
172
172
|
useFrontstageManager(frontstageDef);
|
|
173
173
|
useItemsManager(frontstageDef);
|
|
174
|
-
useSyncDefinitions(frontstageDef);
|
|
175
174
|
const labels = useLabels();
|
|
176
175
|
const handleKeyDown = useEscapeSetFocusToHome();
|
|
177
176
|
return (React.createElement("div", { className: "uifw-widgetPanels-frontstage", onKeyDown: handleKeyDown, role: "presentation" },
|
|
@@ -964,54 +963,6 @@ function determineNewWidgets(defs, state) {
|
|
|
964
963
|
return (defs || []).filter((def) => !(def.id in state.tabs) || !tabShownInCurrentWidget(def, state));
|
|
965
964
|
}
|
|
966
965
|
/** @internal */
|
|
967
|
-
export function useSyncDefinitions(frontstageDef) {
|
|
968
|
-
const nineZone = useNineZoneState(frontstageDef);
|
|
969
|
-
React.useEffect(() => {
|
|
970
|
-
if (!nineZone)
|
|
971
|
-
return;
|
|
972
|
-
if (frontstageDef.nineZoneState !== nineZone)
|
|
973
|
-
return;
|
|
974
|
-
for (const panelSide of panelSides) {
|
|
975
|
-
const panel = nineZone.panels[panelSide];
|
|
976
|
-
const location = toStagePanelLocation(panelSide);
|
|
977
|
-
const panelDef = frontstageDef.getStagePanelDef(location);
|
|
978
|
-
if (panelDef) {
|
|
979
|
-
panelDef.size = panel.size;
|
|
980
|
-
let newState = panel.collapsed ? StagePanelState.Minimized : StagePanelState.Open;
|
|
981
|
-
if (panelDef.panelState === StagePanelState.Off && newState === StagePanelState.Minimized)
|
|
982
|
-
newState = StagePanelState.Off;
|
|
983
|
-
panelDef.panelState = newState;
|
|
984
|
-
}
|
|
985
|
-
for (const widgetId of panel.widgets) {
|
|
986
|
-
const widget = nineZone.widgets[widgetId];
|
|
987
|
-
// istanbul ignore else
|
|
988
|
-
if (widget) {
|
|
989
|
-
for (const tabId of widget.tabs) {
|
|
990
|
-
const widgetDef = frontstageDef.findWidgetDef(tabId);
|
|
991
|
-
let widgetState = WidgetState.Open;
|
|
992
|
-
if (widget.minimized || tabId !== widget.activeTabId)
|
|
993
|
-
widgetState = WidgetState.Closed;
|
|
994
|
-
widgetDef && widgetDef.setWidgetState(widgetState);
|
|
995
|
-
}
|
|
996
|
-
}
|
|
997
|
-
}
|
|
998
|
-
}
|
|
999
|
-
for (const widgetId of nineZone.floatingWidgets.allIds) {
|
|
1000
|
-
const widget = nineZone.widgets[widgetId];
|
|
1001
|
-
// istanbul ignore else
|
|
1002
|
-
if (widget) {
|
|
1003
|
-
for (const tabId of widget.tabs) {
|
|
1004
|
-
const widgetDef = frontstageDef.findWidgetDef(tabId);
|
|
1005
|
-
let widgetState = WidgetState.Open;
|
|
1006
|
-
if (widget.minimized || tabId !== widget.activeTabId)
|
|
1007
|
-
widgetState = WidgetState.Closed;
|
|
1008
|
-
widgetDef && widgetDef.setWidgetState(widgetState);
|
|
1009
|
-
}
|
|
1010
|
-
}
|
|
1011
|
-
}
|
|
1012
|
-
}, [nineZone, frontstageDef]);
|
|
1013
|
-
}
|
|
1014
|
-
/** @internal */
|
|
1015
966
|
export async function saveFrontstagePopoutWidgetSizeAndPosition(state, stageId, stageVersion, childWindowId, childWindow) {
|
|
1016
967
|
const location = findWidget(state, childWindowId);
|
|
1017
968
|
// istanbul ignore else
|