Release of wxWidgets 3.1.4 graphical toolkit

Took place release of cross-platform toolkit wxWidgets 3.1.4, which allows you to create graphical interfaces for Linux, Windows, macOS, UNIX and mobile platforms. wxWidgets 3.1 is positioned as a development branch that develops new features for the next stable 3.2.0 release. Compared to the 3.0 branch, there are a number of incompatibilities at the API level and there is no guarantee that the ABI will be unchanged between 3.1.x interim releases.

The toolkit is written in C++ and distributed under a free license. wxWindows Library Licenseapproved by the Free Software Foundation and OSI. The license is based on the LGPL and is notable for allowing the use of its own terms to redistribute derivative works in binary form. In addition to developing C/C++ programs, wxWidgets provides bindings for most popular programming languages, including PHP, Python, Perl ΠΈ Ruby. Unlike other toolkits, wxWidgets provides the application with a truly native look and feel to the target system by using system APIs rather than GUI mimics.

Main innovations:

  • New build system based on CMake. Added support for new compilers (MSVC 2019, g++ 10) and operating systems (macOS 10.14 and macOS 11 for ARM) to the build system;
  • New experimental port of wxQt;
  • Reworked support for OpenGL, improved use of new versions of OpenGL (3.2+);
  • Added support for events for control gestures played with the mouse;
  • Added the ability to specify non-integer values ​​in wxFont and wxGraphicsContext when determining font size and light pen width;
  • wxStaticBox implements the ability to assign arbitrary labels to windows;
  • Improved support for screens with high pixel density (High DPI);
  • Added support for LZMA compression and ZIP 64 files;
  • New classes introduced: wxActivityIndicator, wxAddRemoveCtrl,
    wxAppProgressIndicator, wxNativeWindow, wxPowerResourceBlocker,
    wxSecretStore and wxTempFFile;

  • Added support for freezing columns and rows in wxGrid;
  • New methods introduced: wxDataViewToggleRenderer::ShowAsRadio(), wxDateTime::
    GetWeekBasedYear(), wxDisplay::GetPPI(), wxGrid::SetCornerLabelValue(),
    wxHtmlEasyPrinting::SetPromptMode(), wxJoystickEvent::GetButtonOrdinal(),
    wxListBox::GetTopItem(), wxProcess::Activate(), wxTextEntry::ForceUpper(), wxStandardPaths::GetUserDir(),
    wxToolbook::EnablePage(), wxUIActionSimulator::Select();
  • Significant improvements have been made to the wxBusyInfo, wxDataViewCtrl,
    wxNotificationMessage, wxStaticBox, wxStyledTextCtrl and wxUIActionSimulator;

  • Improved compile-time security with the ability to disable dangerous implicit conversions between wxString and "char*" strings.
  • Updated all included third-party libraries. Added support for WebKit 2 and GStreamer 1.7;
  • Improvements have been made to support the C++11 standard. Added support for assembly by C++20 compilers.
  • Lots of fixes in wxGTK3 and wxOSX/Cocoa ports.

Source: opennet.ru

Add a comment