LINUX.ORG.RU

История изменений

Исправление EXL, (текущая версия) :

Только вот @EXL то бугуртит именно с линковки с -lgl ;)

Не, я именно бугурчу от того, что QtGui завязан на OpenGL. То бишь без GL-хедеров и либы даже собрать ничего не получится. И при использовании того же XCB-backend’а ты обязательно зависел от OpenGL, хотя в приложении оно никак не использовалось. Пять-семь лет назад (посты как раз той давности по моим ссылкам) это было актуально, особенно учитывая что в Qt 4 такого прикола не было. В Windows, кстати, аналогичная ситуация при использовании GDI-backend’а была.

Ну вот в чём соглашусь, так это в том, что классы QOpenGL* имеют крайне опосредованное отношение к гуям.

Это чисто архитектурная проблема Qt 5, на которую я и жаловался раньше. Ну не должен Gui-модуль завязываться на какое-то определённое API, будь то XCB, OpenGL, Vulkan и т. д. В Qt 4 была завязка на XCB в QtGui (там QtGui включал в себя QtWidgets), а в Qt 5 – взяли и зачем-то завязались на OpenGL{ES}. А ведь там и QPA есть и возможность выделить всё в QtOpenGL, как в Qt 4, тоже была.

Кстати как и QVector3D, QMatrix4x4 – этим имхо место или в отдельном «математическом» модуле или, если таковой не планируется, в Core.

Да. Странно, что они вообще попали в QtGui.

Исходная версия EXL, :

Только вот @EXL то бугуртит именно с линковки с -lgl ;)

Не, я именно бугурчу от того, что QtGui завязан на OpenGL. То бишь без GL-хедеров и либы даже собрать ничего не получится. И при использовании того же XCB-backend’а ты обязательно зависел от OpenGL, хотя в приложении оно никак не использовалось. Пять-семь лет назад (посты как раз той давности по моим ссылкам) это было актуально, особенно учитывая что в Qt 4 такого прикола не было. В Windows, кстати, аналогичная ситуация при использовании GDI-backend’а была.

Ну вот в чём соглашусь, так это в том, что классы QOpenGL* имеют крайне опосредованное отношение к гуям.

Это чисто архитектурная проблема Qt 5, на которую я и жаловался раньше. Ну не должен Gui-модуль завязываться на какое-то определённое API, будь то XCB, OpenGL, Vulkan и т. д. В Qt 4 была завязка на XCB в QtGui (там QtGui включал в себя QtWidgets), а в Qt 5 – взяли и зачем-то завязались на OpenGL{ES}.

Кстати как и QVector3D, QMatrix4x4 – этим имхо место или в отдельном «математическом» модуле или, если таковой не планируется, в Core.

Да. Странно, что они вообще попали в QtGui.