Anton
И писали его инженеры адовых уровней, один я такое не осилю
Anton
Тоесть просто многострочный текст и лейблы и текстинпуты я сделаю без особых проблем
Anton
Тут я приноровился
Sergey
Надо поискать хотя бы логические расчеты
Sergey
Мне тоже интересно стало
Anton
Но к примеру что если кто то захочет текст в маркдауне, или чтото типо текста статьи где в тексте нужны и курсивы, и подчеркивания и тд, и все это плавно и с нормальным расположением? А для гуй тулкита это почти мастхэв
Sergey
Anton
Надо поискать хотя бы логические расчеты
Битуешь текст буферы, в них считаешь заранее все глифы и их размеры и тд, потом линейно складываешь, с учетом врапов и тд, потом пишешь магию вычисляющую позицию каждого глифа
Anton
Но ни гайдов, ни инфы как это сделать архитектурно и тд нету
Sergey
Anton
Короче жопа
Anton
Я думал есть готовые лайауты, которым кормишь текст, контейнер с его размерами, и шрифт, а он отдает массив глифов с позициями и индексами
Anton
Но такого нет
Anton
А писать самому это ад, и месяцы ресерчей
Stanislav
Stanislav
даже в Qt такого нет
Anton
Пока что будет пизженныц простой лайаут текста, но его один хуй недостаточно со временем станет, причем очень скоро
Anton
Stanislav
Anton
В qt тоже есть, но там он даже адовее gtk, и вменяемый ток на qml
Anton
я на gtk писал читалку
Anton
которая все и стили и тд успешно отображала
Anton
включая переносы текста
Anton
это была жопа, адовая
Anton
с одной стороны - от гуи тулкита не нужны прям текст вью
Anton
и если таки текст многострочный он обычно одной стилистики
Stanislav
я думал о том как фейсбуковскую йогу встроить в кути, но жопа, там лайоуты внедрены по самоу небалуйся
Anton
но опять же, одновременно и с этим если это банально будет какая нибудь прога "рецепты от бабули" и там будут и списки и тд, и ктото захочет чтоб например маркдаун или html теги для стилизации кусков текста были
Anton
а этого нету
Anton
это будет фэйл для меня
Anton
Anton
qml это как на той пикче
Anton
когда сверху прелестная русталка
Anton
а снизу 50 метровых монстр под водой
Stanislav
ну а что нормального кроме Qt есть? я хз, у гтк какие то дикие проблемы с виндой
Anton
harfbuzz?
нет, то что может харфбаз умеет и мой текущий лайаут
Anton
он работает с чистым текстом и его позиционированием отдавая карту глифов
Stanislav
Anton
на который отдельно уже на свое усмотрение человек выбирает стили и тд
Anton
а вот полноценный текст лайаут сделать где раздельно можно вставлять стили для кусков текста и тд
Anton
вот это поистине ад, с которым как доделаю первые версии придется как то справляться
Anton
в идеале бы конечно сделать чтото как сделано в React Native, там крайне прятная внешняя оболочка для работы с текстом
Anton
но там тоже творится адовейшая магия которая кастомится под каждую платформу отдельно
Anton
и делали ее годы за кучи денег
Stanislav
Anton
ну грубо говоря с тем что у меня есть - я если например стану писать свой клиент телеграмма
Anton
то я смогу отобразить весь текст и стили
Anton
ибо они все раздельные почти, текст, имена юзеров, чаты и тд
Anton
но например если я захочу сделать ссылкой-кнопкой места где будут упомянуты никнеймы через @ в чате - я не смогу ни назначить стили, ни эвенты повесить
Anton
также я не смогу чтобы он отображал места где в тексте html
Stanislav
Stanislav
ибо оригинальный tdesktop это жесть
Anton
Anton
у меня есть antialiasing шрифтов
Anton
:D
Anton
на этом ништяки с текстом заканчиваются
Anton
впрочем даже текст у меня через жопу магический, играюсь с трейтами и и имплеменатциями раздельными полу-успешно
Stanislav
на чем пишешь то, и для кого )
Stanislav
Anton
даже не хочу))))
Anton
ну а так, я сейчас заканчиваю core drawer систему, тобишь чисто рисовка, дерево, работа с элементами и эвенты в одном флаконе
Anton
потом буду отдельно писать под это дело контекст верхнего уровня который этим будет управлять и позволять разбивать на самодостаточные куски со стейтами
Anton
и навигатор
Anton
и потом можно уже будет посмотреть сойдет или нет
Stanislav
Anton
впрочем если бы я был как фейсбучники которым платят, или хотябы я писал не один может быть было бы и быстрее и краще, но это слишком жирно и вообще хуй будет, ибо в раст комьюнити контрибуторы это дело редкое
Anton
Anton
https://github.com/friktor/quick-tk
Anton
Глянуть можно тут
Anton
даже собрать и посмотреть
Sergey
Anton
Anton
Вот свежий скриншот, макет верстал под него еще неделю назад, за 5 минут в сотню строк
Stanislav