Vladimir
что имено с ивентлупом не так?
Anton
я все таки больше прикладник, у меня пробелм не возникает с архитектурой верхнего уровня, и тд
Anton
а вот в кишках не знаю чо
Vladimir
так что тебе с ивентлупом не понятно?
Vladimir
крутится цикл, в нем обрабатывается очередь энамов и дергаются разные методы
Anton
не в этом проблема
Anton
точнее не только
Anton
во первых у меня получается уже есть один тред с эвентами - собсно базовыми эвентами оболочки, аля клик по координате и тд
Anton
и мне нужен также и другой эвентлуп, который будет уже работать с конечными эвентами где конкретно сказано "я кликнул на кнопку ID-1"
Anton
и я не понимаю как из базвоых событий сначала получить огранизовано позиции компонентов, относительно текущего ивента, и после обработки послать его в очередь в другом треде конечных компонентов
Anton
как сгрупировать компоненты по подписям, их анулирование и тд
Vladimir
че за подписи
Anton
плюс организация работы с позиционными эвентами, вроде "если на этом участке где мышка сделать скролл мышкой - нужно пролистать вниз и получить эвент, и оптравить его другим компонентам тоже"
Anton
подписки
Anton
не подписи
Anton
грубо говоря все элементы будут регистрироватся и подписыватся на эвентлуп так или иначе, и на каждый из элементов будет своя очередь колбэков которые должны реагировать, и если я напимер удаляю компонент - соответственно все подписки нужно анулировать
Anton
также я не знаю как их хранить, как хранить компоненты, забирать из колбэжк подписки и тд
Anton
на данном этапе своих знаний я могу сделать максимум страницу без скролла которая будет из глобального скоупа элементов брать выборку с постоянным временем жизни колбэков
Anton
положим у меня есть массив с объектами виджетов
Anton
и для них есть подписки, как их хранить? Внутри каждого инстанса? Или в неком эвент контексте?
Anton
И если внутри виджетов, то как тогда динамично удалять эти подписки? Как идентифицировать и обновлять области позиционирования виджетов и тд
Anton
также вот например у меня будет библиотека для анимаций, которая например будет абсолютно позиционируемо сдвигать виджеты, и вот как это в ивентлупе обрабатывать? Как менять позиционирования и тд
Anton
у меня прям каша в голове
Anton
плюс я смотрю на экземплы вебрендера и все становится еще мутнее
Vladimir
ну у тебя должен быть массив тех люъектов которые "подписаны на событие" например сортированный по зиндекусу
Anton
Мда
Anton
ну вообще по идее, с частью проблем сам вебрендер справляется
Anton
возможно в чем то я сильно себя накручиваю
Anton
ибо например можно узнать позиционирование по фрейм контексту
Anton
но в остальном у меня еще немного каша
Anton
в течении пары дней я постараюсь конечно и мои технические идеи и творения высрать в нормальную доку
Anton
но пока я чуть чуть в ахуе, во многом потому что не представляю как организовать некоторые вещи с растом, тоесть я подозреваю как, но не уверен что когда дело дойдет до реализации все окажется так как я ожидаю
Anton
а вообще буду пиздить у всех идеи как организовать работу с виджетами))
Anton
а потом просто добавлю стилизацию и хелперы
Anton
(для первой версии сойдет)
Loo
[ 127.224405] gnome-control-c[4726]: segfault at 0 ip 00007f144ad29ca7 sp 00007ffe59b29870 error 4 in libnm.so.0.1.0[7f144acdc000+de000]
Loo
Andrei
это при том, что 99% функциональности гнома (и freedesktop.org) можно вообще на чём угодно реализовать, включая haskell/OCaml
Andrei
но ковбои-пидорасы выбирают иллюзию контроля и быстродействия
Маjко
Я открою тебе секрет
Маjко
Но 99 процентов любой системы можно на чем угодно реализовать
Andrei
это понятно
Маjко
Но что ковбои — пидорасы, эт да
Andrei
особенно когда систему не надо впоследствии дорабатывать
Маjко
Вообще там были потуги сделать свой сисярп на гобжекте
Маjко
Но оно сдохло
Евгений
Проблема гнума не в сишечке, а в семи слоях абстракции
Маjко
В чем проблема абстракций?
Маjко
Ты пишешь без трейтов?
Aleksey
Блин посмотрите как в qml все сделали, он вполне себе хорош архитектурно.
Aleksey
Точнее на его часть под названием SceneGraph
Евгений
Трейты это зеро-кост абстракция. А нагромождение из glib/gobject/{cairo,pango}/gtk/чо-там-сверху это смешно
Andrei
но ковбои-пидорасы выбирают иллюзию контроля и быстродействия
«а вдруг GC в этом твоём хаскеле колом встанет?» и ехидненько так поглядывает. Контекст, отметим — gnome control center или ещё какой network manager.
Aleksey
"фу, там же джаваскрипт" (с)
SceneGraph на котором все вертится на плюсах
Vladimir
фу там же плюсы
Andrei
Трейты это зеро-кост абстракция. А нагромождение из glib/gobject/{cairo,pango}/gtk/чо-там-сверху это смешно
меня руками в шейдеры или вулкан пердолькаться как-то не улыбает
Aleksey
фу там же плюсы
Ну так поправить ошибки компиляции всего то
Andrei
так что такие абстракции надо
Andrei
Ну так поправить ошибки компиляции всего то
с плюсами этого недостаточно :)
Маjко
или в сисколлы, во
Да так то там 7 слоев абстракций слинкованы, там побыстрее сисколлов
Vladimir
или в сисколлы, во
как это не улыбает, всех улыбает, у тебя просто сисколов нормальных не было
Andrei
должно быть
Vladimir
в винде
Маjко
Гонишь
Маjко
Хорошие только в арче
Маjко
А в убунте — говно
Loo
Маjко
Aleksey
Я бы кстати не забывал про инпут, нужно клавишы обрабатывать, мышку и прочие пальцы