
QuickTool — це кастомне вікно з власним
shelfLayout, яке працює як міні-shelf усередині Maya.
Інструмент дозволяє користувачу вільно формувати набір інструментів через drag & drop і автоматично зберігає конфігурацію у файлshelf.mel.
Фактично це портативний shelf, який не прив’язаний до глобальних shelf Maya і може бути частиною пайплайн-інструменту.
Користувач може:
QuickTool поводиться як звичайний shelfLayout, тому:
Інструмент відстежує зміни shelfLayout у реальному часі:
Зберігаються:
Збереження відбувається у файл: shelf.mel який лежить поруч із main.py.
Файл перезаписується автоматично при будь-якій зміні, без залежності від закриття вікна.
При відкритті QuickTool:
shelf.melТаким чином інструмент завжди відкривається у стані останньої конфігурації.
Оскільки Maya не має надійної події “Shelf Modified”, використовується внутрішній watcher:
scriptJob + idleEventshelf.melЦе гарантує стабільність навіть якщо:
Шлях до shelf.mel визначається автоматично від розташування скрипта:
quick_tool/
├── main.py
└── shelf.mel
Інструмент працює навіть якщо запускається через:
compile(code_text, path, "exec")
(де __file__ недоступний)
QuickTool зручно використовувати як:
QuickTool — це:
динамічний, автозберігаємий, портативний shelf, який використовує нативний UI Maya і не потребує окремого редакто