WebCAD-Lib-TS API 文档 - v1.0.0
    Preparing search index...

    Class SidebarPanelManager

    侧边栏面板管理器

    用于注册、注销和管理自定义侧边栏面板。 通过 Engine.sidebarPanelManager 或 SidebarPanelManager.getInstance() 访问。

    SidebarPanelManager

    // 定义自定义面板类
    class MyToolPanel extends BasePanelComponent {
    render() {
    return html`
    <div class="panel-content">
    <div class="panel-section">
    <div class="panel-section-title">工具</div>
    <button class="panel-btn" @click=${this.doSomething}>
    执行操作
    </button>
    </div>
    </div>
    `;
    }

    doSomething() {
    console.log("Button clicked!");
    }
    }

    // 注册面板
    SidebarPanelManager.getInstance().registerPanel({
    name: "my-tools",
    label: "我的工具",
    icon: "./images/actbar/tools.svg",
    position: "left",
    panelClass: MyToolPanel
    });

    // 激活面板
    SidebarPanelManager.getInstance().activatePanel("my-tools");

    // 注销面板
    SidebarPanelManager.getInstance().unregisterPanel("my-tools");
    Index

    Methods

    • 获取 SidebarPanelManager 单例实例

      Returns SidebarPanelManager

      管理器实例

      const manager = SidebarPanelManager.getInstance();
      manager.registerPanel({ ... });
    • 注册自定义侧边栏面板

      将自定义面板注册到 CAD 系统的侧边栏中。 注册后面板会出现在指定位置的活动栏中。

      Parameters

      Returns boolean

      是否注册成功

      如果面板名称已存在

      const success = SidebarPanelManager.getInstance().registerPanel({
      name: "analysis",
      label: "分析工具",
      icon: "./images/actbar/analysis.svg",
      position: "right",
      panelClass: AnalysisPanel,
      order: 50
      });
    • 注销侧边栏面板

      从侧边栏中移除已注册的面板。

      Parameters

      • name: string

        面板名称

      Returns boolean

      是否注销成功

      SidebarPanelManager.getInstance().unregisterPanel("my-panel");
      
    • 激活指定面板

      使指定的面板成为当前显示的面板。

      Parameters

      • name: string

        面板名称

      Returns boolean

      是否激活成功

      SidebarPanelManager.getInstance().activatePanel("my-panel");
      
    • 获取已注册面板列表

      Returns string[]

      已注册面板名称数组

      const panels = SidebarPanelManager.getInstance().getRegisteredPanels();
      console.log("已注册面板:", panels);
    • 检查面板是否已注册

      Parameters

      • name: string

        面板名称

      Returns boolean

      是否已注册

    • 获取面板实例

      Parameters

      • name: string

        面板名称

      Returns any

      面板实例,如果未注册则返回 undefined