Builtin Library
- ..
- README.md1.9 KB
- app.module
- cmdPalette.module
- confirmDialog.module
- editorLayout.assetType
- editorPanel.assetType
- edui.guide
- fileDialog.module
- framework.module
- glossary
- inspector.module
- layouts
- locales
- markdown.module
- package.yaml395 B
- panels
- presence.module
- query.module
- sceneInfo.module
- shell.module
- shown.module
- stats.module
- topbar.module
- widgets.module
- worldDialog.module
- zeromindRepository.module
README.md
edui
The editor UI framework, on the CSS-parity ui.* surface. An editor-only
toolkit: panels author closures instead of callback ids, a dock shell over
ui.* native docking, and typed editor-chrome primitives. Gameplay and normal
world UI author raw ui.* trees and need none of this.
edui.guide beside this file is how to use it — creating a panel, the spec
it returns, how a panel is drawn and redrawn, the whole widget vocabulary, and
how a panel reaches the selection and the dock.
What installs
framework— everything under one table. From outside the package,require("@builtin::~edui.framework"); inside it,require("~.framework"). It carriesapp,widgets,shell,topbar,query,fileDialog,worldDialog,stats, and the chrome primitives flat (panel,tree,field,section,text,button,menu, …).app— maps a panel's closures toui.*callback ids, dispatches to them, and coalesces redraws.widgets— the primitives, plus the typed inspector layer (widgets.tree,widgets.fields,widgets.controls).inspector— the Inspector as an ordered list of sections: the generic asset sections, the Settings section and its actions, and the merge with the sections a type'sinspector.luaudeclares (inspector.assetSections,inspector.settingsSection), and the building blocks those sections compose (inspector.parts, reached asctx.parts).shell— the dock: oneui.*dockAreaholding adockPanelper registered panel, and the panel registry behind it.
Referencing
- Inside this package, modules reference siblings with
~.— e.g.require("~.app"),require("~.widgets.fields"). - Editor content built on the framework references it by package identity —
require("~edui.framework"),require("~edui.shell").