The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

Релиз графического тулкита wxWidgets 3.1.1

21.02.2018 10:54

После двух лет разработки сформирован выпуск кроссплатформенного тулкита wxWidgets 3.1.1, позволяющего создавать графические интерфейсы для Linux, Windows, macOS, UNIX и мобильных платформ. wxWidgets 3.1 позиционируется как ветка для разработчиков, в которой развиваются новые возможности для следующего стабильного релиза 3.2.0. По сравнению с веткой 3.0 наблюдается ряд несовместимостей на уровне API и не гарантируется неизменность ABI между промежуточными выпусками 3.1.x.

Тулкит написан на языке С++ и распространяется под свободной лицензией wxWindows Library License, одобренной Фондом СПО и организацией OSI. Лицензия основана на LGPL и отличается позволением использования собственных условий для распространения производных работ в бинарной форме. Кроме разработки программ на Си/Си++ wxWidgets предоставляет биндинги для большинства популярных языков программирования, в том числе для PHP, Python, Perl и Ruby. В отличие от других тулкитов, wxWidgets обеспечивает для приложения по-настоящему родной для целевой системы внешний вид и методы взаимодействия, благодаря использованию системных API, а не имитации GUI.

Основные новшества wxWidgets 3.1.1:

  • Улучшенная поддержка экранов с высокой плотностью пикселей (High DPI);
  • Возможность задания дробных значений ширины пера в wxGraphicsContext;
  • Поддержка назначения произвольных меток для окон в wxStaticBox;
  • Поддержка нового вида событий для жестов указателем мыши;
  • Возможность использования разметки в тексте в блоках wxDataViewCtrl;
  • Поддержка файлов в формате ZIP 64;
  • Значительное расширение средств для людей с ограниченными возможностями, предоставляемых платформой Windows;
  • Новые классы: wxActivityIndicator, wxAddRemoveCtrl, wxAppProgressIndicator, wxNativeWindow, wxPowerResourceBlocker, wxSecretStore;
  • Новые методы: wxDateTime::GetWeekBasedYear(), wxListBox::GetTopItem(), wxProcess::Activate(), wxTextEntry::ForceUpper(), несколько в классе wxRendererNative, wxStandardPaths::GetUserDir(), wxUIActionSimulator ::Select();
  • Значительное улучшение реализаций классов wxBusyInfo и wxNotificationMessage;
  • Обновление до свежих версий всех входящих в поставку сторонних библиотек, в том числе поддержка WebKit 2 и GStreamer 1.7;
  • Поддержка OpenGL в направлении более качественной работы с новыми версиями стандарта OpenGL (3.2+);
  • Улучшена поддержка C++11;
  • Альтернативная система сборки на базе CMake;
  • Поддержка сборки с использованием новых веток компиляторов MSVS 2017, g++ 7 и clang 6;
  • Экспериментальный порт wxQt.


  1. Главная ссылка к новости (https://groups.google.com/foru...)
  2. OpenNews: Релиз графического тулкита wxWidgets 3.0.3
  3. OpenNews: Релиз графического тулкита wxWidgets 3.1.0
  4. OpenNews: Релиз графического тулкита wxWidgets 3.0.1
  5. OpenNews: Релиз графического тулкита wxWidgets 3.0.0
Лицензия: CC-BY
Тип: Программы
Короткая ссылка: https://opennet.ru/48111-wxwidgets
Ключевые слова: wxwidgets
При перепечатке указание ссылки на opennet.ru обязательно
Обсуждение (42) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (-), 10:57, 21/02/2018 [ответить] [﹢﹢﹢] [ · · · ]  
  • –14 +/
    Неплохо. Но Qt все равно лучше. И совсем не тормозит, как и Java, кстати говоря. Как и файрфокс.
     
     
  • 2.3, Аноним (-), 12:11, 21/02/2018 [^] [^^] [^^^] [ответить]  
  • +2 +/
    а интерфейс 1с тормозит
     
  • 2.4, Аноним (-), 12:18, 21/02/2018 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Если это был сарказм, то неудачный
     
     
  • 3.41, Джон Ленин (?), 03:30, 23/02/2018 [^] [^^] [^^^] [ответить]  
  • +/
    Это он пошутил про то, что джава-къют байндинги тормозили ужасно, пока их не выбросили...
     
  • 2.5, Осторожный_аноним (?), 12:20, 21/02/2018 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Qt под маком глюкав сильно
     
     
  • 3.15, Анончик999999 (?), 13:56, 21/02/2018 [^] [^^] [^^^] [ответить]  
  • –2 +/
    И под Wine не всегда автопрорисовывается.
     
  • 3.18, Аноним (-), 14:22, 21/02/2018 [^] [^^] [^^^] [ответить]  
  • +/
    Значит, под опиум нужен свой порт - wxApple
     
     
  • 4.33, Stax (ok), 21:27, 22/02/2018 [^] [^^] [^^^] [ответить]  
  • +/
    В смысле? В этом и смысл wxWidgets, что под линуксом он wxGTK (впрочем, раньше еще был wxMotif), под виндой - через виндовый тулкит, под маком - через Cocoa. Везде нативно. Все эти порты уже есть.
    И проблемы Qt под маком никак не касаются wxWidgets - он не будет использовать Qt под маком, а напрямую Cocoa.
     
  • 2.8, AntonAlekseevich (ok), 12:32, 21/02/2018 [^] [^^] [^^^] [ответить]  
  • +/
    Смешное высказывание.

    [u]Тулкит все равно лучше. И совсем не тормозит как виртуальная машина кстати говоря. Как и веб-браузер.[/u]

    Дорогой Аноним где ваша логика? (Просто это похоже на сравнение инструмента, дома и лагеря вместе.)

     
     
  • 3.23, Crazy Alex (ok), 19:57, 21/02/2018 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Не тупи. если нужна кроссплатформенная софтина - её пишут либо на нативе с применением wxWidgets или Qt, или на джаве или пихают в браузер.
     
     
  • 4.24, AntonAlekseevich (ok), 21:54, 21/02/2018 [^] [^^] [^^^] [ответить]  
  • +/
    > Не тупи.

    Я не настолько идиот, я спрашивал про логику выражения.
    > если нужна кроссплатформенная софтина - её пишут либо на нативе с применением wxWidgets или Qt, или на джаве или пихают в браузер.

    В качестве тулкита кроме wxWidgets и Qt, из кроссовых есть, и Tk, и GTK.
    Иначе да могут писать на Java или для вэба, но можно ведь писать скрипты на том же ash и это будет работать(правда только для Tk, в чем я ошибаюсь), а ведь в теории есть и другие экзотические способы написания программы.

     
     
  • 5.26, Led (ok), 00:01, 22/02/2018 [^] [^^] [^^^] [ответить]  
  • –2 +/
    > Я не настолько идиот

    Не скромничай: настолько.

     
     
  • 6.39, AntonAlekseevich (ok), 23:41, 22/02/2018 [^] [^^] [^^^] [ответить]  
  • +/
    > Не скромничай: настолько.

    Может мне тогда сжечь свой диплом об образовании, раз я настолько идиот? (Я этого делать не стану не смотря на ваш ответ.)

     
  • 5.30, kai3341 (ok), 13:35, 22/02/2018 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Это опеннет, бро

    Средний анонимус опеннета не видит разницы между
    * тулкитом
    * DE, базирующимся на этом тулките
    * ЯП, имеющим биндинг к этому тулкиту

    Что с этим делать? Ну не учить же :)

     
     
  • 6.37, AntonAlekseevich (ok), 23:18, 22/02/2018 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Что с этим делать? Ну не учить же :)

    С этим ничего не сделаешь.
    Хотя может создать ОС имеющее тоже название что у тулкита, языка программирования и среды рабочего стола. (Хотя нет, бредово звучит.)

     
  • 5.34, Stax (ok), 21:37, 22/02/2018 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > В качестве тулкита кроме wxWidgets и Qt, из кроссовых есть, и Tk,
    > и GTK.

    Да нифига их нет. Из малопроблемных есть только wxWidgets, Qt и Swing. Ах ну да, еще SWT как вариант. У всех в той или иной степени есть проблемы в некоторых комбинациях, но в общем и целом терпимые.

    GTK под виндой - это грустно, некрасиво и глючно. И под маком не сильно весело (и либо некрасиво, либо требуются очень специфические хаки, чтобы было терпимо). В нативный Feel так не укладывается вообще. Tk не слишком красиво под линуксом, глючно и не слишком соответствует look & feel под маком. Не знаю, как под виндой.

    Из wxWidgets, Qt, Swing и SWT нативный look & feel под разные платформы (а это далеко не только вид и поведение программы, но и API, позволяющие писать так, что программа сохраняет свои функции несмотря на разный Feel под разные платформы) есть только у wxWidgets и SWT. Поэтому если это требуется, и не Java, то альтернативы ему нет. Впрочем, Qt, конечно, неплох, но не настолько нативен, как wxWidgets.

    Впрочем, есть еще такая мода: приложение в виде nodejs сервера + виджет браузера, интерфейс на HTML5+js. Но это, гхм, весьма специфически.

     
     
  • 6.38, AntonAlekseevich (ok), 23:38, 22/02/2018 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Да нифига их нет.

    Не спорю.
    > Из малопроблемных есть только wxWidgets, Qt и Swing. Ах ну да, еще SWT как вариант.

    Если вам нужен NL&F то да это малопроблемные.
    > У всех в той или иной степени есть проблемы в некоторых комбинациях, но в общем и целом терпимые.

    Согласен.
    > GTK под виндой - это грустно, некрасиво и глючно.
    > И под маком не сильно весело (и либо некрасиво, либо требуются очень специфические хаки, чтобы было терпимо).
    > В нативный Feel так не укладывается вообще.

    GTK не делался специально для Windows и не делался специально для macOS поэтому выражение о проблемах имеет место быть.
    > Tk не слишком красиво под линуксом, глючно и не слишком соответствует look & feel под маком.
    > Не знаю, как под виндой.

    Tk достаточно универсален, да у него свой Look & Feel(Хотя больше похож на Motif), но приложения этого тулкита везде одинаково выглядят.
    > Из wxWidgets, Qt, Swing и SWT нативный look & feel под разные платформы (а это далеко не только вид и поведение программы, но и API, позволяющие писать так, что программа сохраняет свои функции несмотря на разный Feel под разные платформы) есть только у wxWidgets и SWT.
    > Поэтому если это требуется, и не Java, то альтернативы ему нет.

    Утверждение в вашем случае верно, но это ещё не значит что wxWidgets панацея.
    > Впрочем, Qt, конечно, неплох, но не настолько нативен, как wxWidgets.

    Qt порой слишком "жирный" по сравнению с wxWidgets, но легче если сравнивать с SWT или Swing(Если я не ошибаюсь обоим нужна виртуальная машина Java)
    > Впрочем, есть еще такая мода: приложение в виде nodejs сервера + виджет браузера, интерфейс на HTML5+js.

    Опять "впрочем", ну и ладно. Согласен что есть такая тенденция. (Но я не могу вам сказать что это плохо либо хорошо.)
    > Но это, гхм, весьма специфически.

    Скорее наоборот, максимально упрощенно под "комбайны".

     
  • 6.46, Olin (??), 09:27, 25/02/2018 [^] [^^] [^^^] [ответить]  
  • +/
    Ещё есть IUP: http://webserver2.tecgraf.puc-rio.br/iup/
     
  • 3.42, Джон Ленин (?), 03:35, 23/02/2018 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Смешное высказывание.
    > [u]Тулкит все равно лучше. И совсем не тормозит как виртуальная машина кстати
    > говоря. Как и веб-браузер.[/u]
    > Дорогой Аноним где ваша логика? (Просто это похоже на сравнение инструмента, дома
    > и лагеря вместе.)

    Шутка про "джава-къют байндинги", про "выключенную аппаратную виртуализацию в биос" и "ненавистный квантумный хромобокс".

    //Сложная шутка, больше так не шути.

     
     
  • 4.44, AntonAlekseevich (ok), 04:04, 23/02/2018 [^] [^^] [^^^] [ответить]  
  • +/
    > Шутка про "джава-къют байндинги", про "выключенную аппаратную виртуализацию в биос" и "ненавистный квантумный хромобокс".
    > //Сложная шутка, больше так не шути.

    Я если шучу, то очень редко. (Юмор это не моё.)

     

  • 1.6, Vasya474987897 (ok), 12:27, 21/02/2018 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Интересно, wxWidgets 3.1.1 под Windows 3.11 выглядит нативно?..
     
     
  • 2.10, Аноним (-), 12:37, 21/02/2018 [^] [^^] [^^^] [ответить]  
  • +3 +/
    > Интересно, wxWidgets 3.1.1 под Windows 3.11 выглядит нативно?..

    Нет, еще не готов. Когда будет 3.11, тогда и поговорим.

     
     
  • 3.45, Онаним (?), 04:53, 23/02/2018 [^] [^^] [^^^] [ответить]  
  • +/
    Внезапно в Википедии написано, что wxPython, например, изобретали изначально как раз для Windows 3.1 и HP-UX: «wxPython was created when Robin Dunn needed a GUI to be deployed on HP-UX systems and also on Windows 3.1 within a few weeks»
     

  • 1.7, Анонимс (?), 12:30, 21/02/2018 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    >> Экспериментальный порт wxQt

    wxC++, нет? Что за зверь такой и в чём будет профит?

     
     
  • 2.13, Аноним (-), 13:23, 21/02/2018 [^] [^^] [^^^] [ответить]  
  • +/
    Профит, видимо, в том, что вместо GTK будет использоваться Qt. Хотя непонятно, зачем тогда нужна прослойка wxWidgets, разве что для легаси.
     
     
  • 3.16, Аноним (-), 14:13, 21/02/2018 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Например, для KiCAD, который написан с использованием wxWidgets и на чистый Qt его маловероятно, что переведут.
     
  • 3.17, Аноним (-), 14:17, 21/02/2018 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Если будут писать приложения, используя только wx API, то их можно будет скомпилить и для GNOME с wxGtk, и для KDE с wxQt. И там, и там должно выглядеть нативненько.
     
  • 3.20, Аноним (-), 16:45, 21/02/2018 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Профит, видимо, в том, что вместо GTK будет использоваться Qt. Хотя непонятно,
    > зачем тогда нужна прослойка wxWidgets, разве что для легаси.

    Чтобы потешить своё чрезвычайно развитое самомнение: "Глядите! Мы тоже пишем свои окошки и свою надстроечку над Си++!"

     

  • 1.12, Онаним (?), 13:02, 21/02/2018 [ответить] [﹢﹢﹢] [ · · · ]  
  • –3 +/
    Скорее бы wxPython для третьего Питона родили...
     
     
  • 2.14, Анончик999999 (?), 13:54, 21/02/2018 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Уже родили!
     
  • 2.21, Аноним (-), 16:46, 21/02/2018 [^] [^^] [^^^] [ответить]  
  • +/
    > Скорее бы wxPython для третьего Питона родили...

    Извращенцы не способны к размножению - пялятся не в те места.

     
  • 2.22, Некто с Марса (?), 17:49, 21/02/2018 [^] [^^] [^^^] [ответить]  
  • +1 +/
    wxPython/Python3 вполне работоспособен уже с осени.
    Не работают две вещи: wxCairo и Opengl. А в остальном вполне жив.
    Феральский релиз уже stable.
    А вот wxRuby  похоже уже помер.
     

  • 1.25, Дуплик (ok), 23:08, 21/02/2018 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Самое главное его преимущество в том, что он использует GTK+ в качестве бэкенда, а потому не выглядит вырвиглазно, как тот же Qt.
     
     
  • 2.29, Аноним (-), 12:43, 22/02/2018 [^] [^^] [^^^] [ответить]  
  • +/
    Не забывай добавлять где выглядит невырвиглазно. А именно в GNOME. А в KDE, в Винде Gtk выгдлядит вырвиглазно.
     
     
  • 3.31, Аноним (-), 19:25, 22/02/2018 [^] [^^] [^^^] [ответить]  
  • –1 +/
    это проблемы кедерастов = вендовозов. GTK - это чисто наше, линуксовое. (KDE не является официальной рабочей средой GNU, в отличие от GNOME, а потому его можно рассматривать как филиал венды)
     
  • 3.35, Stax (ok), 21:39, 22/02/2018 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Не забывай добавлять где выглядит невырвиглазно. А именно в GNOME. А в
    > KDE, в Винде Gtk выгдлядит вырвиглазно.
    > А в KDE, в Винде Gtk выгдлядит вырвиглазно.

    Про KDE глупости. Забыли поставить пакет с gtk-темами и запустить gnome-settings-daemon? Ну так сделайте и все будет выглядеть отлично. Кроме того, есть темы, позволяющие добиться идентичности вида Qt и GTK.

    В винде у Gtk действительно есть проблемы, но больше с Feel, а не Look.

     

  • 1.27, Аноним (-), 03:27, 22/02/2018 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    wLua может снова будут пилить?
     
     
  • 2.28, Аноним (28), 07:58, 22/02/2018 [^] [^^] [^^^] [ответить]  
  • +/
    Автор ZeroBrane Studio пилит wxLua биндинги к wxWidgets 3.1.1. На нём ZeroBrane и работает.
     

  • 1.32, Гоги (?), 20:40, 22/02/2018 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Увы, монолитные тулкиты а-ля "создать контрол, присвоить цвет" - примитив прошлого века. Тренд минимум на 30 лет - декларативные вещи типа WPF. Мы уже наелись сотнями "графических библиотек", пора бы их повыкидывать и написать что-то перспективное.
     
     
  • 2.36, Stax (ok), 21:42, 22/02/2018 [^] [^^] [^^^] [ответить]  
  • +/
    > Тренд минимум на 30 лет - декларативные вещи типа WPF. Мы
    > уже наелись сотнями "графических библиотек", пора бы их повыкидывать и написать
    > что-то перспективное.

    Отлично. Расскажите теперь, какие хорошие, поддерживаемые и зрелые декларативные технологии доступны у тех, кто пишет
    1) на C++
    2) на Python
    3) на Java
    (по каждому пункту) и хочет кроссплатформенности хотя бы в рамках Linux-Windows-OS X?

    (я вам даже ссылку дам, чтобы не искать - https://en.wikipedia.org/wiki/List_of_user_interface_markup_languages - просто отфильтруйте по критерию выше).

     
     
  • 3.43, Джон Ленин (?), 04:03, 23/02/2018 [^] [^^] [^^^] [ответить]  
  • +/
    >> Тренд минимум на 30 лет - декларативные вещи типа WPF. Мы
    >> уже наелись сотнями "графических библиотек", пора бы их повыкидывать и написать
    >> что-то перспективное.
    > Отлично. Расскажите теперь, какие хорошие, поддерживаемые и зрелые декларативные технологии
    > доступны у тех, кто пишет
    > 1) на C++
    > 2) на Python
    > 3) на Java
    > (по каждому пункту) и хочет кроссплатформенности хотя бы в рамках Linux-Windows-OS X?

    Походу ты не понимаешь, что он имел в виду (я тоже не понимаю), но выглядит это так:

    "Нужно срочно написать wxDeclarative, чтоб написать один раз код, и выводить его во всяких нативных вендорных WPFах, иль в QML (взависимости от погоды)" -- он частично прав, но зависит всё от задач.

    wxWidgets кагбэ находится посередине между Qt и SDL. С одной стороны инструмент для лентяев-минималистов, что хотят один раз нативно написать, но фреймворк таскать не хотят; с другой стороны никто не запрещает Qt+SDL юзать и при всей лени писать
    с фреймворком+нативно+лениво+молодёжно+декларативно (myGUI -- OpenMW так и делает).

     
  • 2.40, AntonAlekseevich (ok), 23:47, 22/02/2018 [^] [^^] [^^^] [ответить]  
  • +/
    > Мы уже наелись сотнями "графических библиотек", пора бы их повыкидывать и написать что-то перспективное.

    [u][b]Мы наелись, давайте ещё поедим.[/b][/u]

    Хорошая цитата из вашего сообщения, не лопните.

     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Спонсоры:
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2020 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру