MujicaUI

Files & Collaboration · #381

FileExplorer 浅色主题渲染快照
浅色 · 渲染快照
FileExplorer 深色主题渲染快照
深色 · 渲染快照

FileExplorer

用途

组合文件夹树、文件列表、导航历史与多选。

最小示例

var state files.FileExplorerState
opts := files.FileExplorerOptions{
	Roots:   []string{"/court"},
	Folders: func(string) []string { return nil },
	Entries: func(string) []files.FileEntry {
		return []files.FileEntry{{Path: "/court/seal.go", Name: "seal.go", Size: 1024}}
	},
}
view := func(c *ui.Context) {
	core.Use(c, core.Settings{})
	files.FileExplorer(c, &state, opts).Element.Height(240)
}
ui.Render(view, 600, 300, 1)

参数

Roots、Folders、Entries 必填;Disabled 默认 false;Revision 用于原地更新条目。

状态

默认、焦点、禁用;空数据按组件内容展示。

事件

Navigated、Changed、Opened 返回本帧导航、选择和打开。

键盘操作

Tab 切换;方向键选择;Enter 打开;macOS Command+[ / ] / ↑,其他平台 Alt+← / → / ↑。

限制

文件及目录由调用方提供,读取与打开由调用方执行。条目 Path 必须唯一且非空;切片地址、长度或 Revision 变化时重建索引并清理已删除的选择。