LINUX.ORG.RU

Легким движением руки с GTK на Qt

 , ,


0

1

Пример приложения в лазаре, скомпиленого для gtk и Qt. Уже очень давно жду, пока в лазаре приделают поддержку OpenGL для Qt, походу не дождусь. Путем кривого патча удалось запустить TOpenGLContext на Qt, чем собственно и хвастаюсь)) — зкад зафурычил нативно в кде.

>>> Просмотр (1920x1080, 572 Kb)

★★

Проверено: JB ()
Последнее исправление: unfo (всего исправлений: 1)
Ответ на: комментарий от a1batross

Скриншоты надо толко после ядерной войны делать? я думал так просто можно

zamtmn ★★
() автор топика
Ответ на: комментарий от zamtmn

Незнаю, мне Qt ближе.

Мне так-то тоже Просто на GTK как-то с этой программе всё аккуратнее

MEZON ★★★★★
()
Последнее исправление: MEZON (всего исправлений: 1)

прикольно, но хочется больше подробностей :)

я так понимаю, это не нативные gtk/qt, а некий лазаровский тулкит, в котором есть gtk и qt бэкенды? потому что используемые виджеты в обычном gtk не существуют. угадать в каком из двух окон qt, а в каком gtk, я не смог. оба окна выглядят криво и ненативно.

waker ★★★★★
()
Ответ на: комментарий от waker

gtk и qt нативные, но естественно есть независимая «прослойка» в виде LCL на которой и написано приложение. Я чето протупил и Qt получилось на заднем фоне, на переднем - GTK

потому что используемые виджеты в обычном gtk не существуют.

Какие?

zamtmn ★★
() автор топика

Лёгким движением руки у вас получилось сменить тулкит только благодаря тому, что lazarus поверх тулкитов имеет нехилую прослойку. А вот умение патчить продукт под свои нужды - это заслуживает уважения.

lucentcode ★★★★★
()
Ответ на: комментарий от MiniRoboDancer

Это да, я говорю что патч кривой - вивпорт не на QtGLWidget, а простое окно объявленое WA_PaintOnScreen, контекст создан иксами. Но т.к. баг о неподдержке Lazarus`ом QtGLWidget болтается без ответа уже несколько лет - это лучше чем ничего. В Qt версии (как в WIN и GTK) еще много багов по мелочи, о чем постепенно строчу на багтрекер.

zamtmn ★★
() автор топика
Ответ на: комментарий от lucentcode

Никто это не отрицает, но тот факт что конечный тулкит меняется «легким движением» и на выходе нативное приложение - зер гут

zamtmn ★★
() автор топика

Путем кривого патча

А патч-то на что накладывал: на Lazarus или на ZCad?
Если на лазарус, то пробовал что-то еще конпилять?

Novator ★★★★★
()
Ответ на: комментарий от Novator

на лазаря. этот «косяк» появляется и в других приложениях, стоит TOpenGLContext поместить на PageControl

zamtmn ★★
() автор топика
Ответ на: комментарий от zamtmn

Какие?

докинга в gtk вообще нет, например (точнее есть, но на скриншоте точно не он).

древовидные property tables.

комбо-боксы есть, но я не уверен, что они позволяют делать то что на скринах.

тулбары тоже странно выглядят, но это можно списать на тему оформления.

waker ★★★★★
()
Ответ на: комментарий от waker

докинг в лазаре не нативный, инспектор объектов у меня - саморисованный. комбобоксы - нативные, но кустомдравные. таскаемые тулбары в лазаре тоже вечный долгострой, поэтому я их «эмулировал» докнутыми панельками

zamtmn ★★
() автор топика
Ответ на: комментарий от zamtmn

ну вот. поэтому я и говорю что выглядит ненативно все. если все это саморисованное - то все понятно. плюс кутешная тема натянутая на gtk — это всегда фейл.

waker ★★★★★
()
Ответ на: комментарий от waker

саморисовка - только инспектор объектов, т.к. очень специфичный контрол - нарисовать самому проще и надежней.

плюс кутешная тема натянутая на gtk — это всегда фейл

я хоть и кдешник, но гтк приложения приходится пользовать, поэтому лучше фейл, чем совсем с другой планеты окошки

zamtmn ★★
() автор топика
Ответ на: комментарий от zamtmn

саморисовка - только инспектор объектов

инспектор объектов, доки, комбобоксы. занимают существенную часть интерфейса. (под саморисовкой я в т.ч. подразумеваю все, что не является стандартными компонентами gtk).

waker ★★★★★
()
Ответ на: комментарий от waker

Инспектора можно пихнуть в нативный треевив, но юзабельности это убавит.

Док - заголовки можно выключить - будет однооконное приложение

К комбобоксам какие претензии? вот они та самые что нинаесть нативные))

zamtmn ★★
() автор топика
Ответ на: комментарий от yoghurt

делит на ноль какраз гтк версия))

Я чето протупил и Qt получилось на заднем фоне, на переднем - GTK

zamtmn ★★
() автор топика
Ответ на: комментарий от zamtmn

Это как же получается, GTK лучше прорисовывает тему кед, чем сам Qt? Ну это ещё больше бомба.

yoghurt ★★★★★
()

Надо же. И никто Pascal не обхаял. Автору +1, несомненно, за интересный и нетривиальный скриншот.

sleepflint ★★★
()
Ответ на: комментарий от zamtmn

Да, это очень удобно. Думаю, и для других ЯП было бы неплохо иметь подобную прослойку для унификации работы с тулкитами.

lucentcode ★★★★★
()
Ответ на: комментарий от zamtmn

претензий вообще никаких нет. я просто объяснял, что я имел ввиду под «оба окна выглядят криво и ненативно». отчасти, это обусловлено уродской qt-темой. но на вкус и цвет фломастеры разные.

waker ★★★★★
()
Ответ на: комментарий от thunar

а ещё том приличного файлового диалога нет, по HIGу он не нужен.

хорошо, что хоть какой-то есть. но вообще странно, что никто до сих пор не сделал альтернативу. технически ведь нет препятствий. более того, выдрать готовый, переделать, и подсунуть через LD_PRELOAD — вообще тривиальная задача.

waker ★★★★★
()
Ответ на: комментарий от waker

когда то был kgtk, а ещё был патч исправляющий диалог, который, естественно в апстрим не попал — ведь гномосексуалистам приятнее надрачивать на HIG чем повышать юзабельность.

thunar ★★★★★
()
Ответ на: комментарий от thunar

я даж не про апстрим говорю, а хотя бы просто про альтернативный виджет. в виде отдельной либы. уверен, многие были бы рады. и уж конечно я не имею в виду кдешный диалог в гтк. это еще хуже, чем стандартный gtk (т.к. требует qt, и не вписывается в общий стиль).

кстати, было бы интересно узнать статистику, что людям больше всего нравится из разных подобных диалогов.

1. win/qt/kde

2. gtk/gnome

3. osx

все эти три варианта очень разные, и имеют собственные плюсы и минусы.

на мой вкус, вендовый диалог самый лучший (но не в том виде, как он работает в wine), а макосевый самое зло. т.е. gtk даже не хуже всех.

waker ★★★★★
()
Ответ на: комментарий от Lavos

Обошлось без портирования, компилится и туда и туда

zamtmn ★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.