выпуск кроссплатформенного тулкита , позволяющего создавать графические интерфейсы для Linux, Windows, macOS, UNIX и мобильных платформ. wxWidgets 3.1 позиционируется как ветка для разработчиков, в которой развиваются новые возможности для следующего стабильного релиза 3.2.0. По сравнению с веткой 3.0 наблюдается ряд несовместимостей на уровне API и не гарантируется неизменность ABI между промежуточными выпусками 3.1.x.
Тулкит написан на языке С++ и распространяется под свободной лицензией , одобренной Фондом СПО и организацией OSI. Лицензия основана на LGPL и отличается позволением использования собственных условий для распространения производных работ в бинарной форме. Кроме разработки программ на Си/Си++ wxWidgets предоставляет биндинги для большинства популярных языков программирования, в том числе для , , и . В отличие от других тулкитов, wxWidgets обеспечивает для приложения по-настоящему родной для целевой системы внешний вид и методы взаимодействия, благодаря использованию системных API, а не имитации GUI.
Основные новшества:
- Новая сборочная система на базе CMake. В сборочную систему добавлена поддержка новых компиляторов (MSVC 2019, g++ 10) и операционных систем (macOS 10.14 и macOS 11 для ARM);
- Новый экспериментальный порт wxQt;
- Переработана поддержка OpenGL, улучшено использование новых версий OpenGL (3.2+);
- Добавлена поддержка событий для управляющих жестов, воспроизводимых при помощи мыши;
- В wxFont и wxGraphicsContext добавлена возможность указания нецелых значений при определении размера шрифтов и ширины светового пера;
- В wxStaticBox реализована возможность назначения произвольных меток окнам;
- Улучшена поддержка экранов с высокой плотностью пикселей (High DPI);
- Добавлена поддержка сжатия LZMA и файлов ZIP 64;
- Представлены новые классы: wxActivityIndicator, wxAddRemoveCtrl,
wxAppProgressIndicator, wxNativeWindow, wxPowerResourceBlocker,
wxSecretStore и wxTempFFile; - Добавлена поддержка заморозки столбцов и строк в wxGrid;
- Представлены новые методы: wxDataViewToggleRenderer::ShowAsRadio(), wxDateTime::
GetWeekBasedYear(), wxDisplay::GetPPI(), wxGrid::SetCornerLabelValue(),
wxHtmlEasyPrinting::SetPromptMode(), wxJoystickEvent::GetButtonOrdinal(),
wxListBox::GetTopItem(), wxProcess::Activate(), wxTextEntry::ForceUpper(), wxStandardPaths::GetUserDir(),
wxToolbook::EnablePage(), wxUIActionSimulator::Select(); - Внесены значительные улучшения в классы wxBusyInfo, wxDataViewCtrl,
wxNotificationMessage, wxStaticBox, wxStyledTextCtrl и wxUIActionSimulator; - Улучшено обеспечение безопасности на этапе компиляции, благодаря возможности отключения опасных неявных преобразований между строками с типами wxString и «char*».
- Обновлены все входящие в комплект сторонние библиотеки. Добавлена поддержка WebKit 2 и GStreamer 1.7;
- Внесены улучшения, связанные с поддержкой стандарта C++11. Добавлена поддержка сборки компиляторами C++20.
- Большое число исправлений в портах wxGTK3 и wxOSX/Cocoa.
Источник: opennet.ru
