Re: Выбор GUI

2021-04-28 Пенетрантность Hleb Valoshka
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

2021-04-26 Пенетрантность D. H.
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

2021-04-25 Пенетрантность Hleb Valoshka
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

2021-04-24 Пенетрантность Hleb Valoshka
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

2021-04-24 Пенетрантность Konstantin Fadeyev
Может быть - 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

2021-04-24 Пенетрантность Hleb Valoshka
Привет!

Кто-нибудь тут занимается разработкой десктопных програм с 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/