635просмотров
70.6%от подписчиков
19 февраля 2026 г.
📷 ФотоScore: 699
Размер шрифтов, скругление кнопочек, цвета - всё это для меня прям важно. Кстати, именно из-за недоработанного дизайна я не мог долго перейти в Reaper. Я видел, как мои коллеги кайфуют от работы в Reaper, но пока не нашел для себя подходящий интерфейс, я не смог занырнуть в Reaper. Кстати, я могу в электронном ридере долго подбирать шрифтики, прежде чем начну читать с кайфом. Мой любимый для чтения, кстати, Droid Serif или Merriweather из литреса. Когда я создавал свои расширения для Reaper (недавно публиковал плагин для подписей к видео), я использовал стандартный доступный способ (ReaImGui). И вот я психанул и сделал для себя конструктор интерфейсов: ReaImGui Constructor В конструкторе я настраиваю формат всех блоков и затем собираю в модуле Theme. Его просто копирую из конструктора в свой скрипт Lua. Модуль пушит цвета/скругления/шрифты в начале кадра (Theme.push(ctx)), а в конце аккуратно снимает обратно (Theme.pop(ctx)). Благодаря этому UI можно перекрасить (настроить в генераторе и закинуть обратно в скрипт) за 2 минуты, не трогая логику скрипта. Внутри кода я обращаюсь не к r.ImGui_ напрямую, а к оберткам Theme.. Например, секции делаю так:
if Theme.CollapsingHeader(ctx,"Style",r.ImGui_TreeNodeFlags_DefaultOpen()) Допускаю, что способ не идеальный, но зато посмотрите, как красиво выглядит дизайн моего скрипта (слева), а справа - стандартный (мой скрипт со старым дизайном). Возможно, стоит в будущем сделать какую-то удобную тему и использовать её везде, но пока я просто балуюсь и меняю настройки.