How to use the @bentley/imodeljs-frontend.IModelApp.toolAdmin function in @bentley/imodeljs-frontend

To help you get started, we’ve selected a few @bentley/imodeljs-frontend examples, based on popular ways it is used in public projects.

Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.

github imodeljs / imodeljs / test-apps / display-test-app / src / frontend / Viewer.ts View on Github external
public run(_args: any[]): boolean {
    const vp = IModelApp.viewManager.selectedView;
    if (undefined === vp)
      return true;

    if (MarkupApp.isActive) {
      // NOTE: Because we don't have separate START and STOP buttons in the test app, exit markup mode only when the Markup Select tool is active, otherwise start the Markup Select tool...
      const startMarkupSelect = IModelApp.toolAdmin.defaultToolId === MarkupApp.markupSelectToolId && (undefined === IModelApp.toolAdmin.activeTool || MarkupApp.markupSelectToolId !== IModelApp.toolAdmin.activeTool.toolId);
      if (startMarkupSelect) {
        IModelApp.toolAdmin.startDefaultTool();
        return true;
      }
      MarkupApp.props.result.maxWidth = 1500;
      MarkupApp.stop().then((markupData) => {
        if (undefined !== markupData.image)
          openImageDataUrlInNewWindow(markupData.image, "Markup");
      }).catch((_) => { });
    } else {
      MarkupApp.props.active.element.stroke = "white"; // as an example, set default color for elements
      MarkupApp.markupSelectToolId = "Markup.TestSelect"; // as an example override the default markup select tool to launch redline tools using key events
      MarkupApp.start(vp); // tslint:disable-line:no-floating-promises
    }

    return true;
github imodeljs / imodeljs / ui / framework / src / ui-framework / zones / toolsettings / ToolUiManager.ts View on Github external
public static initialize() {
    // istanbul ignore else
    if (IModelApp && IModelApp.toolAdmin) {
      IModelApp.toolAdmin.toolSettingsChangeHandler = ToolUiManager.syncToolSettingsProperties;
    }
  }
github imodeljs / imodeljs / core / markup / src / Markup.ts View on Github external
// first, lock the viewport to its current size while the markup session is running
    this.lockViewportSize(view, markupData);

    this.markup = this.createMarkup(view, markupData); // start a markup against the provided view.
    if (!this.markup.svgMarkup) {
      ScreenViewport.setToParentSize(this.markup.vp.vpDiv);
      this.markup.markupDiv.remove();
      return;
    }

    IModelApp.toolAdmin.markupView = view; // so viewing tools won't operate on the view.

    // set the markup Select tool as the default tool and start it, saving current default tool
    this._saveDefaultToolId = IModelApp.toolAdmin.defaultToolId;
    IModelApp.toolAdmin.defaultToolId = this.markupSelectToolId;
    IModelApp.toolAdmin.startDefaultTool();
  }
github imodeljs / imodeljs / ui / framework / src / ui-framework / frontstage / FrontstageDef.tsx View on Github external
public startDefaultTool(): void {
    // Start the default tool
    if (this.defaultTool && IModelApp.toolAdmin && IModelApp.viewManager) {
      IModelApp.toolAdmin.defaultToolId = this.defaultTool.toolId;
      this.defaultTool.execute();
    }
  }
github imodeljs / imodeljs / ui / framework / src / ui-framework / zones / toolsettings / ToolUiManager.ts View on Github external
public static initialize() {
    // istanbul ignore else
    if (IModelApp && IModelApp.toolAdmin) {
      IModelApp.toolAdmin.toolSettingsChangeHandler = ToolUiManager.syncToolSettingsProperties;
    }
  }
github imodeljs / imodeljs / ui / framework / src / ui-framework / statusfields / toolassistance / ToolAssistanceField.tsx View on Github external
label={UiFramework.translate("toolAssistance.promptAtCursor")}
                    isOn={this.state.showPromptAtCursor} onChange={this._onPromptAtCursorChange} />
                
              
            }
          
        
      );
    }

    if (prompt)
      tooltip = prompt;

    // istanbul ignore next
    if (IModelApp.toolAdmin.activeTool)
      tooltip = `${IModelApp.toolAdmin.activeTool.flyover} > ${tooltip}  `;

    if (tooltip) {
      const lineBreak = "\u000d\u000a";
      tooltip = tooltip + lineBreak;
    }

    tooltip += UiFramework.translate("toolAssistance.moreInfo");

    return (
      <>
        <div title="{tooltip}">
          
                {toolIcon}
              
</div>
github imodeljs / imodeljs / test-apps / display-test-app / src / frontend / App.ts View on Github external
OpenIModelTool,
      PurgeTileTreesTool,
      RefreshTilesTool,
      ReopenIModelTool,
      ResizeWindowTool,
      RestoreWindowTool,
      SaveImageTool,
      ShutDownTool,
      SVTSelectionTool,
      ToggleFrustumIntersectionTool,
      ToggleShadowMapTilesTool,
      VersionComparisonTool,
      ZoomToSelectedElementsTool,
    ].forEach((tool) => tool.register(svtToolNamespace));

    IModelApp.toolAdmin.defaultToolId = SVTSelectionTool.toolId;
    return FrontendDevTools.initialize();
  }
github imodeljs / imodeljs / core / frontend-devtools / src / widgets / ToolSettingsTracker.ts View on Github external
      handler: (value, _input) => { ToolSettings.wheelZoomRatio = value; IModelApp.toolAdmin.exitViewTool(); },
      parseAsFloat: true,
github imodeljs / imodeljs / core / markup / src / RedlineTool.ts View on Github external
  protected setupAndPromptForNextAction(): void { IModelApp.accuSnap.enableSnap(true); IModelApp.toolAdmin.toolState.coordLockOvr = CoordinateLockOverrides.None; super.setupAndPromptForNextAction(); }
github imodeljs / imodeljs / core / frontend-devtools / src / widgets / ToolSettingsTracker.ts View on Github external
      handler: (_cb) => { ToolSettings.preserveWorldUp = !ToolSettings.preserveWorldUp; IModelApp.toolAdmin.exitViewTool(); },
    });