Релиз графического тулкита wxWidgets 3.1.1
Как сообщает opennet.ru после двух лет разработки сформирован выпуск кроссплатформенного тулкита 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.