Re: Выбор GUI
On 4/27/21, D. H. wrote: >> Создаём окно, добавляем менюшки, QOpenGLWidget. Запускаем, переводим >> окно в полноэкранный режим - менюшки не отображаются. Баг известен со >> времён 5.4, когда добавили QOpenGLWidget. Когда будет исправлен - >> непонятно, обходной путь, растянуть окно на весь экран и убрать >> границы, не всегда работает, у нас не работал. Продолжаем пользоваться >> устаревшим QGLWidget. А он не умеет в GL ES, если Qt собран с >> десктопным GL. Под Wayland-ом тоже с ним проблемы, сам не пробовал, но >> пользователи сообщали. Под офтопиком почему-то FPS значительно ниже по >> сравнению с native windows версией. > > Выложи куда код, я гляну как будет время. Можно не весь если закрытый > код. С GL не работал, но попробую помочь чем могу. https://github.com/CelestiaProject/Celestia (морда на Qt лежит в src/celestia/qt, для сборки нужен cmake, все нужные пакеты описаны в INSTALL.md) Вот тут https://github.com/CelestiaProject/Celestia/commit/2f7adf19d047c9fa2e9700d91fd2bf08dec09dde пытались переехать на QOpenGLWidget -- Celestia real-time space simulator: * https://celestia.space * https://github.com/CelestiaProject Forum: * https://celestia.space/forum/
Re: Выбор GUI
On 2021-04-25 4:34 a.m., Hleb Valoshka wrote: > Создаём окно, добавляем менюшки, QOpenGLWidget. Запускаем, переводим > окно в полноэкранный режим - менюшки не отображаются. Баг известен со > времён 5.4, когда добавили QOpenGLWidget. Когда будет исправлен - > непонятно, обходной путь, растянуть окно на весь экран и убрать > границы, не всегда работает, у нас не работал. Продолжаем пользоваться > устаревшим QGLWidget. А он не умеет в GL ES, если Qt собран с > десктопным GL. Под Wayland-ом тоже с ним проблемы, сам не пробовал, но > пользователи сообщали. Под офтопиком почему-то FPS значительно ниже по > сравнению с native windows версией. Выложи куда код, я гляну как будет время. Можно не весь если закрытый код. С GL не работал, но попробую помочь чем могу.
Re: Выбор GUI
On 4/25/21, D. H. wrote: >> Qt мог бы быть наилучшим выбором, но ситуация с поддержкой LTS-ветки >> удручает. Есть довольно критичные баги, которые не исправляются со >> времён 4-й версии. > > Лучшим выбором он и остаётся. Баги эти на бумаге вероятнее всего с > простым интерфейсам тебя и твоих пользователей не коснуться никогда. Создаём окно, добавляем менюшки, QOpenGLWidget. Запускаем, переводим окно в полноэкранный режим - менюшки не отображаются. Баг известен со времён 5.4, когда добавили QOpenGLWidget. Когда будет исправлен - непонятно, обходной путь, растянуть окно на весь экран и убрать границы, не всегда работает, у нас не работал. Продолжаем пользоваться устаревшим QGLWidget. А он не умеет в GL ES, если Qt собран с десктопным GL. Под Wayland-ом тоже с ним проблемы, сам не пробовал, но пользователи сообщали. Под офтопиком почему-то FPS значительно ниже по сравнению с native windows версией. -- Celestia real-time space simulator: * https://celestia.space * https://github.com/CelestiaProject Forum: * https://celestia.space/forum/
Re: Выбор GUI
On 4/24/21, Konstantin Fadeyev wrote: > Может быть - https://www.enlightenment.org/about-efl Так оно уже в списке: >> Elementary. Непонятно пока насчёт высокого DPI, OpenGL и упаковки. >> Есть опасность, что может быть ориентирован на пальцетыкальные >> интерфейсы (в истории успеха холодильники и т.п.). -- Celestia real-time space simulator: * https://celestia.space * https://github.com/CelestiaProject Forum: * https://celestia.space/forum/
Re: Выбор GUI
Может быть - https://www.enlightenment.org/about-efl сб, 24 апр. 2021 г. в 14:07, Hleb Valoshka <375...@gmail.com>: > Привет! > > Кто-нибудь тут занимается разработкой десктопных програм с GUI? На чём > имеет смысл начинать разработку довольно несложного интерфейса? > Желательно библиотеки с поддержкой C++, кроссплатформенность > необязательна, но обязательна возможность работы с OpenGL и поддержка > высоких DPI. > > Qt мог бы быть наилучшим выбором, но ситуация с поддержкой LTS-ветки > удручает. Есть довольно критичные баги, которые не исправляются со > времён 4-й версии. Пытаются предоставить свою альтернативу > существующим решениям, из-за чего в коде полно вещей типа > QString::fromStdString qsting.toStdString(). Документация обещает > проблемы с перерисовкой если не использовать существующие виджеты для > OpenGL, а просто создать контекст используя область рисования. На > альтернативные системы надо тащить кучу библиотек. > > Из Gtk скоро выкинут всё. Из 4-й версии выкинули даже тулбар. До Qt по > количеству вижетов совершенно не дотягивает, да даже до WinAPI. Из-за > ориентации на пальцетыкальные интерфейсы на десктопах выглядит ужасно. > API не продумывается, постоянно что-то устаревает и заменяется чем-то > новых. Последняя проблема актуальна в том числе и для gtkmm (обёртки > на C++). Большой плюс - упаковка виджетов вместо расстановки по > координатной сетке, но и последняя тоже поддерживается. > > wxWidgets. Обёртка над вышеперечисленными, а также есть вариант с > Xlib, но в этом варианте мало виджетов. В стабильной версии нет > поддержки высоких DPI. Иструменты для визуального проектирования либо > не поддерживают всех возможностей, либо не умеют в создание > XML-описания, либо генерируют некорректный код. Если собран с Gtk 3, > то выглядит так же паршиво. Опять же свои реализации вместо некоторых > стандартных (wxString, например). > > Со следующими не работал вообще, бегло посмотрел сайт. > > Fox. Нет поддержки высоких DPI. Свои реализации стандартных вещей. Не > понял пока как реализована расстановка виджетов в окне: упаковываются > как в Gtk или по координатной сетке. > > fltk. Нет поддержки высоких DPI в стабильной версии. Древний C++. Нет > упаковки, размеры виджетов нужно задавать явно. > > Elementary. Непонятно пока насчёт высокого DPI, OpenGL и упаковки. > Есть опасность, что может быть ориентирован на пальцетыкальные > интерфейсы (в истории успеха холодильники и т.п.). > > Есть ли жизнь с десктопным GUI в 2021 году? Можно ли выбрать хоть > что-то, что не сломается через два года? > > -- > Celestia real-time space simulator: > * https://celestia.space > * https://github.com/CelestiaProject > > Forum: > * https://celestia.space/forum/ > -- Константин Фадеев
Выбор GUI
Привет! Кто-нибудь тут занимается разработкой десктопных програм с GUI? На чём имеет смысл начинать разработку довольно несложного интерфейса? Желательно библиотеки с поддержкой C++, кроссплатформенность необязательна, но обязательна возможность работы с OpenGL и поддержка высоких DPI. Qt мог бы быть наилучшим выбором, но ситуация с поддержкой LTS-ветки удручает. Есть довольно критичные баги, которые не исправляются со времён 4-й версии. Пытаются предоставить свою альтернативу существующим решениям, из-за чего в коде полно вещей типа QString::fromStdString qsting.toStdString(). Документация обещает проблемы с перерисовкой если не использовать существующие виджеты для OpenGL, а просто создать контекст используя область рисования. На альтернативные системы надо тащить кучу библиотек. Из Gtk скоро выкинут всё. Из 4-й версии выкинули даже тулбар. До Qt по количеству вижетов совершенно не дотягивает, да даже до WinAPI. Из-за ориентации на пальцетыкальные интерфейсы на десктопах выглядит ужасно. API не продумывается, постоянно что-то устаревает и заменяется чем-то новых. Последняя проблема актуальна в том числе и для gtkmm (обёртки на C++). Большой плюс - упаковка виджетов вместо расстановки по координатной сетке, но и последняя тоже поддерживается. wxWidgets. Обёртка над вышеперечисленными, а также есть вариант с Xlib, но в этом варианте мало виджетов. В стабильной версии нет поддержки высоких DPI. Иструменты для визуального проектирования либо не поддерживают всех возможностей, либо не умеют в создание XML-описания, либо генерируют некорректный код. Если собран с Gtk 3, то выглядит так же паршиво. Опять же свои реализации вместо некоторых стандартных (wxString, например). Со следующими не работал вообще, бегло посмотрел сайт. Fox. Нет поддержки высоких DPI. Свои реализации стандартных вещей. Не понял пока как реализована расстановка виджетов в окне: упаковываются как в Gtk или по координатной сетке. fltk. Нет поддержки высоких DPI в стабильной версии. Древний C++. Нет упаковки, размеры виджетов нужно задавать явно. Elementary. Непонятно пока насчёт высокого DPI, OpenGL и упаковки. Есть опасность, что может быть ориентирован на пальцетыкальные интерфейсы (в истории успеха холодильники и т.п.). Есть ли жизнь с десктопным GUI в 2021 году? Можно ли выбрать хоть что-то, что не сломается через два года? -- Celestia real-time space simulator: * https://celestia.space * https://github.com/CelestiaProject Forum: * https://celestia.space/forum/