搜索插件、代码仓与 APP 分类

panels 封面
插件详情v0.0.3

panels

Panels 是一个 Flutter 包,旨在提供一组有用的桌面 UI 面板,这些面板可以像我们期望的更强大的桌面应用程序一样移动、停靠和分组。

近 30 天下载
17
喜欢数
34
Pub 分数
60

安装插件

flutter pub add panels

插件介绍

基于插件公开信息、社区数据与项目使用情况整理的选型参考。

Panels 是一个 Flutter 包,旨在通过可拖动、可停靠和可标签化的 UI 面板来增强桌面应用程序的界面。受强大桌面环境的启发,它允许用户动态组织内容——自由移动面板、将其吸附到边缘,或将其分组为标签页。非常适合需要灵活布局的复杂工作流程,该包在不牺牲性能的前提下支持直观的交互。它可无缝集成到现有的 Flutter 项目中,并专注于跨桌面平台的可用性和响应性。

适合场景

  • 桌面应用程序仪表板
  • 多面板数据可视化
  • 可定制的开发者工具
  • 交互式设计工作区
  • 复杂的文档编辑界面

主要特点

  • 可拖动面板移动
  • 停靠到屏幕边缘
  • 标签面板分组
  • 响应式布局处理
  • 与现有 Flutter 应用的轻松集成

适合对象

  • 开发桌面优先的 Flutter 应用程序的开发者
  • 需要灵活 UI 布局的设计师
  • 需要多窗口行为的应用程序
  • 动态工作区需求的工具
  • 针对 Windows、macOS 和 Linux 的项目

使用建议

  • 主要用于桌面端
  • 有限的移动平台支持
  • 复杂布局需要仔细的状态管理
  • 可能需要自定义样式以保持品牌一致性
  • 最适合用于具有显著UI复杂性的应用程序

原始 README

以下为关联源码仓库的 README 原文快照,最新内容请访问源码仓库。

Warning: Beta

Panels

Pub Version (including pre-releases)

Panels is a flutter package that aims to provide a set of useful desktop UI panels that can move around, dock and tab like we expect in more robust desktop applications.

Features

  • [x] Draggable Panels
  • [x] Resizable Panels
  • [x] Correct Mosue Cursor
  • [x] Tabs in Panels
  • [ ] Make all Panels dockable into each other
  • [ ] Custom panel themes
    • [x] Customizable close button
    • [x] Customizable context menu
    • [ ] Customizable tabs
    • [x] Customizable frame
    • [ ] Customizable top bar

Demo

ezgif com-gif-maker

Default Theme

ThemeData.light() ThemeData.dark()
image image

FrostedPanelsTheme

ThemeData.light() ThemeData.dark()
image image

Under the hood

There are 10 Mouse Regions and listeners (All sides and corners + The big one in the middle + the draggable) that change the look of the mouse according to their function. Windows can be clicked on in any of these regions to become selected (put on top).

ezgif com-gif-maker (1)

There is an InheritedWidget called Panels which is created by a StatefulWidget called PanelsManager. The children of the panels manager are put into a stack.

Please see the examples directory for an example.

所属分类

源码仓库

使用此插件的项目

暂无相关数据。