tolyui_menu 0.1.0 copy "tolyui_menu: ^0.1.0" to clipboard
tolyui_menu: ^0.1.0 copied to clipboard

面向 Flutter 桌面与 Web 的菜单组件,支持下拉、级联、上下文和菜单栏场景。

tolyui_menu #

tolyui_menu 是面向 Flutter 桌面与 Web 的独立菜单包,覆盖普通下拉菜单、级联菜单、上下文菜单和顶部菜单栏。

toly_menu 已迁移为 tolyui_menu,所有 TolyMenu* Dart API 保持不变。新项目应使用:

dependencies:
  tolyui_menu: ^0.1.0

第一版采用单 Overlay 和单 TolyMenuController 管理整条菜单路径,避免每一级菜单独立创建浮层造成的关闭竞态和点击区域分裂。

TolyMenuAnchor(
  entries: <TolyMenuEntry>[
    TolyMenuItem(
      id: 'export',
      label: '导出',
      children: <TolyMenuEntry>[
        TolyMenuItem(
          id: 'json',
          label: 'JSON',
          shortcut: 'Ctrl+E',
          onSelected: exportJson,
        ),
      ],
    ),
  ],
  builder: (BuildContext context, TolyMenuController controller) {
    return const Text('文件');
  },
)

当前能力:

  • 任意深度的菜单树与同级互斥展开。
  • 单一控制器统一打开、关闭和活动路径。
  • 禁用项、分隔线、图标、尾缀、快捷键和勾选状态。
  • 鼠标悬浮展开与点击外部整组关闭。
  • 上下、左右、Enter、Space 和 Esc 键盘操作。
  • TolyMenuAnchorTolyMenuBar 两种入口。
  • 亮色、暗色及 ThemeExtension 自定义主题。
0
likes
130
points
72
downloads

Documentation

API reference

Publisher

unverified uploader

Weekly Downloads

面向 Flutter 桌面与 Web 的菜单组件,支持下拉、级联、上下文和菜单栏场景。

Homepage
Repository (GitHub)
View/report issues

License

Apache-2.0 (license)

Dependencies

flutter

More

Packages that depend on tolyui_menu