LINUX.ORG.RU

Вышел wxWidgets 2.6.0


0

0

Наконец вышел стабильный релиз многими любимой кроссплатформенной библиотеки для создания GUI проложений. До этого развитите ветки шло под номером 2.5.x и вот 21ого апреля она была объявлена стабильной и получила номер 2.6.

Основные изменения:

* Улучшена поддержка GTK+2

* По умолчанию теперь используется XRC

* Радикально переработан Mac OS порт

* Новая система сборки - Bakefile

* Улучшена интеграция с STL

* Улучшена поддержка ODBC

* Окна верхнего уровня могут иметь произвольную форму

* Исправлено мерцание экрана (в Windows)

* Улучшена поддержка тем

* Поддерживается альфа канал

* и многое другое...

Полный список изменений: ftp://biolpc22.york.ac.uk/pub/2.6.0/c...

>>> Подробности

★★★★★

Проверено: Pi ()

а вот это - хорошо!

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

>В X11 работает через gtk?

По желанию.

anonymous
()

Сам я уже давно использую 2.5 ветку и скажу, что она намного стабильней чем 2.4. Надеюсь что в 2.6 они поправили доки, а то много чего там не хватало.

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

вот еслиб боа еще к нему обновили, легко на него народ пересаживается с делфей да вижал бейсиков:))

Syncro ★★★★★
()

опаньки, на сф.нет лежит 0.4.0 датированная 2005-03-17, похоже проект жив !!

/me пашел шупадь:)

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

> Так чего-же есть в wx и чего нет в qt, кроме халявности?

Нормальный C++ там есть. Qt это изврат с их .moc файлами и препросессингом.

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

Отличная новость! Давно ждал когда версия 2.5.x станет стабильной.

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

Это где же в wx используется нормальный/современный С++? В версии 2.5.2 такого не было. Вовсю использовались макросы. Для обеспечения кроссплатформенности отказались от применения стандартной библиотеки, шаблонов, множественного наследования. Не было и отдельного пространства имен для библиотеки.

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

Ну не в одном С++ счастье. WxPython например, очень удачная библиотека. Я на ней весьма шустро написал несколько кроссплатформенных приложений, под Win32 нативные виджеты, под Unix -- GTK2. QT не использовал из-за лицензии, нужна была кроссплатформенная LGPL библиотека.

sigill
()
Ответ на: комментарий от anonymous

> Это где же в wx используется нормальный/современный
> С++?
Во новых версиях появляется.

> Вовсю использовались макросы.
Да, это напрягает, но есть прогресс.

> Для обеспечения кроссплатформенности отказались от
> применения стандартной библиотеки,
Уже нет. Давно использую --with-stl в ./configure.

> Не было и отдельного пространства имен для библиотеки.
Планируется побороть.

В общем они по горло увязли в совместимости с
предыдущими версиями, но тем не менее всё же не
оставляют попыток выбраться из болота макросов
и перейти на нормальный С++.

anonymous
()
Ответ на: комментарий от sigill

Так получается, что преимущество только в халявной лицензии? Нативный внешний вид можно обеспечить через theming engine. Зато использование нативных виджетов в wx оборачивается разным поведением этих самых виджетов в одной и той же программе на разных платформах. Точных примеров не приведу, но когда ковырялся в wxMSW и wxGTK это было заметно.

anonymous
()

Отлично! Теперь можно забыть про уродство с gtk1 и неработающими модификаторами меню в приложениях с русским интерфейсом.

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

Если соблюдать правила элементарной гигиены и не использовать С++ как затычку во все дыры, то не оксиморон.

anonymous
()
Ответ на: комментарий от rezuq

я оттуда сделал вывод что куот лучше;) т. к. замечания спорны, а преимущества куот очевидны даже конкурентам:)

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

Очевидное преимущество wxwidgets только в лицензии. А остальные отличия можно считать, либо достоинствами, либо недостатками, кому как...

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

> Очевидное преимущество wxwidgets только в лицензии.

тоже спорно, сравни GPL Qt/KDE и LGPL GTK/GNOME. т. е. отдельно взятой конторе/разработчику конечно выгоднее использовать тулкит на халяву ... но сообщество от этого ничего не приобретает. Вот и приходится сажать на диету ... брать на работу маинтейнеров жизненно важных проектов:)

по остальным коротко:

как тут уже отметили использование нативных средств доставляет больше проблем совместимости (как между версиями одной платформы так и между платформами) поэтому просто использование нативного стиля виджетов имхо намного разумнее. Т. е. приложения с использованием куота выглядят в win mac и linux выглядят как родные но рисуются куотовской либой. Про нот тру си++ это напрасно, можно писать в классическом стиле, moc - надстройка для ui файлов и qmake поставляется с qt а без самой либы и так ничего не соберешь.

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

> А каковы перспективы ее использования после выхода GPL-версии QT?

Перспективы такие:
1. Использование качественной библиотеки в коммерчиских проектах бесплатно (LGPL).
2. Проект ведётся open source сообществом (как Debian).

А GPL-версию QT, как понимаешь, бесплатно можно будет использовать только в GPL проектах.

IMHO, по соотношению простота_использования/качество wxWidgets -- No. 1.

anonymous
()
Ответ на: комментарий от Syncro

В .moc распарсивается все, что содержит в себе макрос Q_OBJECT. UI-файлы тут не причем. Из UI-файлов сначала делаются .h и .cpp, затем из .h клепается .moc, а потом все совместно собирается.

anonymous
()
Ответ на: комментарий от fernik

Этого тебе нигде гарантировать не могут ;) Так что доки - принципиальнейшая вещь. Всегда. Если все подробно документировано, и описаны ключевые отличия одной версии от другой, то проблем никаких и портирование проходит чуть ли не на автомате, если что.

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

Да и портирование - это не все. Сам процесс написания кода с хорошими доками намного приятнее. У той же qt доки - просто высший класс.

anonymous
()

Тупой вопрос: если я возьму, снесу wxWidgets 2.4, поставлю 2.6 и перекомпилирую aMule, получу ли я aMule на gtk2?

K48 ★★★★
()

Я не понял эта приблуда без gtk может работать! Если не может то фтопку!

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

с предыдущей версией у меня не собрался audacity при установленной локали utf8?
соберется ли теперь? как у них с поддержкой utf8?

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

хе. Мужыки. а вы про ФЛТК слышали? ЛЖПЛ. лёгкая. ОпенЖЛ отлично поддерживается. использует Х11 и Вынь АПИ (про МАК не знаю нет у меня МАКа) когдато вхВыджетс смотрел по моему тяжеловатаю вешчь.

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

если к примеру нужно приложение работающее с сокетами, xml и т.п. то никаких moc не надо. да и с moc какие проблемы? раз в makefile указал и забыл

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

>2. Проект ведётся open source сообществом (как Debian).

Что мешает обществу форкнуть GPL QT?

Как насчет фактических гарантий этого общества по развитию и поддержке продукта?

Trolltech за это денежки получает, а wxовцы? Была у них попытка "продаться" Борланду, но что-то у них не получилось.

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

Во-первых, есть wxMotif. Был, во всяком случае.

Во-вторых, можно собрать с тулкитом X Window System/X.org. Кто-то из пользователей Audacity этим заморачивался, притом успешно.

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

Объясняю

C wxGTK 2.5-2.6 работает только версия Audacity из CVS HEAD. Все стабильные релизы ветки 1.2.x работают ТОЛЬКО wxWidgets 2.4.x и с 2.5-2.6 не будут работать НИКОГДА :)

Если вдруг боязно работать с CVS -- текущий срез Audacity очень стабилен. У меня к нему претензий как таковых нет. Пока не начнётся интеграция с движком Mezzo, ломать там ничего не будут :)

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

По поводу FLTK - не только видели, но и использовали. По количеству виджетов и враперов для других языков программирования он откровенно уступает WxWindows. Кстати amule из репозитария Ubuntu я успешно пересобирал для WxWindows-2.5.3, для GTK2 интерфейса.

sigill
()
Ответ на: комментарий от Syncro

2 Syncro

Выглядят они может и как родные, look сделать не проблема, а вот feel чтобы был как у родных интерфейсов -- это уже сложнее. Потом и возникают вопросы пользователей, а почему я щелкнул два раза по ColumnHeader в Table, и он автоматически размер по ширине надписи не сделал? А по поводу LGPL лицензии, WxWindows пожалуй единственная библиотека, обладающая кучей возможностей, которую можно использовать бесплатно, для коммерческих целей. Допустим поставили тебе на работе задачу, сделать простую утилиту или даже набор утилит с графическим интерфейсом, и ты решил упростить себе жизнь выбрав удобную и высокоуровневую библиотеку. Есть вероятность, что приобретение за 1500 у.е библиотеки QT будет не совсем оправдано.

sigill
()
Ответ на: комментарий от anonymous

> Про нот тру си++ это напрасно, можно писать в классическом стиле, moc - надстройка для ui файлов не напрасно! посмотри, что люди пишут: >В .moc распарсивается все, что содержит в себе макрос Q_OBJECT. А также сигналы и слоты, которых нет в С++

>Была у них попытка "продаться" Борланду, но что-то у них не получилось. Никуда они не продавались, просто борланд использует wxwidgets в C++BuilderX

>У той же qt доки - просто высший класс. Да и wxwidgets тоже отличные и примеров много с ней идёт

>Тупой вопрос: если я возьму, снесу wxWidgets 2.4, поставлю 2.6 и перекомпилирую aMule, получу ли я aMule на gtk2? У меня и 2.4 использует gtk2 Вообще-то смотря как соберёш wxwidgets, она может и gtk1 и gtk2 и motif использовать, а может вообще не использовать ничего - wxX11 сама рисует виджеты wxX11 используется для систем с ограниченными ресурсами, либо если приспичит использовать свои темы >Я не понял эта приблуда без gtk может работать! Если не может то фтопку! Непонятливых фтопку! Хотя... небольшая часть виджетов не поддерживается в wxMotif ни в wxX11, а некоторые не со всеми фичами (в 2.4, не знаю как там в 2.6), так что под иксами лучше с gtk2 собирать

Ещё одна особенность wxwidgets - лёгкость портирования mfc приложений

rezuq
()
Ответ на: комментарий от anonymous

> Про нот тру си++ это напрасно, можно писать в классическом стиле, moc - надстройка для ui файлов
Не напрасно! посмотри, что люди пишут:
>В .moc распарсивается все, что содержит в себе макрос Q_OBJECT.
А также сигналы и слоты, которых нет в С++

>попытка "продаться" Борланду, но что-то у них не получилось.
Никуда они не продавались, просто борланд использует wxwidgets в C++BuilderX

>У той же qt доки - просто высший класс.
Да и wxwidgets тоже отличные и примеров много с ней идёт

>Тупой вопрос: если я возьму, снесу wxWidgets 2.4, поставлю 2.6 и перекомпилирую aMule, получу ли я aMule на gtk2?
А у меня и 2.4 использует gtk2,
Вообще-то смотря как соберёш wxwidgets, она может и gtk1 и gtk2 и motif использовать, а может вообще не использовать ничего - wxX11 сама рисует виджеты
wxX11 используется для систем с ограниченными ресурсами, либо если приспичит использовать свои темы
Наверное в твоей системе так wxwidgets собрана, достаточно 2.4 пересобрать. А насчёт пересборки с 2.6 не знаю, соберется ли, там кое-что поменяли

>Я не понял эта приблуда без gtk может работать!
Непонятливых фтопку!
Хотя... небольшая часть виджетов не поддерживается в wxMotif ни в wxX11, а некоторые не со всеми фичами (в 2.4, не знаю как там в 2.6), Так что под иксами лучше с gtk2 собирать

Ещё одна особенность wxwidgets - лёгкость портирования mfc приложений

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

>А также сигналы и слоты, которых нет в С++

Я это подразумевал. Пишешь что-то с сигналом и слотом - надо Q_OBJECT включать.

anonymous
()
Ответ на: комментарий от sigill

в боа делал проект под оффтопиком, все отлично было, потом стартанул в линухе и получил:

1. из за того что в оффтопике алиясинг был отключени и шрифты на два размера меньше по умолчанию были часть надписей(на англ.) не влезала в виджеты (кнопки лейблы)

2. русских букв вообще видно не было (локаль линуха - утф)

3. даже относительные пути к файлам ресурсов не работали

4. написанная для 2.4.х.х на 2.5.х.х не заработала

теперь скажите какой в йопу можно делать комерческий продукт с такими выкрутасами ?? тащить в программке локальную версию текущей wxGTK(Windows) ?

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

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

и тем не менее как я уже говорил всё необходимое идет в составе qt, а без наличия библиотеки в системе разработка приложения с её использованием труднопредставима

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

Дык понятно ;) Кстати, то, что ты сказал, в некоторой степени относится ко всем имеющимся либам. Даже если библиотека у тебя есть, то без devel-пакета ты все равно далеко не уйдешь.

Мне, например, сложно представить себе широко распространенную linux-систему (всякие урезанные/узкоспециализированные в расчет не берем), у которой на дистрибутивном диске нет qt-devel. Не говоря уже о бесплатности либы под Linux. Единственная проблема: хочешь закрыть код - покупай. А так - флаг в руки.

anonymous
()
Ответ на: комментарий от Syncro

>в .moc распарсиваются только .ui, никто не запрещает все делать руками (без них т. е.)

Что за бред.. moc-ать нужно все QObject не только *.ui (которые тоже QObject) весь QT построен вокруг метакомпилера...

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

> Мне, например, сложно представить себе широко распространенную linux-систему (всякие урезанные/узкоспециализированные в расчет не берем), у которой на дистрибутивном диске нет qt-devel.

В генту нет:) кстати объем /usr/include (в который кладуться все хедеры кроме прокоммерческих их /opt) у меня сейчас 25,6 мб(в связи с чем непонятен смысл разделения) и все собирается, и девелов ставить не надо:) вот такая вот магия, ну это так к слову:))

> Не говоря уже о бесплатности либы под Linux.

начиная с 4.0 она и под оффтопик бесплатная будет GPL и там и там об том и речь

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