Anonymous 03/31/2021 (Wed) 18:42:04 No.9816 del
(352.31 KB 1380x880 out.webm)
Вот, видите как чудно лейауты в ГУИ себя ведут? Я сказал библиотеке, пусть правый виджет (это бокс с vert layout) находится на N пикселей от правого края родителя к правому краю виджета и теперь когда ввожу в лайнэдит (я его тока сегодня начал делать) текст, он выходит, но виджет меня продолжает слушаться. Они всегда слушаются, пока у них достаточно пространства.
Для самого лайнэдита/текстэдита надо будет устроить рендеринг во внутреннюю зону, но для этого мне надо ввести в свой графический движок рендеринг в текстуры в большой глубине рекурсии. А то недавно я попытался отрендерить в текстуру внутри другой рендеримой текстуры и понял, у меня же опенгловские фреймбуфферы не FILO! Вместо этого в конце просто берётся нулевой фреймбуффер, который является оконным. Надо будет переделать кое-что...

Видео это я решил в кои-то веки ГУИшную программу себе написать (хоть Лайси пока и не готов, но переписывать код легче, чем придумывать). А вообще, давно пора переходить на самописное графическое ПО.
Вот я использую арчлинукс и у меня с почти каждым обновлением что-то ломается! Это дистрибутив для людей, которые готовы в голове держать все ченджлоги и пакеты. А я так не хочу, я хочу чтобы ОСью можно было легко и удобно пользоваться.
По-моему хорошее DE+оконная система это виджет, внутри которого другие виджеты. В идеале вообще, чтоб был изначальный виджет моей DE на моей ГУИ-библиотеке, описанный моим ГУИ-ML и он мог запускать другие такие же виджеты, у которых отдельно подвязан код с коллбеками (когда кнопку жму) и отдельными потоками (когда надо что-то высчитывать отдельно от пользователя). В межпроцессорное взаимодействие надо заделать через сокеты (или что-то другое) и дополнительные минивиджеты, с помощью которых направлять потоки данных между программами. Например, хочу я описать 3D-модельку питонокодом и автоматические подгружать её в блендер. Надо чтобы был виджет от эмулятора терминала, позволяющий читать из stdout и виджет внутри блендера (плагином реализовать?) к мешу. Соединяешь графической ниточкой виджеты и происходит обмен данными. Изменяю питоно-код, перезапускаю и меняются вертексы на модельке. Прекрасно же!
Но в любом случае придётся хандлить уже готовые программы, использующие иксы и SDL2. Как это сделать кроме подмены библиотеки я не знаю. Можно взять линковщик, посмотреть, а не запускает ли бинарник икслиб и если да, то подменить на свой эмулятор икслиб, который соеденится с сервером моей оконной системы или что-то такое.