Group Editor
menu.controller.selector.selectGroup is linked to group.controller.selectGroup
local instance = require("components.editor.group.controller.selectGroup")
classDiagram commands o-- selectLayer commands o-- selectGroup selectors ..> store selectGroup --> _selectGroup class _selectGroup{ <<Controller>> decodede = util.read layersbox store.set(decodede) layersTable store.set(decoded) return instance.new() } class add{ <<Controller>> layersbox:set(decodede) layersTable:set(decoded) } class remove{ <<Controller>> layersbox:set(decodede) layersTable:set(decoded) } class editorGroup { + groupTable as selectbox + controlbox + buttons + layersbox + groupTable } class groupTable { + groups oncllick() } class layersbox { + layers setValue() override } layersbox <|.. targetbox layersbox <|.. targetboxMulti targetboxMulti --> util class targetboxMulti{ commandHandler() override } class util { + setSelection() } class layersTable { + layers scrollView = widget.newDragItemsScrollView() } class dragitemscrollview{ <<ext>> } layersTable --> dragitemscrollview layersTable --> util groupTable ..> BTree editorGroup *-- groupTable editorGroup *.. layersbox editorGroup *.. layersTable editorGroup o.. add editorGroup o.. remove editorGroup o.. _selectGroup groupTable <|.. baseTable editorGroup *-- conrolbox conrolbox <|.. baseProps BTree ..> commands commands ..> selectGroup _selectGroup ..> layersbox _selectGroup ..> layersTable store ..> baseTable class selectGroup{ require(group.controller.selectGroup) }