@itwin/core-frontend 4.0.0-dev.51 → 4.0.0-dev.52

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.
Files changed (97) hide show
  1. package/lib/cjs/DisplayStyleState.d.ts +1 -1
  2. package/lib/cjs/DisplayStyleState.d.ts.map +1 -1
  3. package/lib/cjs/DisplayStyleState.js +1 -1
  4. package/lib/cjs/DisplayStyleState.js.map +1 -1
  5. package/lib/cjs/DrawingViewState.d.ts +2 -2
  6. package/lib/cjs/DrawingViewState.d.ts.map +1 -1
  7. package/lib/cjs/DrawingViewState.js +3 -2
  8. package/lib/cjs/DrawingViewState.js.map +1 -1
  9. package/lib/cjs/IModelConnection.d.ts +4 -1
  10. package/lib/cjs/IModelConnection.d.ts.map +1 -1
  11. package/lib/cjs/IModelConnection.js +7 -1
  12. package/lib/cjs/IModelConnection.js.map +1 -1
  13. package/lib/cjs/SheetViewState.d.ts.map +1 -1
  14. package/lib/cjs/SheetViewState.js +1 -0
  15. package/lib/cjs/SheetViewState.js.map +1 -1
  16. package/lib/cjs/ViewCreator2d.d.ts.map +1 -1
  17. package/lib/cjs/ViewCreator2d.js +2 -0
  18. package/lib/cjs/ViewCreator2d.js.map +1 -1
  19. package/lib/cjs/ViewCreator3d.d.ts.map +1 -1
  20. package/lib/cjs/ViewCreator3d.js +1 -0
  21. package/lib/cjs/ViewCreator3d.js.map +1 -1
  22. package/lib/cjs/ViewManager.d.ts +8 -10
  23. package/lib/cjs/ViewManager.d.ts.map +1 -1
  24. package/lib/cjs/ViewManager.js +3 -6
  25. package/lib/cjs/ViewManager.js.map +1 -1
  26. package/lib/cjs/ViewState.d.ts +2 -3
  27. package/lib/cjs/ViewState.d.ts.map +1 -1
  28. package/lib/cjs/ViewState.js +2 -3
  29. package/lib/cjs/ViewState.js.map +1 -1
  30. package/lib/cjs/Viewport.d.ts +17 -12
  31. package/lib/cjs/Viewport.d.ts.map +1 -1
  32. package/lib/cjs/Viewport.js +17 -12
  33. package/lib/cjs/Viewport.js.map +1 -1
  34. package/lib/cjs/render/MockRender.d.ts +15 -11
  35. package/lib/cjs/render/MockRender.d.ts.map +1 -1
  36. package/lib/cjs/render/MockRender.js +16 -8
  37. package/lib/cjs/render/MockRender.js.map +1 -1
  38. package/lib/cjs/render/RenderMemory.d.ts +52 -3
  39. package/lib/cjs/render/RenderMemory.d.ts.map +1 -1
  40. package/lib/cjs/render/RenderMemory.js +53 -3
  41. package/lib/cjs/render/RenderMemory.js.map +1 -1
  42. package/lib/cjs/tile/TileTreeReference.d.ts +1 -1
  43. package/lib/cjs/tile/TileTreeReference.d.ts.map +1 -1
  44. package/lib/cjs/tile/TileTreeReference.js +1 -1
  45. package/lib/cjs/tile/TileTreeReference.js.map +1 -1
  46. package/lib/cjs/tools/ElementSetTool.d.ts.map +1 -1
  47. package/lib/cjs/tools/ElementSetTool.js +1 -0
  48. package/lib/cjs/tools/ElementSetTool.js.map +1 -1
  49. package/lib/esm/DisplayStyleState.d.ts +1 -1
  50. package/lib/esm/DisplayStyleState.d.ts.map +1 -1
  51. package/lib/esm/DisplayStyleState.js +1 -1
  52. package/lib/esm/DisplayStyleState.js.map +1 -1
  53. package/lib/esm/DrawingViewState.d.ts +2 -2
  54. package/lib/esm/DrawingViewState.d.ts.map +1 -1
  55. package/lib/esm/DrawingViewState.js +3 -2
  56. package/lib/esm/DrawingViewState.js.map +1 -1
  57. package/lib/esm/IModelConnection.d.ts +4 -1
  58. package/lib/esm/IModelConnection.d.ts.map +1 -1
  59. package/lib/esm/IModelConnection.js +7 -1
  60. package/lib/esm/IModelConnection.js.map +1 -1
  61. package/lib/esm/SheetViewState.d.ts.map +1 -1
  62. package/lib/esm/SheetViewState.js +1 -0
  63. package/lib/esm/SheetViewState.js.map +1 -1
  64. package/lib/esm/ViewCreator2d.d.ts.map +1 -1
  65. package/lib/esm/ViewCreator2d.js +2 -0
  66. package/lib/esm/ViewCreator2d.js.map +1 -1
  67. package/lib/esm/ViewCreator3d.d.ts.map +1 -1
  68. package/lib/esm/ViewCreator3d.js +1 -0
  69. package/lib/esm/ViewCreator3d.js.map +1 -1
  70. package/lib/esm/ViewManager.d.ts +8 -10
  71. package/lib/esm/ViewManager.d.ts.map +1 -1
  72. package/lib/esm/ViewManager.js +3 -6
  73. package/lib/esm/ViewManager.js.map +1 -1
  74. package/lib/esm/ViewState.d.ts +2 -3
  75. package/lib/esm/ViewState.d.ts.map +1 -1
  76. package/lib/esm/ViewState.js +2 -3
  77. package/lib/esm/ViewState.js.map +1 -1
  78. package/lib/esm/Viewport.d.ts +17 -12
  79. package/lib/esm/Viewport.d.ts.map +1 -1
  80. package/lib/esm/Viewport.js +17 -12
  81. package/lib/esm/Viewport.js.map +1 -1
  82. package/lib/esm/render/MockRender.d.ts +15 -11
  83. package/lib/esm/render/MockRender.d.ts.map +1 -1
  84. package/lib/esm/render/MockRender.js +16 -8
  85. package/lib/esm/render/MockRender.js.map +1 -1
  86. package/lib/esm/render/RenderMemory.d.ts +52 -3
  87. package/lib/esm/render/RenderMemory.d.ts.map +1 -1
  88. package/lib/esm/render/RenderMemory.js +53 -3
  89. package/lib/esm/render/RenderMemory.js.map +1 -1
  90. package/lib/esm/tile/TileTreeReference.d.ts +1 -1
  91. package/lib/esm/tile/TileTreeReference.d.ts.map +1 -1
  92. package/lib/esm/tile/TileTreeReference.js +1 -1
  93. package/lib/esm/tile/TileTreeReference.js.map +1 -1
  94. package/lib/esm/tools/ElementSetTool.d.ts.map +1 -1
  95. package/lib/esm/tools/ElementSetTool.js +1 -0
  96. package/lib/esm/tools/ElementSetTool.js.map +1 -1
  97. package/package.json +19 -19
@@ -55,12 +55,13 @@ export interface SelectedViewportChangedArgs {
55
55
  current?: ScreenViewport;
56
56
  previous?: ScreenViewport;
57
57
  }
58
- /** An object which customizes the locate tooltip.
59
- * @internal
58
+ /** An object that can contribute customizations to the tooltip displayed when mousing over an element or other entity in a [[Viewport]].
59
+ * @see [[ViewManager.addToolTipProvider]] to register a tooltip provider.
60
+ * @public
60
61
  */
61
62
  export interface ToolTipProvider {
62
- /** Augment or replace tooltip for the specified HitDetail.
63
- * To cooperate with other tooltip providers, replacing the input tooltip instead of appending information is discouraged.
63
+ /** Augment or replace the tooltip for the specified HitDetail.
64
+ * @note To cooperate with other tooltip providers, prefer to *append* information to the input tooltip instead of replacing it entirely.
64
65
  */
65
66
  augmentToolTip(hit: HitDetail, tooltip: Promise<HTMLElement | string>): Promise<HTMLElement | string>;
66
67
  }
@@ -198,17 +199,14 @@ export declare class ViewManager implements Iterable<ScreenViewport> {
198
199
  * @beta
199
200
  */
200
201
  getElementToolTip(hit: HitDetail): Promise<HTMLElement | string>;
201
- /** Add a new [[ToolTipProvider]] to customize the locate tooltip.
202
- * @internal
202
+ /** Register a new [[ToolTipProvider]] to customize the locate tooltip.
203
203
  * @param provider The new tooltip provider to add.
204
- * @throws Error if provider is already active.
204
+ * @throws Error if `provider` is already registered.
205
205
  * @returns a function that may be called to remove this provider (in lieu of calling [[dropToolTipProvider]].)
206
- * @see [[dropToolTipProvider]]
207
206
  */
208
207
  addToolTipProvider(provider: ToolTipProvider): () => void;
209
208
  /** Drop (remove) a [[ToolTipProvider]] so it is no longer active.
210
- * @internal
211
- * @param provider The tooltip to drop.
209
+ * @param provider The tooltip provider to drop.
212
210
  * @note Does nothing if provider is not currently active.
213
211
  */
214
212
  dropToolTipProvider(provider: ToolTipProvider): void;
@@ -1 +1 @@
1
- {"version":3,"file":"ViewManager.d.ts","sourceRoot":"","sources":["../../src/ViewManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ViewManager.d.ts","sourceRoot":"","sources":["../../src/ViewManager.ts"],"names":[],"mappings":"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"}
@@ -313,12 +313,10 @@ class ViewManager {
313
313
  const msg = await hit.iModel.getToolTipMessage(hit.sourceId); // wait for the locate message(s) from the backend
314
314
  return IModelApp_1.IModelApp.formatElementToolTip(msg);
315
315
  }
316
- /** Add a new [[ToolTipProvider]] to customize the locate tooltip.
317
- * @internal
316
+ /** Register a new [[ToolTipProvider]] to customize the locate tooltip.
318
317
  * @param provider The new tooltip provider to add.
319
- * @throws Error if provider is already active.
318
+ * @throws Error if `provider` is already registered.
320
319
  * @returns a function that may be called to remove this provider (in lieu of calling [[dropToolTipProvider]].)
321
- * @see [[dropToolTipProvider]]
322
320
  */
323
321
  addToolTipProvider(provider) {
324
322
  if (this.toolTipProviders.includes(provider))
@@ -327,8 +325,7 @@ class ViewManager {
327
325
  return () => this.dropToolTipProvider(provider);
328
326
  }
329
327
  /** Drop (remove) a [[ToolTipProvider]] so it is no longer active.
330
- * @internal
331
- * @param provider The tooltip to drop.
328
+ * @param provider The tooltip provider to drop.
332
329
  * @note Does nothing if provider is not currently active.
333
330
  */
334
331
  dropToolTipProvider(provider) {
@@ -1 +1 @@
1
- {"version":3,"file":"ViewManager.js","sourceRoot":"","sources":["../../src/ViewManager.ts"],"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 Views\r\n */\r\nimport { BeEvent, BentleyStatus, BeTimePoint, BeUiEvent, Id64Arg } from \"@itwin/core-bentley\";\r\nimport { GeometryStreamProps } from \"@itwin/core-common\";\r\nimport { HitDetail } from \"./HitDetail\";\r\nimport { IModelApp } from \"./IModelApp\";\r\nimport { IModelConnection } from \"./IModelConnection\";\r\nimport { DisclosedTileTreeSet, TileTree } from \"./tile/internal\";\r\nimport { BeButtonEvent, EventHandled } from \"./tools/Tool\";\r\nimport { ScreenViewport, ViewportDecorator } from \"./Viewport\";\r\nimport { System } from \"./render/webgl/System\";\r\n\r\n/** Interface for drawing [decoration graphics]($docs/learning/frontend/ViewDecorations.md) into, or on top of, the active [[ScreenViewport]]s managed by [[ViewManager]].\r\n * Decorators generate [[Decorations]].\r\n * @public\r\n * @extensions\r\n */\r\nexport interface Decorator extends ViewportDecorator {\r\n /** If the [[decorate]] method created pickable graphics, return true if the supplied Id is from this Decorator.\r\n * @param id The Id of the currently selected pickable graphics.\r\n * @returns true if 'id' belongs to this Decorator\r\n */\r\n testDecorationHit?(id: string): boolean;\r\n\r\n /** If the [[decorate]] method created pickable graphics using a persistent element id instead of a transient id,\r\n * return true if the Decorator wants the opportunity to override the default persistent element behavior for\r\n * the supplied [[HitDetail]].\r\n * - Replace or augment the element's tooltip by implementing [[getDecorationToolTip]].\r\n * - Override the element's snap geometry by implementing [[getDecorationGeometry]].\r\n * - Handle button events as decorator events by implementing [[onDecorationButtonEvent]].\r\n * @param hit The HitDetail of the currently selected persistent element or pickable graphics using a persistent element id.\r\n * @returns true if this Decorator wants to override the default persistent element behavior.\r\n */\r\n overrideElementHit?(hit: HitDetail): boolean;\r\n\r\n /** If [[testDecorationHit]] or [[overrideElementHit]] returned true, implement this method to return the tooltip message for this Decorator.\r\n * @param hit The HitDetail about the decoration that was picked.\r\n * @returns A promise with the HTMLElement or string (that may contain HTML) with the tooltip message.\r\n */\r\n getDecorationToolTip?(hit: HitDetail): Promise<HTMLElement | string>;\r\n\r\n /** If [[testDecorationHit]] or [[overrideElementHit]] returned true, implement this method to handle a button event for this Decorator.\r\n * @param hit The HitDetail about the decoration that was picked.\r\n * @param ev The BeButtonEvent that identified this decoration.\r\n * @returns A Promise that resolves to Yes if event completely handled by decoration and event should not be processed by the calling tool.\r\n */\r\n onDecorationButtonEvent?(hit: HitDetail, ev: BeButtonEvent): Promise<EventHandled>;\r\n\r\n /** If [[testDecorationHit]] or [[overrideElementHit]] returned true, implement this method to return the snappable geometry for this Decorator. Geometry that changes with every cursor motion isn't valid for snapping.\r\n * An example would be an InteractiveTool for placing a linestring. It might wish to allow snapping to accepted segments, the segment from the last accepted point to the current cursor position would not be included\r\n * as snappable geometry and would just be displayed in dynamics.\r\n * @param hit The HitDetail about the decoration that was picked.\r\n * @returns GeometryStreamProps containing world coordinate snappable geometry for this decoration.\r\n */\r\n getDecorationGeometry?(hit: HitDetail): GeometryStreamProps | undefined;\r\n}\r\n\r\n/** Argument for [[ViewManager.onSelectedViewportChanged]]\r\n * @public\r\n * @extensions\r\n */\r\nexport interface SelectedViewportChangedArgs {\r\n current?: ScreenViewport;\r\n previous?: ScreenViewport;\r\n}\r\n\r\n/** An object which customizes the locate tooltip.\r\n * @internal\r\n */\r\nexport interface ToolTipProvider {\r\n /** Augment or replace tooltip for the specified HitDetail.\r\n * To cooperate with other tooltip providers, replacing the input tooltip instead of appending information is discouraged.\r\n */\r\n augmentToolTip(hit: HitDetail, tooltip: Promise<HTMLElement | string>): Promise<HTMLElement | string>;\r\n}\r\n\r\n/** The ViewManager holds the list of opened views, plus the *selected view*. It also provides notifications of view open/close and suspend/resume.\r\n * Applications must call [[addViewport]] when new Viewports that should be associated with user events are created.\r\n *\r\n * A single ViewManager is created when [[IModelApp.startup]] is called. It can be accessed via the static member [[IModelApp.viewManager]].\r\n *\r\n * The ViewManager controls the render loop, which causes the contents of each registered [[Viewport]] to update on the screen.\r\n * @public\r\n * @extensions\r\n */\r\nexport class ViewManager implements Iterable<ScreenViewport> {\r\n public inDynamicsMode = false;\r\n public cursor = \"default\";\r\n private readonly _viewports: ScreenViewport[] = [];\r\n public readonly decorators: Decorator[] = [];\r\n private _selectedView?: ScreenViewport;\r\n private _invalidateScenes = false;\r\n private _skipSceneCreation = false;\r\n private _doIdleWork = false;\r\n private _idleWorkTimer?: any;\r\n\r\n /** @internal */\r\n public readonly toolTipProviders: ToolTipProvider[] = [];\r\n\r\n private _beginIdleWork() {\r\n const idleWork = () => {\r\n if (undefined === this._idleWorkTimer)\r\n return;\r\n if (this._viewports.length > 0) {\r\n this._idleWorkTimer = undefined;\r\n return;\r\n }\r\n if (IModelApp.renderSystem.doIdleWork())\r\n this._idleWorkTimer = setTimeout(idleWork, 1);\r\n else\r\n this._idleWorkTimer = undefined;\r\n };\r\n\r\n if (undefined === this._idleWorkTimer)\r\n this._idleWorkTimer = setTimeout(idleWork, 1);\r\n }\r\n\r\n /** @internal */\r\n public onInitialized() {\r\n this.addDecorator(IModelApp.accuSnap);\r\n this.addDecorator(IModelApp.tentativePoint);\r\n this.addDecorator(IModelApp.accuDraw);\r\n this.addDecorator(IModelApp.toolAdmin);\r\n this.cursor = \"default\";\r\n\r\n const options = IModelApp.renderSystem.options;\r\n this._doIdleWork = true === options.doIdleWork;\r\n if (this._doIdleWork)\r\n this._beginIdleWork();\r\n }\r\n\r\n /** @internal */\r\n public onShutDown() {\r\n if (undefined !== this._idleWorkTimer) {\r\n clearTimeout(this._idleWorkTimer);\r\n this._idleWorkTimer = undefined;\r\n }\r\n this._viewports.length = 0;\r\n this.decorators.length = 0;\r\n this.toolTipProviders.length = 0;\r\n this._selectedView = undefined;\r\n }\r\n\r\n /** Returns true if the specified viewport is currently being managed by this ViewManager.\r\n * @see [[addViewport]] to enable management of a viewport and [[dropViewport]] to disable it.\r\n */\r\n public hasViewport(viewport: ScreenViewport) {\r\n return this._viewports.includes(viewport);\r\n }\r\n\r\n /** Called after the selected view changes.\r\n * @param old Previously selected viewport.\r\n * @param current Currently selected viewport.\r\n */\r\n public readonly onSelectedViewportChanged = new BeUiEvent<SelectedViewportChangedArgs>();\r\n\r\n /** Called after a view is opened. This can happen when the iModel is first opened or when a user opens a new view. */\r\n public readonly onViewOpen = new BeUiEvent<ScreenViewport>();\r\n\r\n /** Called after a view is closed. This can happen when the iModel is closed or when a user closes an open view. */\r\n public readonly onViewClose = new BeUiEvent<ScreenViewport>();\r\n\r\n /** Called after a view is suspended. This happens when the application is minimized or, on a tablet, when the application\r\n * is moved to the background.\r\n */\r\n public readonly onViewSuspend = new BeUiEvent<ScreenViewport>();\r\n\r\n /** Called after a suspended view is resumed. This can happen when a minimized application is restored\r\n * or, on a tablet, when the application is moved to the foreground.\r\n */\r\n public readonly onViewResume = new BeUiEvent<ScreenViewport>();\r\n\r\n /** Called at the beginning of each tick of the render loop, before any viewports have been updated.\r\n * The render loop is typically invoked by a requestAnimationFrame() callback. It will not be invoked if the ViewManager is tracking no viewports.\r\n * @note Due to the frequency of this event, avoid performing expensive work inside event listeners.\r\n * @see [[ViewManager.onFinishRender]]\r\n */\r\n public readonly onBeginRender = new BeEvent<() => void>();\r\n\r\n /** Called at the end of each tick of the render loop, after all viewports have been updated.\r\n * The render loop is typically invoked by a requestAnimationFrame() callback. It will not be invoked if the ViewManager is tracking no viewports.\r\n * @note Due to the frequency of this event, avoid performing expensive work inside event listeners.\r\n * @see [[ViewManager.onBeginRender]]\r\n */\r\n public readonly onFinishRender = new BeEvent<() => void>();\r\n\r\n /** @internal */\r\n public endDynamicsMode(): void {\r\n if (!this.inDynamicsMode)\r\n return;\r\n\r\n this.inDynamicsMode = false;\r\n\r\n const cursorVp = IModelApp.toolAdmin.cursorView;\r\n if (cursorVp)\r\n cursorVp.changeDynamics(undefined);\r\n\r\n for (const vp of this._viewports) {\r\n if (vp !== cursorVp)\r\n vp.changeDynamics(undefined);\r\n }\r\n }\r\n\r\n /** @internal */\r\n public beginDynamicsMode() { this.inDynamicsMode = true; }\r\n\r\n /** @internal */\r\n public get doesHostHaveFocus(): boolean { return document.hasFocus(); }\r\n\r\n /** Set the selected [[Viewport]] to undefined. */\r\n public clearSelectedView(): void {\r\n const previousVp = this.selectedView;\r\n this._selectedView = undefined;\r\n this.notifySelectedViewportChanged(previousVp, undefined);\r\n }\r\n\r\n /** Sets the selected [[Viewport]]. */\r\n public async setSelectedView(vp: ScreenViewport | undefined): Promise<BentleyStatus> {\r\n if (undefined === vp)\r\n vp = this.getFirstOpenView();\r\n\r\n if (vp === this.selectedView) // already the selected view\r\n return BentleyStatus.SUCCESS;\r\n\r\n if (undefined === vp) {\r\n this.clearSelectedView();\r\n return BentleyStatus.ERROR;\r\n }\r\n\r\n const previousVp = this.selectedView;\r\n this._selectedView = vp;\r\n\r\n this.notifySelectedViewportChanged(previousVp, vp);\r\n\r\n if (undefined === previousVp)\r\n await IModelApp.toolAdmin.startDefaultTool();\r\n\r\n return BentleyStatus.SUCCESS;\r\n }\r\n\r\n /** @internal */\r\n public notifySelectedViewportChanged(previous: ScreenViewport | undefined, current: ScreenViewport | undefined) {\r\n IModelApp.toolAdmin.onSelectedViewportChanged(previous, current);// eslint-disable-line @typescript-eslint/no-floating-promises\r\n this.onSelectedViewportChanged.emit({ previous, current });\r\n }\r\n\r\n /** The \"selected view\" is the default for certain operations. */\r\n public get selectedView(): ScreenViewport | undefined { return this._selectedView; }\r\n\r\n /** Get the first opened view. */\r\n public getFirstOpenView(): ScreenViewport | undefined { return this._viewports.length > 0 ? this._viewports[0] : undefined; }\r\n\r\n /** Check if only a single viewport is being used. If so, render directly on-screen using its WebGL canvas. Otherwise, render each view offscreen. */\r\n private updateRenderToScreen() {\r\n const renderToScreen = 1 === this._viewports.length;\r\n for (const vp of this)\r\n vp.rendersToScreen = renderToScreen;\r\n }\r\n\r\n /** Add a new Viewport to the list of opened views and create an EventController for it.\r\n * @param newVp the Viewport to add\r\n * @returns SUCCESS if vp was successfully added, ERROR if it was already present.\r\n * @note raises onViewOpen event with newVp.\r\n */\r\n public addViewport(newVp: ScreenViewport): BentleyStatus {\r\n if (this.hasViewport(newVp)) // make sure its not already added\r\n return BentleyStatus.ERROR;\r\n\r\n newVp.onViewManagerAdd();\r\n\r\n this._viewports.push(newVp);\r\n this.updateRenderToScreen();\r\n this.setSelectedView(newVp);// eslint-disable-line @typescript-eslint/no-floating-promises\r\n\r\n // Start up the render loop if necessary.\r\n if (1 === this._viewports.length)\r\n IModelApp.startEventLoop();\r\n\r\n this.onViewOpen.emit(newVp);\r\n\r\n return BentleyStatus.SUCCESS;\r\n }\r\n\r\n /** Remove a Viewport from the list of opened views, and optionally dispose of it.\r\n * Typically a Viewport is dropped when it is no longer of any use to the application, in which case it should also be\r\n * disposed of as it may hold significant GPU resources.\r\n * However in some cases a Viewport may be temporarily dropped to suspend rendering; and subsequently re-added to\r\n * resume rendering - for example, when the Viewport is temporarily hidden by other UI elements.\r\n * In the latter case it is up to the caller to ensure the Viewport is properly disposed of when it is no longer needed.\r\n * Attempting to invoke any function on a Viewport after it has been disposed is an error.\r\n * @param vp the Viewport to remove.\r\n * @param disposeOfViewport Whether or not to dispose of the Viewport. Defaults to true.\r\n * @return SUCCESS if vp was successfully removed, ERROR if it was not present.\r\n * @note raises onViewClose event with vp.\r\n */\r\n public dropViewport(vp: ScreenViewport, disposeOfViewport: boolean = true): BentleyStatus {\r\n const index = this._viewports.indexOf(vp);\r\n if (index === -1)\r\n return BentleyStatus.ERROR;\r\n\r\n this.onViewClose.emit(vp);\r\n\r\n // make sure tools don't think the cursor is still in this viewport\r\n IModelApp.toolAdmin.forgetViewport(vp);\r\n\r\n vp.onViewManagerDrop();\r\n\r\n this._viewports.splice(index, 1);\r\n\r\n if (this.selectedView === vp) // if removed viewport was selectedView, set it to undefined.\r\n this.setSelectedView(undefined);// eslint-disable-line @typescript-eslint/no-floating-promises\r\n\r\n vp.rendersToScreen = false;\r\n this.updateRenderToScreen();\r\n\r\n if (disposeOfViewport)\r\n vp.dispose();\r\n\r\n if (this._doIdleWork && this._viewports.length === 0)\r\n this._beginIdleWork();\r\n\r\n return BentleyStatus.SUCCESS;\r\n }\r\n\r\n /** Iterate over the viewports registered with the view manager. */\r\n public [Symbol.iterator](): Iterator<ScreenViewport> {\r\n return this._viewports[Symbol.iterator]();\r\n }\r\n\r\n /** Force each registered [[Viewport]] to regenerate all of its cached [[Decorations]] on the next frame. If the decorator parameter is specified, only\r\n * the specified decorator will have its cached decorations invalidated for all viewports.\r\n * @see [[Viewport.invalidateCachedDecorations]] to manually remove a decorator's cached decorations from a viewport, forcing them to be regenerated.\r\n * @beta\r\n */\r\n public invalidateCachedDecorationsAllViews(decorator: ViewportDecorator): void {\r\n if (decorator.useCachedDecorations)\r\n for (const vp of this)\r\n vp.invalidateCachedDecorations(decorator);\r\n }\r\n\r\n /** Force each registered [[Viewport]] to regenerate its [[Decorations]] on the next frame. */\r\n public invalidateDecorationsAllViews(): void {\r\n for (const vp of this)\r\n vp.invalidateDecorations();\r\n }\r\n\r\n /** Force each registered [[Viewport]] to regenerate its [[FeatureSymbology.Overrides]] on the next frame.\r\n * @alpha\r\n */\r\n public invalidateSymbologyOverridesAllViews(): void {\r\n for (const vp of this)\r\n vp.setFeatureOverrideProviderChanged();\r\n }\r\n\r\n /** @internal */\r\n public onSelectionSetChanged(_iModel: IModelConnection) {\r\n for (const vp of this)\r\n vp.markSelectionSetDirty();\r\n\r\n IModelApp.requestNextAnimation();\r\n }\r\n\r\n /** @internal */\r\n public invalidateViewportScenes(): void {\r\n for (const vp of this)\r\n vp.invalidateScene();\r\n }\r\n\r\n /** @internal */\r\n public validateViewportScenes(): void {\r\n for (const vp of this)\r\n vp.setValidScene();\r\n }\r\n\r\n /** @internal */\r\n public invalidateScenes(): void {\r\n this._invalidateScenes = true;\r\n IModelApp.requestNextAnimation();\r\n }\r\n /** @internal */\r\n public get sceneInvalidated(): boolean { return this._invalidateScenes; }\r\n\r\n /** Invoked by ToolAdmin event loop.\r\n * @internal\r\n */\r\n public renderLoop(): void {\r\n if (0 === this._viewports.length)\r\n return;\r\n if (this._skipSceneCreation)\r\n this.validateViewportScenes();\r\n else if (this._invalidateScenes)\r\n this.invalidateViewportScenes();\r\n\r\n this._invalidateScenes = false;\r\n\r\n this.onBeginRender.raiseEvent();\r\n\r\n for (const vp of this._viewports)\r\n vp.renderFrame();\r\n\r\n this.onFinishRender.raiseEvent();\r\n }\r\n\r\n /** Purge TileTrees that haven't been drawn since the specified time point and are not currently in use by any ScreenViewport.\r\n * Intended strictly for debugging purposes - TileAdmin takes care of properly purging.\r\n * @internal\r\n */\r\n public purgeTileTrees(olderThan: BeTimePoint): void {\r\n // A single viewport can display tiles from more than one IModelConnection.\r\n // NOTE: A viewport may be displaying no trees - but we need to record its IModel so we can purge those which are NOT being displayed\r\n // NOTE: That won't catch external tile trees previously used by that viewport.\r\n const trees = new DisclosedTileTreeSet();\r\n const treesByIModel = new Map<IModelConnection, Set<TileTree>>();\r\n for (const vp of this._viewports) {\r\n vp.discloseTileTrees(trees);\r\n if (undefined === treesByIModel.get(vp.iModel))\r\n treesByIModel.set(vp.iModel, new Set<TileTree>());\r\n }\r\n\r\n for (const tree of trees) {\r\n let set = treesByIModel.get(tree.iModel);\r\n if (undefined === set) {\r\n set = new Set<TileTree>();\r\n treesByIModel.set(tree.iModel, set);\r\n }\r\n\r\n set.add(tree);\r\n }\r\n\r\n for (const entry of treesByIModel) {\r\n const iModel = entry[0];\r\n iModel.tiles.purge(olderThan, entry[1]);\r\n }\r\n }\r\n\r\n /** Get the tooltip for a persistent element.\r\n * Calls the backend method [Element.getToolTipMessage]($backend), and replaces all instances of `${localizeTag}` with localized string from IModelApp.i18n.\r\n * @beta\r\n */\r\n public async getElementToolTip(hit: HitDetail): Promise<HTMLElement | string> {\r\n const msg: string[] = await hit.iModel.getToolTipMessage(hit.sourceId); // wait for the locate message(s) from the backend\r\n return IModelApp.formatElementToolTip(msg);\r\n }\r\n\r\n /** Add a new [[ToolTipProvider]] to customize the locate tooltip.\r\n * @internal\r\n * @param provider The new tooltip provider to add.\r\n * @throws Error if provider is already active.\r\n * @returns a function that may be called to remove this provider (in lieu of calling [[dropToolTipProvider]].)\r\n * @see [[dropToolTipProvider]]\r\n */\r\n public addToolTipProvider(provider: ToolTipProvider): () => void {\r\n if (this.toolTipProviders.includes(provider))\r\n throw new Error(\"tooltip provider already registered\");\r\n\r\n this.toolTipProviders.push(provider);\r\n return () => this.dropToolTipProvider(provider);\r\n }\r\n\r\n /** Drop (remove) a [[ToolTipProvider]] so it is no longer active.\r\n * @internal\r\n * @param provider The tooltip to drop.\r\n * @note Does nothing if provider is not currently active.\r\n */\r\n public dropToolTipProvider(provider: ToolTipProvider) {\r\n const index = this.toolTipProviders.indexOf(provider);\r\n if (index >= 0)\r\n this.toolTipProviders.splice(index, 1);\r\n }\r\n\r\n /** Add a new [[Decorator]] to display decorations into the active views.\r\n * @param decorator The new decorator to add.\r\n * @throws Error if decorator is already active.\r\n * @returns a function that may be called to remove this decorator (in lieu of calling [[dropDecorator]].)\r\n * @see [[dropDecorator]]\r\n */\r\n public addDecorator(decorator: Decorator): () => void {\r\n if (this.decorators.includes(decorator))\r\n throw new Error(\"decorator already registered\");\r\n\r\n this.decorators.push(decorator);\r\n this.invalidateDecorationsAllViews();\r\n return () => this.dropDecorator(decorator);\r\n }\r\n\r\n /** Drop (remove) a [[Decorator]] so it is no longer active.\r\n * @param decorator The Decorator to drop.\r\n * @returns true if the decorator was found and removed; false if the decorator was not found.\r\n */\r\n public dropDecorator(decorator: Decorator): boolean {\r\n const index = this.decorators.indexOf(decorator);\r\n if (index < 0)\r\n return false;\r\n\r\n this.invalidateCachedDecorationsAllViews(decorator);\r\n this.decorators.splice(index, 1);\r\n this.invalidateDecorationsAllViews();\r\n return true;\r\n }\r\n\r\n /** Get the tooltip for a pickable decoration.\r\n * @internal\r\n */\r\n public async getDecorationToolTip(hit: HitDetail): Promise<HTMLElement | string> {\r\n for (const decorator of this.decorators) {\r\n if (undefined !== decorator.testDecorationHit && undefined !== decorator.getDecorationToolTip && decorator.testDecorationHit(hit.sourceId))\r\n return decorator.getDecorationToolTip(hit);\r\n }\r\n return hit.viewport ? hit.viewport.getToolTip(hit) : \"\";\r\n }\r\n\r\n /** Allow a pickable decoration to handle a button event that identified it for the SelectTool.\r\n * @internal\r\n */\r\n public async onDecorationButtonEvent(hit: HitDetail, ev: BeButtonEvent): Promise<EventHandled> {\r\n for (const decorator of IModelApp.viewManager.decorators) {\r\n if (undefined !== decorator.testDecorationHit && undefined !== decorator.onDecorationButtonEvent && decorator.testDecorationHit(hit.sourceId))\r\n return decorator.onDecorationButtonEvent(hit, ev);\r\n }\r\n return EventHandled.No;\r\n }\r\n\r\n /** Allow a pickable decoration to be snapped to by AccuSnap or TentativePoint.\r\n * @internal\r\n */\r\n public getDecorationGeometry(hit: HitDetail): GeometryStreamProps | undefined {\r\n for (const decorator of IModelApp.viewManager.decorators) {\r\n if (undefined !== decorator.testDecorationHit && undefined !== decorator.getDecorationGeometry && decorator.testDecorationHit(hit.sourceId))\r\n return decorator.getDecorationGeometry(hit);\r\n }\r\n return undefined;\r\n }\r\n\r\n /** Allow a pickable decoration created using a persistent element id to augment or replace the the persistent element's tooltip.\r\n * @internal\r\n */\r\n public async overrideElementToolTip(hit: HitDetail): Promise<HTMLElement | string> {\r\n for (const decorator of this.decorators) {\r\n if (undefined !== decorator.overrideElementHit && undefined !== decorator.getDecorationToolTip && decorator.overrideElementHit(hit))\r\n return decorator.getDecorationToolTip(hit);\r\n }\r\n return this.getElementToolTip(hit);\r\n }\r\n\r\n /** Allow a pickable decoration created using a persistent element id to handle a button event that identified it for the SelectTool.\r\n * @internal\r\n */\r\n public async overrideElementButtonEvent(hit: HitDetail, ev: BeButtonEvent): Promise<EventHandled> {\r\n for (const decorator of IModelApp.viewManager.decorators) {\r\n if (undefined !== decorator.overrideElementHit && undefined !== decorator.onDecorationButtonEvent && decorator.overrideElementHit(hit))\r\n return decorator.onDecorationButtonEvent(hit, ev);\r\n }\r\n return EventHandled.No;\r\n }\r\n\r\n /** Allow a pickable decoration created using a persistent element id to control whether snapping uses the persistent element's geometry.\r\n * @internal\r\n */\r\n public overrideElementGeometry(hit: HitDetail): GeometryStreamProps | undefined {\r\n for (const decorator of IModelApp.viewManager.decorators) {\r\n if (undefined !== decorator.overrideElementHit && undefined !== decorator.getDecorationGeometry && decorator.overrideElementHit(hit))\r\n return decorator.getDecorationGeometry(hit);\r\n }\r\n return undefined;\r\n }\r\n\r\n public get crossHairCursor(): string { return `url(${IModelApp.publicPath}cursors/crosshair.cur), crosshair`; }\r\n public get dynamicsCursor(): string { return `url(${IModelApp.publicPath}cursors/dynamics.cur), move`; }\r\n public get grabCursor(): string { return `url(${IModelApp.publicPath}cursors/openHand.cur), auto`; }\r\n public get grabbingCursor(): string { return `url(${IModelApp.publicPath}cursors/closedHand.cur), auto`; }\r\n public get walkCursor(): string { return `url(${IModelApp.publicPath}cursors/walk.cur), auto`; }\r\n public get rotateCursor(): string { return `url(${IModelApp.publicPath}cursors/rotate.cur), auto`; }\r\n public get lookCursor(): string { return `url(${IModelApp.publicPath}cursors/look.cur), auto`; }\r\n public get zoomCursor(): string { return `url(${IModelApp.publicPath}cursors/zoom.cur), auto`; }\r\n\r\n /** Change the cursor shown in all Viewports.\r\n * @param cursor The new cursor to display. If undefined, the default cursor is used.\r\n */\r\n public setViewCursor(cursor: string = \"default\") {\r\n if (cursor === this.cursor)\r\n return;\r\n this.cursor = cursor;\r\n for (const vp of this._viewports)\r\n vp.setCursor(cursor);\r\n }\r\n\r\n /** Intended strictly as a temporary solution for interactive editing applications, until official support for such apps is implemented.\r\n * Call this after editing one or more models, passing in the Ids of those models, to cause new tiles to be generated reflecting the changes.\r\n * Pass undefined if you are unsure which models changed (this is less efficient as it discards all tiles for all viewed models in all viewports).\r\n * @internal\r\n */\r\n public refreshForModifiedModels(modelIds: Id64Arg | undefined): void {\r\n for (const vp of this._viewports)\r\n vp.refreshForModifiedModels(modelIds);\r\n }\r\n\r\n /** Sets the number of [MSAA]($docs/learning/display/MSAA.md) samples for all currently- and subsequently-opened [[ScreenViewport]]s.\r\n * @param numSamples The number of samples as a power of two. Values of 1 or less indicates anti-aliasing should be disabled. Non-power-of-two values are rounded\r\n * down to the nearest power of two. The maximum number of samples supported depends upon the client's graphics hardware capabilities. Higher values produce\r\n * a higher-quality image but also may also reduce framerate.\r\n * @see [[Viewport.antialiasSamples]] to adjust the number of samples for a specific viewport.\r\n */\r\n public setAntialiasingAllViews(numSamples: number): void {\r\n for (const vp of this)\r\n vp.antialiasSamples = numSamples;\r\n\r\n System.instance.antialiasSamples = numSamples;\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"ViewManager.js","sourceRoot":"","sources":["../../src/ViewManager.ts"],"names":[],"mappings":";;;AAAA;;;+FAG+F;AAC/F;;GAEG;AACH,sDAA8F;AAG9F,2CAAwC;AAExC,8CAAiE;AACjE,uCAA2D;AAE3D,kDAA+C;AAmE/C;;;;;;;;GAQG;AACH,MAAa,WAAW;IAAxB;QACS,mBAAc,GAAG,KAAK,CAAC;QACvB,WAAM,GAAG,SAAS,CAAC;QACT,eAAU,GAAqB,EAAE,CAAC;QACnC,eAAU,GAAgB,EAAE,CAAC;QAErC,sBAAiB,GAAG,KAAK,CAAC;QAC1B,uBAAkB,GAAG,KAAK,CAAC;QAC3B,gBAAW,GAAG,KAAK,CAAC;QAG5B,gBAAgB;QACA,qBAAgB,GAAsB,EAAE,CAAC;QAqDzD;;;WAGG;QACa,8BAAyB,GAAG,IAAI,wBAAS,EAA+B,CAAC;QAEzF,sHAAsH;QACtG,eAAU,GAAG,IAAI,wBAAS,EAAkB,CAAC;QAE7D,mHAAmH;QACnG,gBAAW,GAAG,IAAI,wBAAS,EAAkB,CAAC;QAE9D;;WAEG;QACa,kBAAa,GAAG,IAAI,wBAAS,EAAkB,CAAC;QAEhE;;WAEG;QACa,iBAAY,GAAG,IAAI,wBAAS,EAAkB,CAAC;QAE/D;;;;WAIG;QACa,kBAAa,GAAG,IAAI,sBAAO,EAAc,CAAC;QAE1D;;;;WAIG;QACa,mBAAc,GAAG,IAAI,sBAAO,EAAc,CAAC;IAqa7D,CAAC;IA1fS,cAAc;QACpB,MAAM,QAAQ,GAAG,GAAG,EAAE;YACpB,IAAI,SAAS,KAAK,IAAI,CAAC,cAAc;gBACnC,OAAO;YACT,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC9B,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC;gBAChC,OAAO;aACR;YACD,IAAI,qBAAS,CAAC,YAAY,CAAC,UAAU,EAAE;gBACrC,IAAI,CAAC,cAAc,GAAG,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;;gBAE9C,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC;QACpC,CAAC,CAAC;QAEF,IAAI,SAAS,KAAK,IAAI,CAAC,cAAc;YACnC,IAAI,CAAC,cAAc,GAAG,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;IAClD,CAAC;IAED,gBAAgB;IACT,aAAa;QAClB,IAAI,CAAC,YAAY,CAAC,qBAAS,CAAC,QAAQ,CAAC,CAAC;QACtC,IAAI,CAAC,YAAY,CAAC,qBAAS,CAAC,cAAc,CAAC,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,qBAAS,CAAC,QAAQ,CAAC,CAAC;QACtC,IAAI,CAAC,YAAY,CAAC,qBAAS,CAAC,SAAS,CAAC,CAAC;QACvC,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;QAExB,MAAM,OAAO,GAAG,qBAAS,CAAC,YAAY,CAAC,OAAO,CAAC;QAC/C,IAAI,CAAC,WAAW,GAAG,IAAI,KAAK,OAAO,CAAC,UAAU,CAAC;QAC/C,IAAI,IAAI,CAAC,WAAW;YAClB,IAAI,CAAC,cAAc,EAAE,CAAC;IAC1B,CAAC;IAED,gBAAgB;IACT,UAAU;QACf,IAAI,SAAS,KAAK,IAAI,CAAC,cAAc,EAAE;YACrC,YAAY,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YAClC,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC;SACjC;QACD,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC;QAC3B,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC;QAC3B,IAAI,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC,CAAC;QACjC,IAAI,CAAC,aAAa,GAAG,SAAS,CAAC;IACjC,CAAC;IAED;;OAEG;IACI,WAAW,CAAC,QAAwB;QACzC,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC5C,CAAC;IAsCD,gBAAgB;IACT,eAAe;QACpB,IAAI,CAAC,IAAI,CAAC,cAAc;YACtB,OAAO;QAET,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;QAE5B,MAAM,QAAQ,GAAG,qBAAS,CAAC,SAAS,CAAC,UAAU,CAAC;QAChD,IAAI,QAAQ;YACV,QAAQ,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;QAErC,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,UAAU,EAAE;YAChC,IAAI,EAAE,KAAK,QAAQ;gBACjB,EAAE,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;SAChC;IACH,CAAC;IAED,gBAAgB;IACT,iBAAiB,KAAK,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC,CAAC;IAE1D,gBAAgB;IAChB,IAAW,iBAAiB,KAAc,OAAO,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;IAEvE,kDAAkD;IAC3C,iBAAiB;QACtB,MAAM,UAAU,GAAG,IAAI,CAAC,YAAY,CAAC;QACrC,IAAI,CAAC,aAAa,GAAG,SAAS,CAAC;QAC/B,IAAI,CAAC,6BAA6B,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;IAC5D,CAAC;IAED,sCAAsC;IAC/B,KAAK,CAAC,eAAe,CAAC,EAA8B;QACzD,IAAI,SAAS,KAAK,EAAE;YAClB,EAAE,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAE/B,IAAI,EAAE,KAAK,IAAI,CAAC,YAAY,EAAE,4BAA4B;YACxD,OAAO,4BAAa,CAAC,OAAO,CAAC;QAE/B,IAAI,SAAS,KAAK,EAAE,EAAE;YACpB,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACzB,OAAO,4BAAa,CAAC,KAAK,CAAC;SAC5B;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,YAAY,CAAC;QACrC,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;QAExB,IAAI,CAAC,6BAA6B,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;QAEnD,IAAI,SAAS,KAAK,UAAU;YAC1B,MAAM,qBAAS,CAAC,SAAS,CAAC,gBAAgB,EAAE,CAAC;QAE/C,OAAO,4BAAa,CAAC,OAAO,CAAC;IAC/B,CAAC;IAED,gBAAgB;IACT,6BAA6B,CAAC,QAAoC,EAAE,OAAmC;QAC5G,qBAAS,CAAC,SAAS,CAAC,yBAAyB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAA,8DAA8D;QAC/H,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC;IAC7D,CAAC;IAED,kEAAkE;IAClE,IAAW,YAAY,KAAiC,OAAO,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC;IAEpF,iCAAiC;IAC1B,gBAAgB,KAAiC,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;IAE7H,uJAAuJ;IAC/I,oBAAoB;QAC1B,MAAM,cAAc,GAAG,CAAC,KAAK,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;QACpD,KAAK,MAAM,EAAE,IAAI,IAAI;YACnB,EAAE,CAAC,eAAe,GAAG,cAAc,CAAC;IACxC,CAAC;IAED;;;;OAIG;IACI,WAAW,CAAC,KAAqB;QACtC,IAAI,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,kCAAkC;YAC7D,OAAO,4BAAa,CAAC,KAAK,CAAC;QAE7B,KAAK,CAAC,gBAAgB,EAAE,CAAC;QAEzB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC5B,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC5B,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAA,8DAA8D;QAE1F,yCAAyC;QACzC,IAAI,CAAC,KAAK,IAAI,CAAC,UAAU,CAAC,MAAM;YAC9B,qBAAS,CAAC,cAAc,EAAE,CAAC;QAE7B,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAE5B,OAAO,4BAAa,CAAC,OAAO,CAAC;IAC/B,CAAC;IAED;;;;;;;;;;;OAWG;IACI,YAAY,CAAC,EAAkB,EAAE,oBAA6B,IAAI;QACvE,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAC1C,IAAI,KAAK,KAAK,CAAC,CAAC;YACd,OAAO,4BAAa,CAAC,KAAK,CAAC;QAE7B,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAE1B,mEAAmE;QACnE,qBAAS,CAAC,SAAS,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;QAEvC,EAAE,CAAC,iBAAiB,EAAE,CAAC;QAEvB,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAEjC,IAAI,IAAI,CAAC,YAAY,KAAK,EAAE,EAAE,6DAA6D;YACzF,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,CAAA,8DAA8D;QAEhG,EAAE,CAAC,eAAe,GAAG,KAAK,CAAC;QAC3B,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAE5B,IAAI,iBAAiB;YACnB,EAAE,CAAC,OAAO,EAAE,CAAC;QAEf,IAAI,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC;YAClD,IAAI,CAAC,cAAc,EAAE,CAAC;QAExB,OAAO,4BAAa,CAAC,OAAO,CAAC;IAC/B,CAAC;IAED,mEAAmE;IAC5D,CAAC,MAAM,CAAC,QAAQ,CAAC;QACtB,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;IAC5C,CAAC;IAED;;;;OAIG;IACI,mCAAmC,CAAC,SAA4B;QACrE,IAAI,SAAS,CAAC,oBAAoB;YAChC,KAAK,MAAM,EAAE,IAAI,IAAI;gBACnB,EAAE,CAAC,2BAA2B,CAAC,SAAS,CAAC,CAAC;IAChD,CAAC;IAED,8FAA8F;IACvF,6BAA6B;QAClC,KAAK,MAAM,EAAE,IAAI,IAAI;YACnB,EAAE,CAAC,qBAAqB,EAAE,CAAC;IAC/B,CAAC;IAED;;OAEG;IACI,oCAAoC;QACzC,KAAK,MAAM,EAAE,IAAI,IAAI;YACnB,EAAE,CAAC,iCAAiC,EAAE,CAAC;IAC3C,CAAC;IAED,gBAAgB;IACT,qBAAqB,CAAC,OAAyB;QACpD,KAAK,MAAM,EAAE,IAAI,IAAI;YACnB,EAAE,CAAC,qBAAqB,EAAE,CAAC;QAE7B,qBAAS,CAAC,oBAAoB,EAAE,CAAC;IACnC,CAAC;IAED,gBAAgB;IACT,wBAAwB;QAC7B,KAAK,MAAM,EAAE,IAAI,IAAI;YACnB,EAAE,CAAC,eAAe,EAAE,CAAC;IACzB,CAAC;IAED,gBAAgB;IACT,sBAAsB;QAC3B,KAAK,MAAM,EAAE,IAAI,IAAI;YACnB,EAAE,CAAC,aAAa,EAAE,CAAC;IACvB,CAAC;IAED,gBAAgB;IACT,gBAAgB;QACrB,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;QAC9B,qBAAS,CAAC,oBAAoB,EAAE,CAAC;IACnC,CAAC;IACD,gBAAgB;IAChB,IAAW,gBAAgB,KAAc,OAAO,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC;IAEzE;;OAEG;IACI,UAAU;QACf,IAAI,CAAC,KAAK,IAAI,CAAC,UAAU,CAAC,MAAM;YAC9B,OAAO;QACT,IAAI,IAAI,CAAC,kBAAkB;YACzB,IAAI,CAAC,sBAAsB,EAAE,CAAC;aAC3B,IAAI,IAAI,CAAC,iBAAiB;YAC7B,IAAI,CAAC,wBAAwB,EAAE,CAAC;QAElC,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;QAE/B,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,CAAC;QAEhC,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,UAAU;YAC9B,EAAE,CAAC,WAAW,EAAE,CAAC;QAEnB,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,CAAC;IACnC,CAAC;IAED;;;OAGG;IACI,cAAc,CAAC,SAAsB;QAC1C,2EAA2E;QAC3E,qIAAqI;QACrI,gFAAgF;QAChF,MAAM,KAAK,GAAG,IAAI,+BAAoB,EAAE,CAAC;QACzC,MAAM,aAAa,GAAG,IAAI,GAAG,EAAmC,CAAC;QACjE,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,UAAU,EAAE;YAChC,EAAE,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;YAC5B,IAAI,SAAS,KAAK,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC;gBAC5C,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,EAAE,IAAI,GAAG,EAAY,CAAC,CAAC;SACrD;QAED,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;YACxB,IAAI,GAAG,GAAG,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACzC,IAAI,SAAS,KAAK,GAAG,EAAE;gBACrB,GAAG,GAAG,IAAI,GAAG,EAAY,CAAC;gBAC1B,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;aACrC;YAED,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;SACf;QAED,KAAK,MAAM,KAAK,IAAI,aAAa,EAAE;YACjC,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YACxB,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;SACzC;IACH,CAAC;IAED;;;OAGG;IACI,KAAK,CAAC,iBAAiB,CAAC,GAAc;QAC3C,MAAM,GAAG,GAAa,MAAM,GAAG,CAAC,MAAM,CAAC,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,kDAAkD;QAC1H,OAAO,qBAAS,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC;IAC7C,CAAC;IAED;;;;OAIG;IACI,kBAAkB,CAAC,QAAyB;QACjD,IAAI,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,QAAQ,CAAC;YAC1C,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;QAEzD,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACrC,OAAO,GAAG,EAAE,CAAC,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;IAClD,CAAC;IAED;;;OAGG;IACI,mBAAmB,CAAC,QAAyB;QAClD,MAAM,KAAK,GAAG,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACtD,IAAI,KAAK,IAAI,CAAC;YACZ,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAC3C,CAAC;IAED;;;;;OAKG;IACI,YAAY,CAAC,SAAoB;QACtC,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,SAAS,CAAC;YACrC,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;QAElD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAChC,IAAI,CAAC,6BAA6B,EAAE,CAAC;QACrC,OAAO,GAAG,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;IAC7C,CAAC;IAED;;;OAGG;IACI,aAAa,CAAC,SAAoB;QACvC,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACjD,IAAI,KAAK,GAAG,CAAC;YACX,OAAO,KAAK,CAAC;QAEf,IAAI,CAAC,mCAAmC,CAAC,SAAS,CAAC,CAAC;QACpD,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QACjC,IAAI,CAAC,6BAA6B,EAAE,CAAC;QACrC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,oBAAoB,CAAC,GAAc;QAC9C,KAAK,MAAM,SAAS,IAAI,IAAI,CAAC,UAAU,EAAE;YACvC,IAAI,SAAS,KAAK,SAAS,CAAC,iBAAiB,IAAI,SAAS,KAAK,SAAS,CAAC,oBAAoB,IAAI,SAAS,CAAC,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC;gBACxI,OAAO,SAAS,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC;SAC9C;QACD,OAAO,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC1D,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,uBAAuB,CAAC,GAAc,EAAE,EAAiB;QACpE,KAAK,MAAM,SAAS,IAAI,qBAAS,CAAC,WAAW,CAAC,UAAU,EAAE;YACxD,IAAI,SAAS,KAAK,SAAS,CAAC,iBAAiB,IAAI,SAAS,KAAK,SAAS,CAAC,uBAAuB,IAAI,SAAS,CAAC,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC;gBAC3I,OAAO,SAAS,CAAC,uBAAuB,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;SACrD;QACD,OAAO,mBAAY,CAAC,EAAE,CAAC;IACzB,CAAC;IAED;;OAEG;IACI,qBAAqB,CAAC,GAAc;QACzC,KAAK,MAAM,SAAS,IAAI,qBAAS,CAAC,WAAW,CAAC,UAAU,EAAE;YACxD,IAAI,SAAS,KAAK,SAAS,CAAC,iBAAiB,IAAI,SAAS,KAAK,SAAS,CAAC,qBAAqB,IAAI,SAAS,CAAC,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC;gBACzI,OAAO,SAAS,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC;SAC/C;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,sBAAsB,CAAC,GAAc;QAChD,KAAK,MAAM,SAAS,IAAI,IAAI,CAAC,UAAU,EAAE;YACvC,IAAI,SAAS,KAAK,SAAS,CAAC,kBAAkB,IAAI,SAAS,KAAK,SAAS,CAAC,oBAAoB,IAAI,SAAS,CAAC,kBAAkB,CAAC,GAAG,CAAC;gBACjI,OAAO,SAAS,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC;SAC9C;QACD,OAAO,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;IACrC,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,0BAA0B,CAAC,GAAc,EAAE,EAAiB;QACvE,KAAK,MAAM,SAAS,IAAI,qBAAS,CAAC,WAAW,CAAC,UAAU,EAAE;YACxD,IAAI,SAAS,KAAK,SAAS,CAAC,kBAAkB,IAAI,SAAS,KAAK,SAAS,CAAC,uBAAuB,IAAI,SAAS,CAAC,kBAAkB,CAAC,GAAG,CAAC;gBACpI,OAAO,SAAS,CAAC,uBAAuB,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;SACrD;QACD,OAAO,mBAAY,CAAC,EAAE,CAAC;IACzB,CAAC;IAED;;OAEG;IACI,uBAAuB,CAAC,GAAc;QAC3C,KAAK,MAAM,SAAS,IAAI,qBAAS,CAAC,WAAW,CAAC,UAAU,EAAE;YACxD,IAAI,SAAS,KAAK,SAAS,CAAC,kBAAkB,IAAI,SAAS,KAAK,SAAS,CAAC,qBAAqB,IAAI,SAAS,CAAC,kBAAkB,CAAC,GAAG,CAAC;gBAClI,OAAO,SAAS,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC;SAC/C;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,IAAW,eAAe,KAAa,OAAO,OAAO,qBAAS,CAAC,UAAU,mCAAmC,CAAC,CAAC,CAAC;IAC/G,IAAW,cAAc,KAAa,OAAO,OAAO,qBAAS,CAAC,UAAU,6BAA6B,CAAC,CAAC,CAAC;IACxG,IAAW,UAAU,KAAa,OAAO,OAAO,qBAAS,CAAC,UAAU,6BAA6B,CAAC,CAAC,CAAC;IACpG,IAAW,cAAc,KAAa,OAAO,OAAO,qBAAS,CAAC,UAAU,+BAA+B,CAAC,CAAC,CAAC;IAC1G,IAAW,UAAU,KAAa,OAAO,OAAO,qBAAS,CAAC,UAAU,yBAAyB,CAAC,CAAC,CAAC;IAChG,IAAW,YAAY,KAAa,OAAO,OAAO,qBAAS,CAAC,UAAU,2BAA2B,CAAC,CAAC,CAAC;IACpG,IAAW,UAAU,KAAa,OAAO,OAAO,qBAAS,CAAC,UAAU,yBAAyB,CAAC,CAAC,CAAC;IAChG,IAAW,UAAU,KAAa,OAAO,OAAO,qBAAS,CAAC,UAAU,yBAAyB,CAAC,CAAC,CAAC;IAEhG;;OAEG;IACI,aAAa,CAAC,SAAiB,SAAS;QAC7C,IAAI,MAAM,KAAK,IAAI,CAAC,MAAM;YACxB,OAAO;QACT,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,UAAU;YAC9B,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IACzB,CAAC;IAED;;;;OAIG;IACI,wBAAwB,CAAC,QAA6B;QAC3D,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,UAAU;YAC9B,EAAE,CAAC,wBAAwB,CAAC,QAAQ,CAAC,CAAC;IAC1C,CAAC;IAED;;;;;OAKG;IACI,uBAAuB,CAAC,UAAkB;QAC/C,KAAK,MAAM,EAAE,IAAI,IAAI;YACnB,EAAE,CAAC,gBAAgB,GAAG,UAAU,CAAC;QAEnC,eAAM,CAAC,QAAQ,CAAC,gBAAgB,GAAG,UAAU,CAAC;IAChD,CAAC;CACF;AAxgBD,kCAwgBC","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 Views\r\n */\r\nimport { BeEvent, BentleyStatus, BeTimePoint, BeUiEvent, Id64Arg } from \"@itwin/core-bentley\";\r\nimport { GeometryStreamProps } from \"@itwin/core-common\";\r\nimport { HitDetail } from \"./HitDetail\";\r\nimport { IModelApp } from \"./IModelApp\";\r\nimport { IModelConnection } from \"./IModelConnection\";\r\nimport { DisclosedTileTreeSet, TileTree } from \"./tile/internal\";\r\nimport { BeButtonEvent, EventHandled } from \"./tools/Tool\";\r\nimport { ScreenViewport, ViewportDecorator } from \"./Viewport\";\r\nimport { System } from \"./render/webgl/System\";\r\n\r\n/** Interface for drawing [decoration graphics]($docs/learning/frontend/ViewDecorations.md) into, or on top of, the active [[ScreenViewport]]s managed by [[ViewManager]].\r\n * Decorators generate [[Decorations]].\r\n * @public\r\n * @extensions\r\n */\r\nexport interface Decorator extends ViewportDecorator {\r\n /** If the [[decorate]] method created pickable graphics, return true if the supplied Id is from this Decorator.\r\n * @param id The Id of the currently selected pickable graphics.\r\n * @returns true if 'id' belongs to this Decorator\r\n */\r\n testDecorationHit?(id: string): boolean;\r\n\r\n /** If the [[decorate]] method created pickable graphics using a persistent element id instead of a transient id,\r\n * return true if the Decorator wants the opportunity to override the default persistent element behavior for\r\n * the supplied [[HitDetail]].\r\n * - Replace or augment the element's tooltip by implementing [[getDecorationToolTip]].\r\n * - Override the element's snap geometry by implementing [[getDecorationGeometry]].\r\n * - Handle button events as decorator events by implementing [[onDecorationButtonEvent]].\r\n * @param hit The HitDetail of the currently selected persistent element or pickable graphics using a persistent element id.\r\n * @returns true if this Decorator wants to override the default persistent element behavior.\r\n */\r\n overrideElementHit?(hit: HitDetail): boolean;\r\n\r\n /** If [[testDecorationHit]] or [[overrideElementHit]] returned true, implement this method to return the tooltip message for this Decorator.\r\n * @param hit The HitDetail about the decoration that was picked.\r\n * @returns A promise with the HTMLElement or string (that may contain HTML) with the tooltip message.\r\n */\r\n getDecorationToolTip?(hit: HitDetail): Promise<HTMLElement | string>;\r\n\r\n /** If [[testDecorationHit]] or [[overrideElementHit]] returned true, implement this method to handle a button event for this Decorator.\r\n * @param hit The HitDetail about the decoration that was picked.\r\n * @param ev The BeButtonEvent that identified this decoration.\r\n * @returns A Promise that resolves to Yes if event completely handled by decoration and event should not be processed by the calling tool.\r\n */\r\n onDecorationButtonEvent?(hit: HitDetail, ev: BeButtonEvent): Promise<EventHandled>;\r\n\r\n /** If [[testDecorationHit]] or [[overrideElementHit]] returned true, implement this method to return the snappable geometry for this Decorator. Geometry that changes with every cursor motion isn't valid for snapping.\r\n * An example would be an InteractiveTool for placing a linestring. It might wish to allow snapping to accepted segments, the segment from the last accepted point to the current cursor position would not be included\r\n * as snappable geometry and would just be displayed in dynamics.\r\n * @param hit The HitDetail about the decoration that was picked.\r\n * @returns GeometryStreamProps containing world coordinate snappable geometry for this decoration.\r\n */\r\n getDecorationGeometry?(hit: HitDetail): GeometryStreamProps | undefined;\r\n}\r\n\r\n/** Argument for [[ViewManager.onSelectedViewportChanged]]\r\n * @public\r\n * @extensions\r\n */\r\nexport interface SelectedViewportChangedArgs {\r\n current?: ScreenViewport;\r\n previous?: ScreenViewport;\r\n}\r\n\r\n/** An object that can contribute customizations to the tooltip displayed when mousing over an element or other entity in a [[Viewport]].\r\n * @see [[ViewManager.addToolTipProvider]] to register a tooltip provider.\r\n * @public\r\n */\r\nexport interface ToolTipProvider {\r\n /** Augment or replace the tooltip for the specified HitDetail.\r\n * @note To cooperate with other tooltip providers, prefer to *append* information to the input tooltip instead of replacing it entirely.\r\n */\r\n augmentToolTip(hit: HitDetail, tooltip: Promise<HTMLElement | string>): Promise<HTMLElement | string>;\r\n}\r\n\r\n/** The ViewManager holds the list of opened views, plus the *selected view*. It also provides notifications of view open/close and suspend/resume.\r\n * Applications must call [[addViewport]] when new Viewports that should be associated with user events are created.\r\n *\r\n * A single ViewManager is created when [[IModelApp.startup]] is called. It can be accessed via the static member [[IModelApp.viewManager]].\r\n *\r\n * The ViewManager controls the render loop, which causes the contents of each registered [[Viewport]] to update on the screen.\r\n * @public\r\n * @extensions\r\n */\r\nexport class ViewManager implements Iterable<ScreenViewport> {\r\n public inDynamicsMode = false;\r\n public cursor = \"default\";\r\n private readonly _viewports: ScreenViewport[] = [];\r\n public readonly decorators: Decorator[] = [];\r\n private _selectedView?: ScreenViewport;\r\n private _invalidateScenes = false;\r\n private _skipSceneCreation = false;\r\n private _doIdleWork = false;\r\n private _idleWorkTimer?: any;\r\n\r\n /** @internal */\r\n public readonly toolTipProviders: ToolTipProvider[] = [];\r\n\r\n private _beginIdleWork() {\r\n const idleWork = () => {\r\n if (undefined === this._idleWorkTimer)\r\n return;\r\n if (this._viewports.length > 0) {\r\n this._idleWorkTimer = undefined;\r\n return;\r\n }\r\n if (IModelApp.renderSystem.doIdleWork())\r\n this._idleWorkTimer = setTimeout(idleWork, 1);\r\n else\r\n this._idleWorkTimer = undefined;\r\n };\r\n\r\n if (undefined === this._idleWorkTimer)\r\n this._idleWorkTimer = setTimeout(idleWork, 1);\r\n }\r\n\r\n /** @internal */\r\n public onInitialized() {\r\n this.addDecorator(IModelApp.accuSnap);\r\n this.addDecorator(IModelApp.tentativePoint);\r\n this.addDecorator(IModelApp.accuDraw);\r\n this.addDecorator(IModelApp.toolAdmin);\r\n this.cursor = \"default\";\r\n\r\n const options = IModelApp.renderSystem.options;\r\n this._doIdleWork = true === options.doIdleWork;\r\n if (this._doIdleWork)\r\n this._beginIdleWork();\r\n }\r\n\r\n /** @internal */\r\n public onShutDown() {\r\n if (undefined !== this._idleWorkTimer) {\r\n clearTimeout(this._idleWorkTimer);\r\n this._idleWorkTimer = undefined;\r\n }\r\n this._viewports.length = 0;\r\n this.decorators.length = 0;\r\n this.toolTipProviders.length = 0;\r\n this._selectedView = undefined;\r\n }\r\n\r\n /** Returns true if the specified viewport is currently being managed by this ViewManager.\r\n * @see [[addViewport]] to enable management of a viewport and [[dropViewport]] to disable it.\r\n */\r\n public hasViewport(viewport: ScreenViewport) {\r\n return this._viewports.includes(viewport);\r\n }\r\n\r\n /** Called after the selected view changes.\r\n * @param old Previously selected viewport.\r\n * @param current Currently selected viewport.\r\n */\r\n public readonly onSelectedViewportChanged = new BeUiEvent<SelectedViewportChangedArgs>();\r\n\r\n /** Called after a view is opened. This can happen when the iModel is first opened or when a user opens a new view. */\r\n public readonly onViewOpen = new BeUiEvent<ScreenViewport>();\r\n\r\n /** Called after a view is closed. This can happen when the iModel is closed or when a user closes an open view. */\r\n public readonly onViewClose = new BeUiEvent<ScreenViewport>();\r\n\r\n /** Called after a view is suspended. This happens when the application is minimized or, on a tablet, when the application\r\n * is moved to the background.\r\n */\r\n public readonly onViewSuspend = new BeUiEvent<ScreenViewport>();\r\n\r\n /** Called after a suspended view is resumed. This can happen when a minimized application is restored\r\n * or, on a tablet, when the application is moved to the foreground.\r\n */\r\n public readonly onViewResume = new BeUiEvent<ScreenViewport>();\r\n\r\n /** Called at the beginning of each tick of the render loop, before any viewports have been updated.\r\n * The render loop is typically invoked by a requestAnimationFrame() callback. It will not be invoked if the ViewManager is tracking no viewports.\r\n * @note Due to the frequency of this event, avoid performing expensive work inside event listeners.\r\n * @see [[ViewManager.onFinishRender]]\r\n */\r\n public readonly onBeginRender = new BeEvent<() => void>();\r\n\r\n /** Called at the end of each tick of the render loop, after all viewports have been updated.\r\n * The render loop is typically invoked by a requestAnimationFrame() callback. It will not be invoked if the ViewManager is tracking no viewports.\r\n * @note Due to the frequency of this event, avoid performing expensive work inside event listeners.\r\n * @see [[ViewManager.onBeginRender]]\r\n */\r\n public readonly onFinishRender = new BeEvent<() => void>();\r\n\r\n /** @internal */\r\n public endDynamicsMode(): void {\r\n if (!this.inDynamicsMode)\r\n return;\r\n\r\n this.inDynamicsMode = false;\r\n\r\n const cursorVp = IModelApp.toolAdmin.cursorView;\r\n if (cursorVp)\r\n cursorVp.changeDynamics(undefined);\r\n\r\n for (const vp of this._viewports) {\r\n if (vp !== cursorVp)\r\n vp.changeDynamics(undefined);\r\n }\r\n }\r\n\r\n /** @internal */\r\n public beginDynamicsMode() { this.inDynamicsMode = true; }\r\n\r\n /** @internal */\r\n public get doesHostHaveFocus(): boolean { return document.hasFocus(); }\r\n\r\n /** Set the selected [[Viewport]] to undefined. */\r\n public clearSelectedView(): void {\r\n const previousVp = this.selectedView;\r\n this._selectedView = undefined;\r\n this.notifySelectedViewportChanged(previousVp, undefined);\r\n }\r\n\r\n /** Sets the selected [[Viewport]]. */\r\n public async setSelectedView(vp: ScreenViewport | undefined): Promise<BentleyStatus> {\r\n if (undefined === vp)\r\n vp = this.getFirstOpenView();\r\n\r\n if (vp === this.selectedView) // already the selected view\r\n return BentleyStatus.SUCCESS;\r\n\r\n if (undefined === vp) {\r\n this.clearSelectedView();\r\n return BentleyStatus.ERROR;\r\n }\r\n\r\n const previousVp = this.selectedView;\r\n this._selectedView = vp;\r\n\r\n this.notifySelectedViewportChanged(previousVp, vp);\r\n\r\n if (undefined === previousVp)\r\n await IModelApp.toolAdmin.startDefaultTool();\r\n\r\n return BentleyStatus.SUCCESS;\r\n }\r\n\r\n /** @internal */\r\n public notifySelectedViewportChanged(previous: ScreenViewport | undefined, current: ScreenViewport | undefined) {\r\n IModelApp.toolAdmin.onSelectedViewportChanged(previous, current);// eslint-disable-line @typescript-eslint/no-floating-promises\r\n this.onSelectedViewportChanged.emit({ previous, current });\r\n }\r\n\r\n /** The \"selected view\" is the default for certain operations. */\r\n public get selectedView(): ScreenViewport | undefined { return this._selectedView; }\r\n\r\n /** Get the first opened view. */\r\n public getFirstOpenView(): ScreenViewport | undefined { return this._viewports.length > 0 ? this._viewports[0] : undefined; }\r\n\r\n /** Check if only a single viewport is being used. If so, render directly on-screen using its WebGL canvas. Otherwise, render each view offscreen. */\r\n private updateRenderToScreen() {\r\n const renderToScreen = 1 === this._viewports.length;\r\n for (const vp of this)\r\n vp.rendersToScreen = renderToScreen;\r\n }\r\n\r\n /** Add a new Viewport to the list of opened views and create an EventController for it.\r\n * @param newVp the Viewport to add\r\n * @returns SUCCESS if vp was successfully added, ERROR if it was already present.\r\n * @note raises onViewOpen event with newVp.\r\n */\r\n public addViewport(newVp: ScreenViewport): BentleyStatus {\r\n if (this.hasViewport(newVp)) // make sure its not already added\r\n return BentleyStatus.ERROR;\r\n\r\n newVp.onViewManagerAdd();\r\n\r\n this._viewports.push(newVp);\r\n this.updateRenderToScreen();\r\n this.setSelectedView(newVp);// eslint-disable-line @typescript-eslint/no-floating-promises\r\n\r\n // Start up the render loop if necessary.\r\n if (1 === this._viewports.length)\r\n IModelApp.startEventLoop();\r\n\r\n this.onViewOpen.emit(newVp);\r\n\r\n return BentleyStatus.SUCCESS;\r\n }\r\n\r\n /** Remove a Viewport from the list of opened views, and optionally dispose of it.\r\n * Typically a Viewport is dropped when it is no longer of any use to the application, in which case it should also be\r\n * disposed of as it may hold significant GPU resources.\r\n * However in some cases a Viewport may be temporarily dropped to suspend rendering; and subsequently re-added to\r\n * resume rendering - for example, when the Viewport is temporarily hidden by other UI elements.\r\n * In the latter case it is up to the caller to ensure the Viewport is properly disposed of when it is no longer needed.\r\n * Attempting to invoke any function on a Viewport after it has been disposed is an error.\r\n * @param vp the Viewport to remove.\r\n * @param disposeOfViewport Whether or not to dispose of the Viewport. Defaults to true.\r\n * @return SUCCESS if vp was successfully removed, ERROR if it was not present.\r\n * @note raises onViewClose event with vp.\r\n */\r\n public dropViewport(vp: ScreenViewport, disposeOfViewport: boolean = true): BentleyStatus {\r\n const index = this._viewports.indexOf(vp);\r\n if (index === -1)\r\n return BentleyStatus.ERROR;\r\n\r\n this.onViewClose.emit(vp);\r\n\r\n // make sure tools don't think the cursor is still in this viewport\r\n IModelApp.toolAdmin.forgetViewport(vp);\r\n\r\n vp.onViewManagerDrop();\r\n\r\n this._viewports.splice(index, 1);\r\n\r\n if (this.selectedView === vp) // if removed viewport was selectedView, set it to undefined.\r\n this.setSelectedView(undefined);// eslint-disable-line @typescript-eslint/no-floating-promises\r\n\r\n vp.rendersToScreen = false;\r\n this.updateRenderToScreen();\r\n\r\n if (disposeOfViewport)\r\n vp.dispose();\r\n\r\n if (this._doIdleWork && this._viewports.length === 0)\r\n this._beginIdleWork();\r\n\r\n return BentleyStatus.SUCCESS;\r\n }\r\n\r\n /** Iterate over the viewports registered with the view manager. */\r\n public [Symbol.iterator](): Iterator<ScreenViewport> {\r\n return this._viewports[Symbol.iterator]();\r\n }\r\n\r\n /** Force each registered [[Viewport]] to regenerate all of its cached [[Decorations]] on the next frame. If the decorator parameter is specified, only\r\n * the specified decorator will have its cached decorations invalidated for all viewports.\r\n * @see [[Viewport.invalidateCachedDecorations]] to manually remove a decorator's cached decorations from a viewport, forcing them to be regenerated.\r\n * @beta\r\n */\r\n public invalidateCachedDecorationsAllViews(decorator: ViewportDecorator): void {\r\n if (decorator.useCachedDecorations)\r\n for (const vp of this)\r\n vp.invalidateCachedDecorations(decorator);\r\n }\r\n\r\n /** Force each registered [[Viewport]] to regenerate its [[Decorations]] on the next frame. */\r\n public invalidateDecorationsAllViews(): void {\r\n for (const vp of this)\r\n vp.invalidateDecorations();\r\n }\r\n\r\n /** Force each registered [[Viewport]] to regenerate its [[FeatureSymbology.Overrides]] on the next frame.\r\n * @alpha\r\n */\r\n public invalidateSymbologyOverridesAllViews(): void {\r\n for (const vp of this)\r\n vp.setFeatureOverrideProviderChanged();\r\n }\r\n\r\n /** @internal */\r\n public onSelectionSetChanged(_iModel: IModelConnection) {\r\n for (const vp of this)\r\n vp.markSelectionSetDirty();\r\n\r\n IModelApp.requestNextAnimation();\r\n }\r\n\r\n /** @internal */\r\n public invalidateViewportScenes(): void {\r\n for (const vp of this)\r\n vp.invalidateScene();\r\n }\r\n\r\n /** @internal */\r\n public validateViewportScenes(): void {\r\n for (const vp of this)\r\n vp.setValidScene();\r\n }\r\n\r\n /** @internal */\r\n public invalidateScenes(): void {\r\n this._invalidateScenes = true;\r\n IModelApp.requestNextAnimation();\r\n }\r\n /** @internal */\r\n public get sceneInvalidated(): boolean { return this._invalidateScenes; }\r\n\r\n /** Invoked by ToolAdmin event loop.\r\n * @internal\r\n */\r\n public renderLoop(): void {\r\n if (0 === this._viewports.length)\r\n return;\r\n if (this._skipSceneCreation)\r\n this.validateViewportScenes();\r\n else if (this._invalidateScenes)\r\n this.invalidateViewportScenes();\r\n\r\n this._invalidateScenes = false;\r\n\r\n this.onBeginRender.raiseEvent();\r\n\r\n for (const vp of this._viewports)\r\n vp.renderFrame();\r\n\r\n this.onFinishRender.raiseEvent();\r\n }\r\n\r\n /** Purge TileTrees that haven't been drawn since the specified time point and are not currently in use by any ScreenViewport.\r\n * Intended strictly for debugging purposes - TileAdmin takes care of properly purging.\r\n * @internal\r\n */\r\n public purgeTileTrees(olderThan: BeTimePoint): void {\r\n // A single viewport can display tiles from more than one IModelConnection.\r\n // NOTE: A viewport may be displaying no trees - but we need to record its IModel so we can purge those which are NOT being displayed\r\n // NOTE: That won't catch external tile trees previously used by that viewport.\r\n const trees = new DisclosedTileTreeSet();\r\n const treesByIModel = new Map<IModelConnection, Set<TileTree>>();\r\n for (const vp of this._viewports) {\r\n vp.discloseTileTrees(trees);\r\n if (undefined === treesByIModel.get(vp.iModel))\r\n treesByIModel.set(vp.iModel, new Set<TileTree>());\r\n }\r\n\r\n for (const tree of trees) {\r\n let set = treesByIModel.get(tree.iModel);\r\n if (undefined === set) {\r\n set = new Set<TileTree>();\r\n treesByIModel.set(tree.iModel, set);\r\n }\r\n\r\n set.add(tree);\r\n }\r\n\r\n for (const entry of treesByIModel) {\r\n const iModel = entry[0];\r\n iModel.tiles.purge(olderThan, entry[1]);\r\n }\r\n }\r\n\r\n /** Get the tooltip for a persistent element.\r\n * Calls the backend method [Element.getToolTipMessage]($backend), and replaces all instances of `${localizeTag}` with localized string from IModelApp.i18n.\r\n * @beta\r\n */\r\n public async getElementToolTip(hit: HitDetail): Promise<HTMLElement | string> {\r\n const msg: string[] = await hit.iModel.getToolTipMessage(hit.sourceId); // wait for the locate message(s) from the backend\r\n return IModelApp.formatElementToolTip(msg);\r\n }\r\n\r\n /** Register a new [[ToolTipProvider]] to customize the locate tooltip.\r\n * @param provider The new tooltip provider to add.\r\n * @throws Error if `provider` is already registered.\r\n * @returns a function that may be called to remove this provider (in lieu of calling [[dropToolTipProvider]].)\r\n */\r\n public addToolTipProvider(provider: ToolTipProvider): () => void {\r\n if (this.toolTipProviders.includes(provider))\r\n throw new Error(\"tooltip provider already registered\");\r\n\r\n this.toolTipProviders.push(provider);\r\n return () => this.dropToolTipProvider(provider);\r\n }\r\n\r\n /** Drop (remove) a [[ToolTipProvider]] so it is no longer active.\r\n * @param provider The tooltip provider to drop.\r\n * @note Does nothing if provider is not currently active.\r\n */\r\n public dropToolTipProvider(provider: ToolTipProvider) {\r\n const index = this.toolTipProviders.indexOf(provider);\r\n if (index >= 0)\r\n this.toolTipProviders.splice(index, 1);\r\n }\r\n\r\n /** Add a new [[Decorator]] to display decorations into the active views.\r\n * @param decorator The new decorator to add.\r\n * @throws Error if decorator is already active.\r\n * @returns a function that may be called to remove this decorator (in lieu of calling [[dropDecorator]].)\r\n * @see [[dropDecorator]]\r\n */\r\n public addDecorator(decorator: Decorator): () => void {\r\n if (this.decorators.includes(decorator))\r\n throw new Error(\"decorator already registered\");\r\n\r\n this.decorators.push(decorator);\r\n this.invalidateDecorationsAllViews();\r\n return () => this.dropDecorator(decorator);\r\n }\r\n\r\n /** Drop (remove) a [[Decorator]] so it is no longer active.\r\n * @param decorator The Decorator to drop.\r\n * @returns true if the decorator was found and removed; false if the decorator was not found.\r\n */\r\n public dropDecorator(decorator: Decorator): boolean {\r\n const index = this.decorators.indexOf(decorator);\r\n if (index < 0)\r\n return false;\r\n\r\n this.invalidateCachedDecorationsAllViews(decorator);\r\n this.decorators.splice(index, 1);\r\n this.invalidateDecorationsAllViews();\r\n return true;\r\n }\r\n\r\n /** Get the tooltip for a pickable decoration.\r\n * @internal\r\n */\r\n public async getDecorationToolTip(hit: HitDetail): Promise<HTMLElement | string> {\r\n for (const decorator of this.decorators) {\r\n if (undefined !== decorator.testDecorationHit && undefined !== decorator.getDecorationToolTip && decorator.testDecorationHit(hit.sourceId))\r\n return decorator.getDecorationToolTip(hit);\r\n }\r\n return hit.viewport ? hit.viewport.getToolTip(hit) : \"\";\r\n }\r\n\r\n /** Allow a pickable decoration to handle a button event that identified it for the SelectTool.\r\n * @internal\r\n */\r\n public async onDecorationButtonEvent(hit: HitDetail, ev: BeButtonEvent): Promise<EventHandled> {\r\n for (const decorator of IModelApp.viewManager.decorators) {\r\n if (undefined !== decorator.testDecorationHit && undefined !== decorator.onDecorationButtonEvent && decorator.testDecorationHit(hit.sourceId))\r\n return decorator.onDecorationButtonEvent(hit, ev);\r\n }\r\n return EventHandled.No;\r\n }\r\n\r\n /** Allow a pickable decoration to be snapped to by AccuSnap or TentativePoint.\r\n * @internal\r\n */\r\n public getDecorationGeometry(hit: HitDetail): GeometryStreamProps | undefined {\r\n for (const decorator of IModelApp.viewManager.decorators) {\r\n if (undefined !== decorator.testDecorationHit && undefined !== decorator.getDecorationGeometry && decorator.testDecorationHit(hit.sourceId))\r\n return decorator.getDecorationGeometry(hit);\r\n }\r\n return undefined;\r\n }\r\n\r\n /** Allow a pickable decoration created using a persistent element id to augment or replace the the persistent element's tooltip.\r\n * @internal\r\n */\r\n public async overrideElementToolTip(hit: HitDetail): Promise<HTMLElement | string> {\r\n for (const decorator of this.decorators) {\r\n if (undefined !== decorator.overrideElementHit && undefined !== decorator.getDecorationToolTip && decorator.overrideElementHit(hit))\r\n return decorator.getDecorationToolTip(hit);\r\n }\r\n return this.getElementToolTip(hit);\r\n }\r\n\r\n /** Allow a pickable decoration created using a persistent element id to handle a button event that identified it for the SelectTool.\r\n * @internal\r\n */\r\n public async overrideElementButtonEvent(hit: HitDetail, ev: BeButtonEvent): Promise<EventHandled> {\r\n for (const decorator of IModelApp.viewManager.decorators) {\r\n if (undefined !== decorator.overrideElementHit && undefined !== decorator.onDecorationButtonEvent && decorator.overrideElementHit(hit))\r\n return decorator.onDecorationButtonEvent(hit, ev);\r\n }\r\n return EventHandled.No;\r\n }\r\n\r\n /** Allow a pickable decoration created using a persistent element id to control whether snapping uses the persistent element's geometry.\r\n * @internal\r\n */\r\n public overrideElementGeometry(hit: HitDetail): GeometryStreamProps | undefined {\r\n for (const decorator of IModelApp.viewManager.decorators) {\r\n if (undefined !== decorator.overrideElementHit && undefined !== decorator.getDecorationGeometry && decorator.overrideElementHit(hit))\r\n return decorator.getDecorationGeometry(hit);\r\n }\r\n return undefined;\r\n }\r\n\r\n public get crossHairCursor(): string { return `url(${IModelApp.publicPath}cursors/crosshair.cur), crosshair`; }\r\n public get dynamicsCursor(): string { return `url(${IModelApp.publicPath}cursors/dynamics.cur), move`; }\r\n public get grabCursor(): string { return `url(${IModelApp.publicPath}cursors/openHand.cur), auto`; }\r\n public get grabbingCursor(): string { return `url(${IModelApp.publicPath}cursors/closedHand.cur), auto`; }\r\n public get walkCursor(): string { return `url(${IModelApp.publicPath}cursors/walk.cur), auto`; }\r\n public get rotateCursor(): string { return `url(${IModelApp.publicPath}cursors/rotate.cur), auto`; }\r\n public get lookCursor(): string { return `url(${IModelApp.publicPath}cursors/look.cur), auto`; }\r\n public get zoomCursor(): string { return `url(${IModelApp.publicPath}cursors/zoom.cur), auto`; }\r\n\r\n /** Change the cursor shown in all Viewports.\r\n * @param cursor The new cursor to display. If undefined, the default cursor is used.\r\n */\r\n public setViewCursor(cursor: string = \"default\") {\r\n if (cursor === this.cursor)\r\n return;\r\n this.cursor = cursor;\r\n for (const vp of this._viewports)\r\n vp.setCursor(cursor);\r\n }\r\n\r\n /** Intended strictly as a temporary solution for interactive editing applications, until official support for such apps is implemented.\r\n * Call this after editing one or more models, passing in the Ids of those models, to cause new tiles to be generated reflecting the changes.\r\n * Pass undefined if you are unsure which models changed (this is less efficient as it discards all tiles for all viewed models in all viewports).\r\n * @internal\r\n */\r\n public refreshForModifiedModels(modelIds: Id64Arg | undefined): void {\r\n for (const vp of this._viewports)\r\n vp.refreshForModifiedModels(modelIds);\r\n }\r\n\r\n /** Sets the number of [MSAA]($docs/learning/display/MSAA.md) samples for all currently- and subsequently-opened [[ScreenViewport]]s.\r\n * @param numSamples The number of samples as a power of two. Values of 1 or less indicates anti-aliasing should be disabled. Non-power-of-two values are rounded\r\n * down to the nearest power of two. The maximum number of samples supported depends upon the client's graphics hardware capabilities. Higher values produce\r\n * a higher-quality image but also may also reduce framerate.\r\n * @see [[Viewport.antialiasSamples]] to adjust the number of samples for a specific viewport.\r\n */\r\n public setAntialiasingAllViews(numSamples: number): void {\r\n for (const vp of this)\r\n vp.antialiasSamples = numSamples;\r\n\r\n System.instance.antialiasSamples = numSamples;\r\n }\r\n}\r\n"]}
@@ -274,7 +274,6 @@ export declare abstract class ViewState extends ElementState {
274
274
  abstract forEachModelTreeRef(func: (treeRef: TileTreeReference) => void): void;
275
275
  /** Execute a function against each [[TileTreeReference]] associated with this view.
276
276
  * @note This may include tile trees not associated with any [[GeometricModelState]] - e.g., context reality data.
277
- * @internal
278
277
  */
279
278
  forEachTileTreeRef(func: (treeRef: TileTreeReference) => void): void;
280
279
  /** Disclose *all* TileTrees currently in use by this view. This set may include trees not reported by [[forEachTileTreeRef]] - e.g., those used by view attachments, map-draped terrain, etc.
@@ -560,7 +559,7 @@ export declare abstract class ViewState3d extends ViewState {
560
559
  /** @internal override */
561
560
  applyPose(val: ViewPose): this;
562
561
  toJSON(): ViewDefinition3dProps;
563
- /** @internal */
562
+ /** See [[ViewState.is3d]]. */
564
563
  is3d(): this is ViewState3d;
565
564
  /** @internal */
566
565
  isDrawingView(): this is DrawingViewState;
@@ -778,7 +777,7 @@ export declare abstract class ViewState2d extends ViewState {
778
777
  protected get _tileTreeRef(): TileTreeReference | undefined;
779
778
  constructor(props: ViewDefinition2dProps, iModel: IModelConnection, categories: CategorySelectorState, displayStyle: DisplayStyle2dState);
780
779
  toJSON(): ViewDefinition2dProps;
781
- /** @internal */
780
+ /** See [[ViewState.is3d]]. */
782
781
  is3d(): this is ViewState3d;
783
782
  /** @internal */
784
783
  isSpatialView(): this is SpatialViewState;
@@ -1 +1 @@
1
- {"version":3,"file":"ViewState.d.ts","sourceRoot":"","sources":["../../src/ViewState.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ViewState.d.ts","sourceRoot":"","sources":["../../src/ViewState.ts"],"names":[],"mappings":"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"}
@@ -278,7 +278,6 @@ class ViewState extends EntityState_1.ElementState {
278
278
  }
279
279
  /** Execute a function against each [[TileTreeReference]] associated with this view.
280
280
  * @note This may include tile trees not associated with any [[GeometricModelState]] - e.g., context reality data.
281
- * @internal
282
281
  */
283
282
  forEachTileTreeRef(func) {
284
283
  this.forEachModelTreeRef(func);
@@ -1063,7 +1062,7 @@ class ViewState3d extends ViewState {
1063
1062
  val.camera = this.camera;
1064
1063
  return val;
1065
1064
  }
1066
- /** @internal */
1065
+ /** See [[ViewState.is3d]]. */
1067
1066
  is3d() { return true; }
1068
1067
  /** @internal */
1069
1068
  isDrawingView() { return false; }
@@ -1739,7 +1738,7 @@ class ViewState2d extends ViewState {
1739
1738
  val.baseModelId = this.baseModelId;
1740
1739
  return val;
1741
1740
  }
1742
- /** @internal */
1741
+ /** See [[ViewState.is3d]]. */
1743
1742
  is3d() { return false; }
1744
1743
  /** @internal */
1745
1744
  isSpatialView() { return false; }