wxWidgets 3.2.0 has already been released and these are its news

Recently the first release of a new branch was announced cross-platform toolkit stable wxWidgets 3.2.0, which allows you to create graphical interfaces for Linux, Windows, macOS, UNIX, and mobile platforms.

Compared to the 3.0 branch, there are a number of incompatibilities at the API level. Unlike other tool kits, wxWidgets provides a truly native looking application for the target system, using system API instead of simulating a GUI.

wxWidgets is best described as a native toolkit because provides a thin layer of abstraction to the native controls of a platform, contrary to the emulation of controls using primitive graphics. Using a native control on existing platforms allows us to achieve more native visual results for the graphical interface than other libraries such as Swing (for Java), as well as offering better performance and other benefits.

wxWidgets is not only restricted to the development of graphical interfaces, this because the library has a layer of communication inter-processes, functionalities for the network such as sockets, and much more.

Main new features of wxWidgets 3.2.0

In this new version that is presented, it is highlighted that implemented a new experimental port of wxQt, which allows wxWidgets to work on top of the Qt framework, while the wxGTK port provides full support for the Wayland protocol.

In addition to this, it is also highlighted that added support for screens with high pixel density (High DPI) and that added ability to assign different DPI for different monitors and change DPI dynamically, plus a new wxBitmapBundle API has been proposed that allows you to manipulate various bitmap options presented at different resolutions together.

Another change that stands out is that a new build system based on CMake has been proposed in which support for new compilers (including MSVS 2022, g++12, and clang 14) and operating systems were added to the build system.

The reworked OpenGL support, improved use of new versions of OpenGL (3.2+), plus support for LZMA compression and ZIP 64 archives was added.

On the other hand, it also highlights improved compile-time security with the ability to disable dangerous implicit conversions between strings of types wxString and "char*" and added support for events to control gestures played with the mouse.

In classes wxFont and wxGraphicsContext, added the ability to specify non-integer values when determining the font size and width of the stylus. The wxStaticBox class implements the ability to assign arbitrary labels to windows.

Of the others changes that stand out:

  • Support for HTTPS and HTTP/2 has been added to the wxWebRequest API.
  • Added support for freezing columns and rows in the wxGrid class.
  • Improved support for the macOS platform, including the ability to use a dark theme and additional support for devices based on ARM processors.
  • Enhancements have been made to support the C++11 standard. Added support for assembly by C++20 compilers.
  • All included third-party libraries have been updated. Added support for WebKit 2 and GStreamer 1.7.

Finally If you are interested in knowing more about it, you can check the details by going to the following link.

Download wxWidgets

For those who are interested in being able to download and install this toolkit, they can obtain the packages for the target operating system (Windows, Mac or Linux) from the official website in its download section

The link is this.

In the case of those who use Debian, Ubuntu or some derivative of these, they can compile by typing the following in the terminal.

sudo apt-get install libgtk-3-dev build-essential checkinstall

They proceed to unzip the package that they downloaded from the official website and enter the resulting folder. Here they can open a terminal positioned in the folder path or position themselves inside the folder in the terminal.

And we proceed to compile with:

mkdir gtk-build
cd gtk-build/
../configure --disable-shared --enable-unicode
make


Leave a Comment

Your email address will not be published. Required fields are marked with *

*

*

  1. Responsible for the data: Miguel Ángel Gatón
  2. Purpose of the data: Control SPAM, comment management.
  3. Legitimation: Your consent
  4. Communication of the data: The data will not be communicated to third parties except by legal obligation.
  5. Data storage: Database hosted by Occentus Networks (EU)
  6. Rights: At any time you can limit, recover and delete your information.