Skip to content

Customize Menu/Dialog/Window #6

@zhzLuke96

Description

@zhzLuke96
  • Customize ContextMenu: Provide interfaces to customize all context menus in the graph
  • Customize Dialog: Provide interfaces to customize all dialogs in the graph

主要是默认的 menu 缺少必要的接口难以拓展,并且带有独立的 css 也不方便部署

TODOs

  • 内核释放所有 menu/dialog 中独立的 api 接口
  • 拆分 menu/dialog 逻辑,以外部拓展形式提供
  • 应该所有非 canvas 部分都不应该包含在 core 中,全部移除 core

最后大概的效果:

import { LiteGraph, LGraph, LGraphCanvas } from "@litegraph-ts/core"
import { LGraphMenu, LGraphDialog, LGraphWindow, LGraphUI } from "@litegraph-ts/ui-ext"

const root = document.getElementById("main") as HTMLDivElement;
const canvas = root.querySelector<HTMLCanvasElement>(".graphCanvas");

const graph = new LGraph();
const graphCanvas = new LGraphCanvas(canvas, graph);

const ui = new LGraphUI(canvas, graph, { menu: new LGraphMenu(), dialog: new LGraphDialog(), window: new LGraphWindow() });

Metadata

Metadata

Assignees

No one assigned

    Labels

    FRfeature request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions