wxWidgets News2024-03-18T07:27:47+00:00https://www.wxwidgets.orgModern Icon Sets wxArtProvider Released2023-11-21T00:00:00+00:00/news/2023/11/modern-icon-sets-wxartprovider-released<p><a href="https://github.com/perazz">perazz</a> has released <a href="https://github.com/perazz/wxMaterialDesignArtProvider">wxMaterialDesignArtProvider</a>, a custom <code class="language-plaintext highlighter-rouge">wxArtProvider</code> class providing SVG-based icons from the <a href="https://github.com/marella/material-design-icons">Material Design</a>, <a href="https://github.com/simple-icons/simple-icons/tree/develop">SimpleIcons</a>, <a href="https://github.com/FortAwesome/Font-Awesome">FontAwesome</a> and <a href="https://github.com/microsoft/fluentui-system-icons">FluentUI system</a> datasets. All these datasets come with permissive licenses (MIT, CC BY 4.0, CC0 1.0, Apache 2.0) that should make it easy to embed it in new and existing projects.</p>
<p>All SVG icons are hardcoded into headers such that no external files are needed to build the art provider class. Each dataset belongs to a custom client (so that filled/outline versions can be used for hovering effects) and color customization is provided via a simple regex-based extension.</p>
<p>Hopefully this can be useful to people who want to make their existing wxWidgets applications access modern icon sets with limited effort.</p>
<p><img src="/blog/2023/11/21/modern-icon-sets-wxartprovider-released/wxMaterialDesignArtProvider_browser.png" class="img-fluid" alt="Screenshots of the wxMaterialDesignArtProvider sample browser in macOS and Windows" /></p>
wxWidgets 3.2.4 Released2023-11-11T00:00:00+00:00/news/2023/11/wxwidgets-3.2.4-released<p>Yet another release in the stable 3.2 series is now <a href="https://github.com/wxWidgets/wxWidgets/releases/tag/v3.2.4">available on GitHub</a>.
You will find there archives with the library sources and
documentation as well as binaries for the selected Windows compilers such as
<a href="https://visualstudio.microsoft.com/">Microsoft Visual C++</a>,
<a href="https://mingw-w64.org/">MinGW-w64</a> and
<a href="https://jmeubank.github.io/tdm-gcc/">TDM-GCC</a>. You can also read the
<a href="https://docs.wxwidgets.org/3.2.4/">updated documentation</a> for this version and, in particular, if you’re
new to wxWidgets, you may find the <a href="https://docs.wxwidgets.org/3.2.4/overview_install.html">installation guide</a> a good starting
point.</p>
<h3 id="changes-since-323">Changes since 3.2.3</h3>
<p>This release comes very soon after 3.2.3 because some of the changes
in the last release resulted in regressions fixed by this release.
Notably, 3.2.4 fixes a critical bug which made applications using wxGTK
but not initializing the GUI to crash (see issue <a href="https://github.com/wxWidgets/wxWidgets/issues/23981">#23981</a>).</p>
<p>Other bug fixes include:</p>
<ul>
<li>Fix regression in <code class="language-plaintext highlighter-rouge">wxTranslations::AddCatalog()</code> return value (<a href="https://github.com/wxWidgets/wxWidgets/issues/24019">#24019</a>).</li>
<li>Fix possible crash and too high CPU use when using EGL (<a href="https://github.com/wxWidgets/wxWidgets/issues/24018">#24018</a>).</li>
<li>Fix losing clipboard contents when clearing a different selection (<a href="https://github.com/wxWidgets/wxWidgets/issues/23988">#23988</a>).</li>
<li>Fix possible crash when dragging pages in <code class="language-plaintext highlighter-rouge">wxAuiNotebook</code> (<a href="https://github.com/wxWidgets/wxWidgets/issues/24027">#24027</a>).</li>
<li>Fix refreshing multiple selection items in generic <code class="language-plaintext highlighter-rouge">wxListCtrl</code>.</li>
<li>Fix showing windows for background apps under macOS Sonoma (<a href="https://github.com/wxWidgets/wxWidgets/issues/23893">#23893</a>).</li>
</ul>
<p>The only new addition in this release is the possibility to create objects
of wx legacy “dynamic arrays” class from <code class="language-plaintext highlighter-rouge">std::initializer_list<></code> (<a href="https://github.com/wxWidgets/wxWidgets/issues/23966">#23966</a>).</p>
<p>Please see the full <a href="https://raw.githubusercontent.com/wxWidgets/wxWidgets/v3.2.4/docs/changes.txt">change log</a> for more details.</p>
<p>This release is API and ABI-compatible with the previous 3.2.x releases, so
the existing applications don’t even need to be rebuilt to profit from all the
fixes above if they use shared/dynamic libraries. And if they do need to be
recompiled, this can be done without any changes to the code.</p>
<h3 id="feedback">Feedback</h3>
<p>Please let us know about your experience with this release via any of the
following channels:</p>
<ul>
<li><a href="https://www.wxwidgets.org/support/mailing-lists/">Mailing lists</a></li>
<li><a href="https://forums.wxwidgets.org/">Discussion forums</a></li>
<li><a href="https://www.wxwidgets.org/support/irc/">#wxwidgets IRC Channel</a></li>
<li><a href="https://stackoverflow.com/questions/tagged/wxwidgets">Stack Overflow</a></li>
</ul>
<p>or by commenting under this post.</p>
<p>Thanks to all contributors to this release and we hope that you will enjoy
working with it!</p>
MFC Porting Guide2023-10-12T00:00:00+00:00/news/2023/10/mfc-porting-guide<p>Utah C++ Programmers group has released a new video about <a href="https://www.youtube.com/watch?v=f3wgn6vP_XQ">porting from MFC to
wxWidgets</a> accompanied by a gist with a <a href="https://gist.github.com/LegalizeAdulthood/4ada76ae95f11fffab04dc7f81a20646#porting-from-mfc-to-wxwidgets">step-by-step guide</a>.</p>
<p>Hopefully this can be useful to people who want to make their existing MFC
applications portable or just to switch to a more actively maintained
framework.</p>
wxWidgets 3.2.3 Released2023-10-10T00:00:00+00:00/news/2023/10/wxwidgets-3.2.3-released<p>Latest release in the stable 3.2 series is now <a href="https://github.com/wxWidgets/wxWidgets/releases/tag/v3.2.3">available on GitHub</a>.
You will find there archives with the library sources and
documentation as well as binaries for the selected Windows compilers such as
<a href="https://visualstudio.microsoft.com/">Microsoft Visual C++</a>,
<a href="https://mingw-w64.org/">MinGW-w64</a> and
<a href="https://jmeubank.github.io/tdm-gcc/">TDM-GCC</a>. You can also read the
<a href="https://docs.wxwidgets.org/3.2.3/">updated documentation</a> for this version and, in particular, if you’re
new to wxWidgets, you may find the <a href="https://docs.wxwidgets.org/3.2.3/overview_install.html">installation guide</a> a good starting
point.</p>
<h3 id="changes-since-322">Changes since 3.2.2</h3>
<p>This release contains many important bug fixes, including for some
regressions in the previous 3.2.x releases, as well as build system
improvements and a few optimizations.</p>
<p>Without listing all of them, areas with the most improvements were:</p>
<ul>
<li>
<p>Internationalization support: fix setting Chinese and some other
locales in wxOSX and setting Ukrainian locale in wxMSW and fix loading
wxWidgets translations with <code class="language-plaintext highlighter-rouge">wxTranslations::AddStdCatalog()</code>.</p>
</li>
<li>
<p>Wayland support in wxGTK and, in particular, OpenGL support under
Wayland: fix hiding <code class="language-plaintext highlighter-rouge">wxGLCanvas</code> and avoid catastrophically slowing
down the entire program when it is hidden; fix crash when using IME;
fixes to popup windows, menus and <code class="language-plaintext highlighter-rouge">wxPreferencesEditor</code> behaviour.</p>
</li>
<li>
<p>Validators and input: don’t allow pasting characters forbidden by
<code class="language-plaintext highlighter-rouge">wxTextValidator</code>; do allow entering temporary invalid value when using
numeric validators. Also fix entering dates in <code class="language-plaintext highlighter-rouge">wxGenericDatePicker</code> in
<code class="language-plaintext highlighter-rouge">"nb_NO"</code> and other locales using months names in short date format.</p>
</li>
<li>
<p>Key event generation: more fixes for non-US keyboard layout in wxGTK
and also generate events for Command+Alt+Letter combination in wxOSX.</p>
</li>
</ul>
<p>All in all, this release includes more than 200 fixes from almost 50
contributors, please see the full <a href="https://raw.githubusercontent.com/wxWidgets/wxWidgets/v3.2.3/docs/changes.txt">change log</a> for more details.</p>
<p>This release is API and ABI-compatible with the previous 3.2.x releases, so
the existing applications don’t even need to be rebuilt to profit from all the
fixes above if they use shared/dynamic libraries. And if they do need to be
recompiled, this can be done without any changes to the code.</p>
<h3 id="feedback">Feedback</h3>
<p>Please let us know about your experience with this release via any of the
following channels:</p>
<ul>
<li><a href="https://www.wxwidgets.org/support/mailing-lists/">Mailing lists</a></li>
<li><a href="https://forums.wxwidgets.org/">Discussion forums</a></li>
<li><a href="https://www.wxwidgets.org/support/irc/">#wxwidgets IRC Channel</a></li>
<li><a href="https://stackoverflow.com/questions/tagged/wxwidgets">Stack Overflow</a></li>
</ul>
<p>or by commenting under this post.</p>
<p>Thanks to all contributors to this release and we hope that you will enjoy
working with it!</p>
wxWidgets 3.2.2.1 Released2023-02-13T00:00:00+00:00/news/2023/02/wxwidgets-3.2.2.1-released<p>The very recent 3.2.2 release unfortunately contained a user-visible
regression in <code class="language-plaintext highlighter-rouge">wxGenericTreeCtrl</code>, which <a href="https://github.com/wxWidgets/wxWidgets/issues/23255">stopped showing icons</a>, so we had
to make a <a href="https://github.com/wxWidgets/wxWidgets/releases/tag/v3.2.2.1">hotfix release</a> fixing this problem.</p>
<p>There are no other changes in 3.2.2.1 compared to 3.2.2.</p>
wxWidgets 3.2.2 Released2023-02-08T00:00:00+00:00/news/2023/02/wxwidgets-3.2.2-released<p>Latest release in the stable 3.2 series is now <a href="https://github.com/wxWidgets/wxWidgets/releases/tag/v3.2.2">available on GitHub</a>.
You will find there archives with the library sources and
documentation as well as binaries for the selected Windows compilers such as
<a href="https://visualstudio.microsoft.com/">Microsoft Visual C++</a>,
<a href="https://mingw-w64.org/">MinGW-w64</a> and
<a href="https://jmeubank.github.io/tdm-gcc/">TDM-GCC</a>. You can also read the
<a href="https://docs.wxwidgets.org/3.2.2/">updated documentation</a> for this version and, in particular, if you’re
new to wxWidgets, you may find the <a href="https://docs.wxwidgets.org/3.2.2/overview_install.html">installation guide</a> a good starting
point.</p>
<h3 id="changes-since-321">Changes since 3.2.1</h3>
<p>This release comes only a few months after the previous 3.2.1, but contains
an important number of bug fixes and enhancements, further improving high DPI
support, including:</p>
<ul>
<li>Better window resizing on DPI change in wxMSW.</li>
<li>Fix using native icons returned by <code class="language-plaintext highlighter-rouge">wxArtProvider</code>.</li>
<li>Fix menu items using custom font in high DPI.</li>
<li>High resolution icons support in <code class="language-plaintext highlighter-rouge">wxGenericTreeCtrl</code> and <code class="language-plaintext highlighter-rouge">wxGenericListCtrl</code>.</li>
</ul>
<p>and also improving locale-related code under Mac and Unix systems:</p>
<ul>
<li><code class="language-plaintext highlighter-rouge">wxUILocale::UseDefault()</code> works for locales using different language and
region under Mac and fails when used for unsupported locale under Unix.</li>
<li>New <code class="language-plaintext highlighter-rouge">wxUILocale::GetSystemLocaleId()</code> allows to retrieve such locales IDs.</li>
<li><code class="language-plaintext highlighter-rouge">wxUILocale::GetCurrent()</code> works currently for “C” locale under Mac.</li>
</ul>
<p>Some other user-visible enhancements made in this release:</p>
<ul>
<li>Allow selecting and copying text in <code class="language-plaintext highlighter-rouge">wxMessageDialog</code> in wxGTK.</li>
<li>Improve size and behaviour of in-place editor in <code class="language-plaintext highlighter-rouge">wxGenericTreeCtrl</code>.</li>
<li>Fix sometimes missing overwrite prompt in “Save” file dialog in wxMSW.</li>
<li>Fix glitch in drawing wxStaticBox with a control as label in wxMSW.</li>
</ul>
<p>There are also some important bug fixes:</p>
<ul>
<li>Fix regression in saving TIFF images that could end up truncated.</li>
<li>Fix long standing bug in parsing wxHTTP responses.</li>
<li>Fix data race when processing events generated in a worker thread.</li>
<li>Avoid appending extraneous NUL bytes to <code class="language-plaintext highlighter-rouge">wxTextDataObject</code> text in wxMSW.</li>
<li>Fix handling of fonts with fractional sizes in wxOSX.</li>
<li>Fix resizing <code class="language-plaintext highlighter-rouge">wxGLCanvas</code> with EGL and Wayland in wxGTK.</li>
<li>Fix display artefacts when using AUI without compositor under X11.</li>
<li>Work around crashes when using <code class="language-plaintext highlighter-rouge">wxTextCtrl</code> with MinGW TDM 64.</li>
<li>Fix for a possible crash when handling menu events under Mac.</li>
<li>Third-party libraries have been updated to the latest versions.</li>
</ul>
<p>All in all, this release includes ~150 fixes from 27 unique contributors,
please see the full <a href="https://raw.githubusercontent.com/wxWidgets/wxWidgets/v3.2.2/docs/changes.txt">change log</a> for more details.</p>
<p>This release is API and ABI-compatible with the previous 3.2.x releases, so
the existing applications don’t even need to be rebuilt to profit from all the
fixes above if they use shared/dynamic libraries. And if they do need to be
recompiled, this can be done without any changes to the code.</p>
<h3 id="feedback">Feedback</h3>
<p>Please let us know about your experience with this release via any of the
following channels:</p>
<ul>
<li><a href="https://www.wxwidgets.org/support/mailing-lists/">Mailing lists</a></li>
<li><a href="https://forums.wxwidgets.org/">Discussion forums</a></li>
<li><a href="https://www.wxwidgets.org/support/irc/">#wxwidgets IRC Channel</a></li>
<li><a href="https://stackoverflow.com/questions/tagged/wxwidgets">Stack Overflow</a></li>
</ul>
<p>or by commenting under this post.</p>
<p>Thanks to all contributors to this release and we hope that you will enjoy
working with it!</p>
wxWidgets 3.2.1 Released2022-09-09T00:00:00+00:00/news/2022/09/wxwidgets-3.2.1-released<p>The second release in the recently started 3.2 series is now <a href="https://github.com/wxWidgets/wxWidgets/releases/tag/v3.2.1">available on GitHub</a>.
You will find there archives with the library sources and
documentation as well as binaries for the selected Windows compilers such as
<a href="https://visualstudio.microsoft.com/">Microsoft Visual C++</a>,
<a href="https://mingw-w64.org/">MinGW-w64</a> and
<a href="https://jmeubank.github.io/tdm-gcc/">TDM-GCC</a>. You can also read the
<a href="https://docs.wxwidgets.org/3.2.1/">updated documentation</a> for this version and, in particular, if you’re
new to wxWidgets, you may find the <a href="https://docs.wxwidgets.org/3.2.1/overview_install.html">installation guide</a> a good starting
point.</p>
<h3 id="changes-in-this-release">Changes in this release</h3>
<p>Coming soon after 3.2.0, this is mostly a bug fix release, with just one
noteworthy new feature: the addition of <a href="https://docs.wxwidgets.org/3.2.1/classwx_file_dialog.html#aea928653b970543bc3585a028800f9e8">wxFileDialog::AddShortcut()</a> function.
However it fixes some important regressions and other problems:</p>
<ul>
<li>Fix crash in applications calling <code class="language-plaintext highlighter-rouge">g_log_set_writer_func()</code> with recent glib.</li>
<li>Several fixes to alpha channel handling in wxMSW bitmaps.</li>
<li>Generate key and focus events for <code class="language-plaintext highlighter-rouge">wxSearchCtrl</code> in wxOSX.</li>
<li>Fix creating wxRadioBox without any items in wxOSX.</li>
<li>Fix regression with AUI floating pane positioning.</li>
<li>Avoid new warnings given by gcc 12.</li>
<li>Fix building with MSVS 2022 standard-conforming preprocessor.</li>
<li>Work around MSVS 2022 optimizer bug that broke <code class="language-plaintext highlighter-rouge">wxImage</code> resizing.</li>
<li>NetBSD build fixes.</li>
</ul>
<p>Please see the <a href="https://raw.githubusercontent.com/wxWidgets/wxWidgets/v3.2.1/docs/changes.txt">full change log</a> for more details.</p>
<p>This release is API and ABI-compatible with 3.2.0, so the existing
applications don’t even need to be rebuilt to profit from all the fixes
above if they use shared/dynamic libraries. And if they do need to be
recompiled, this can be done without any changes to the code.</p>
<h3 id="feedback">Feedback</h3>
<p>Please let us know about your experience with this release via any of the
following channels:</p>
<ul>
<li><a href="https://www.wxwidgets.org/support/mailing-lists/">Mailing lists</a></li>
<li><a href="https://forums.wxwidgets.org/">Discussion forums</a></li>
<li><a href="https://www.wxwidgets.org/support/irc/">#wxwidgets IRC Channel</a></li>
<li><a href="https://stackoverflow.com/questions/tagged/wxwidgets">Stack Overflow</a></li>
</ul>
<p>or by commenting under this post.</p>
<p>Thanks to all contributors to this release and we hope that you will enjoy
working with it!</p>
wxWidgets 3.2.0 Released2022-07-07T00:00:00+00:00/news/2022/07/wxwidgets-3.2.0-final-release<p>After almost 9 years since the beginning of the last wxWidgets stable release
series, the first release in the new stable 3.2 series is finally <a href="https://github.com/wxWidgets/wxWidgets/releases/tag/v3.2.0">available
on GitHub</a>. You will find there archives with the library sources and
documentation as well as binaries for the selected Windows compilers such as
<a href="https://visualstudio.microsoft.com/">Microsoft Visual C++</a>,
<a href="https://mingw-w64.org/">MinGW-w64</a> and
<a href="https://jmeubank.github.io/tdm-gcc/">TDM-GCC</a>. You can also read the
<a href="https://docs.wxwidgets.org/3.2.0/">updated documentation</a> for this version and, in particular, if you’re
new to wxWidgets, you may find the <a href="https://docs.wxwidgets.org/3.2.0/overview_install.html">installation guide</a> a good starting
point.</p>
<h3 id="changes-in-this-release">Changes in this release</h3>
<p>This release is a culmination of many years of development since the
last stable 3.0 release. It contains more than 15,000 commits from more
than 400 unique contributors (including more than 200 with multiple
contributions) and has too many improvements to list them all here, but
here is a maximally condensed summary of the most important ones:</p>
<ul>
<li>Build system improvements: support for new compilers (up to MSVS 2022,
g++ 12, clang 14) with an even simpler way of using wxWidgets from
MSVS, with <code class="language-plaintext highlighter-rouge">wxwidgets.props</code> file, as well as an entirely new CMake build
system.</li>
<li>Support for native dark mode under macOS 10.14 and later, support for
ARM hardware and macOS versions up to 13.</li>
<li>High DPI support with the new, but almost perfectly backwards-
compatible, API based on <a href="https://docs.wxwidgets.org/3.2.0/classwx_bitmap_bundle.html">wxBitmapBundle</a>, including per-monitor DPI and
dynamic DPI changes.</li>
<li>New features: HTTPS and HTTP/2 support with <a href="https://docs.wxwidgets.org/3.2.0/classwx_web_request.html">wxWebRequest</a> and friends;
support for freezing rows/columns in wxGrid; mouse gesture events
(GSoC 2017 project); non-integer font sizes and arbitrary font weights
in wxFont; fractional pen widths in wxGraphicsContext; arbitrary label
windows in wxStaticBox; markup in wxDataViewCtrl items text; support
for ZIP 64 files; LZMA compression; much improved accessibility
support under MSW; new Edge-based wxWebView implementation; support for
using native spell-checking in wxTextCtrl; new PCRE-based wxRegEx.</li>
<li>New classes: wxActivityIndicator, wxAddRemoveCtrl, wxAppProgressIndicator,
wxBitmapBundle, wxNativeWindow, wxPersistentComboBox,
wxPowerResourceBlocker, wxSecretStore, wxTempFFile, wxUILocale and many new
features in the existing classes.</li>
<li>New XRC handlers for all the new and some of the existing classes.</li>
<li>Significant improvements to: wxBusyInfo, wxDataViewCtrl, wxDirDialog, wxGrid,
wxNotificationMessage, wxSpinCtrl, wxStaticBox, wxStyledTextCtrl,
wxUIActionSimulator.</li>
<li>Improvements to compile-time safety with the possibility to disable dangerous
implicit conversions between wxString and <code class="language-plaintext highlighter-rouge">char*</code> strings.</li>
<li>Latest versions of all bundled 3rd party libraries, including all the
security fixes and support for WebKit 2 and GStreamer 1.7 under Unix.</li>
<li>Better, even if still perfectible, Wayland support in wxGTK.</li>
<li>Revamped OpenGL support better suited to modern OpenGL (3.2+).</li>
<li>Further C++11 and later support improvements, wxWidgets can be built using
C++20 compilers.</li>
<li>New experimental wxQt port.</li>
<li>Many, many bug fixes.</li>
</ul>
<p>Note that in spite of all these changes, wxWidgets 3.2.0 is almost fully
compatible with wxWidgets 3.0 and updating the existing applications to
use it shouldn’t require much effort. But please do read the (relatively
short) section listing the incompatible changes in the beginning of the
<a href="https://raw.githubusercontent.com/wxWidgets/wxWidgets/v3.2.0/docs/changes.txt">change log file</a> if you’re upgrading from a previous wxWidgets version.</p>
<h3 id="feedback">Feedback</h3>
<p>Please let us know about your experience with this release via any of the
following channels:</p>
<ul>
<li><a href="https://www.wxwidgets.org/support/mailing-lists/">Mailing lists</a></li>
<li><a href="https://forums.wxwidgets.org/">Discussion forums</a></li>
<li><a href="https://www.wxwidgets.org/support/irc/">#wxwidgets IRC Channel</a></li>
<li><a href="https://stackoverflow.com/questions/tagged/wxwidgets">Stack Overflow</a></li>
</ul>
<p>Or by commenting under this post.</p>
<p>Thanks to everybody who <a href="https://docs.wxwidgets.org/3.2.0/page_copyright.html">has contributed</a> to this release and we hope that
you will enjoy working with it!</p>
wxWidgets 3.2.0 Release Candidate2022-06-27T00:00:00+00:00/news/2022/06/wxwidgets-3.2.0-release-candidate<p>wxWidgets 3.2.0 release candidate is now <a href="https://github.com/wxWidgets/wxWidgets/releases/tag/v3.2.0-rc1">available on GitHub</a>.
This release is not perfect (we might need a few more years for this), but if
no catastrophic problems are discovered, it will soon officially become 3.2.0,
starting the next ABI-stable release series – the first one since the release
of 3.0.0 almost 9 years ago.</p>
<p>Please help us with testing this release by <a href="https://github.com/wxWidgets/wxWidgets/releases/tag/v3.2.0-rc1">reporting any problems</a>,
especially new ones, in it, so that we could still fix them before the final
3.2.0, without waiting for another decade to do it in 3.4.0. Thanks in advance!</p>
wxWidgets 3.1.7 Released2022-06-06T00:00:00+00:00/news/2022/06/wxwidgets-3.1.7-released<p>wxWidgets 3.1.7 release is now
<a href="https://github.com/wxWidgets/wxWidgets/releases/tag/v3.1.7">available on GitHub</a>.
You will find there archives with the library sources and documentation as
well as binaries for the selected Windows compilers such as <a href="https://visualstudio.microsoft.com/">Microsoft Visual
C++</a>, <a href="https://mingw-w64.org/">MinGW-w64</a>
and <a href="https://jmeubank.github.io/tdm-gcc/">TDM-GCC</a>.</p>
<p>Please notice that while 3.1.7 is officially a “development” version because
it is not fully compatible with the “stable” 3.0.x, the list of backwards
incompatible changes is very short, so you shouldn’t have any problems
updating to this version from 3.0.x in practice, and you’re encouraged to use
this release, including in production.</p>
<p>This is also the last release before the upcoming 3.2.0 release that will be
the start of a new API and ABI-stable wxWidgets version, so please test your
existing applications with this version and let us know about any problems
and, especially, regressions, so that they could still be fixed before 3.2.0.</p>
<h3 id="changes-in-this-release">Changes in this release</h3>
<p>This release, coming only two months after the previous one, mostly
contains bug fixes and incremental improvements in preparation for 3.2.0
major release. There is still quite a number of them, with more than 500
commits from 37 unique contributors, but the most important changes are:</p>
<ul>
<li>CMake build system improvements (better precompiled headers support).</li>
<li>New <a href="https://docs.wxwidgets.org/3.1.7/classwx_file_dialog_customize_hook.html">wxFileDialog customization API</a> working with <code class="language-plaintext highlighter-rouge">IFileDialog</code> in wxMSW.</li>
<li>Many updated translations and new <a href="https://docs.wxwidgets.org/3.1.7/translation_8h.html#aa328f9b9a221bd2f4cbc47b195ebd351">wxTRANSLATE_IN_CONTEXT()</a>.</li>
<li>Fixes for bad interactions with new macOS 12 features in wxOSX.</li>
<li>Several previously missing attributes added to multiple XRC handlers.</li>
<li>Row reordering by dragging and UI enhancements in <code class="language-plaintext highlighter-rouge">wxGrid</code>.</li>
<li>Ability to suppress selected (or all) GTK warning messages in wxGTK.</li>
<li>And many, many bugs fixes, including for the regressions in 3.1.6.</li>
</ul>
<p>Please see the <a href="https://raw.githubusercontent.com/wxWidgets/wxWidgets/v3.1.7/docs/changes.txt">fuller changelog</a> for more (but still not all) details.</p>
<h3 id="feedback">Feedback</h3>
<p>Please let us know about your experience with this release via any of the
following channels:</p>
<ul>
<li><a href="https://www.wxwidgets.org/support/mailing-lists/">Mailing lists</a></li>
<li><a href="https://forums.wxwidgets.org/">Discussion forums</a></li>
<li><a href="https://www.wxwidgets.org/support/irc/">#wxwidgets IRC Channel</a></li>
<li><a href="https://stackoverflow.com/questions/tagged/wxwidgets">Stack Overflow</a></li>
</ul>
<p>Or by commenting under this post.</p>
<p>Thanks to everybody who has contributed to this release and we hope that you
will enjoy working with it!</p>
wxWidgets 3.1.6 Released2022-04-04T00:00:00+00:00/news/2022/04/wxwidgets-3.1.6-released<p>wxWidgets 3.1.6 release is now
<a href="https://github.com/wxWidgets/wxWidgets/releases/tag/v3.1.6">available on GitHub</a>.
You will find there archives with the library sources and documentation as
well as binaries for the selected Windows compilers such as <a href="https://visualstudio.microsoft.com/">Microsoft Visual
C++</a>, <a href="https://mingw-w64.org/">MinGW-w64</a>
and <a href="https://jmeubank.github.io/tdm-gcc/">TDM-GCC</a>.</p>
<p>Please notice that while 3.1.6 is officially a “development” version because
it is not fully compatible with the “stable” 3.0.x, the list of backwards
incompatible changes is very short, so you shouldn’t have any problems
updating to this version from 3.0.x in practice, and you’re encouraged to use
this release, including in production.</p>
<p>This is also the last release before the upcoming 3.2.0 release that will be
the start of a new API and ABI-stable wxWidgets version, so please test your
existing applications with this version and let us know about any problems
and, especially, regressions, so that they could still be fixed before 3.2.0.</p>
<h3 id="changes-in-this-release">Changes in this release</h3>
<p>In almost a year since the previous release, there have been more than 1700
commits from 82 unique contributors (41 with multiple contributions), so it is
impossible to summarize all the changes in this document without making it too
long, please see the <a href="https://raw.githubusercontent.com/wxWidgets/wxWidgets/v3.1.6/docs/changes.txt">fuller changelog</a> for more (but still not all)
details, but some of the most important changes are:</p>
<ul>
<li>New <a href="https://docs.wxwidgets.org/3.1.6/classwx_bitmap_bundle.html">wxBitmapBundle</a> class allowing to provide art work for both normal
and high DPI in a simple way.</li>
<li>New <a href="https://docs.wxwidgets.org/3.1.6/classwx_u_i_locale.html">wxUILocale</a> class replacing the old (but still available) wxLocale,
but not suffering from its multiple problems and providing more
functionality.</li>
<li>Support for using native spell-checking in wxTextCtrl.</li>
<li>Support for undo/redo in wxTextCtrl in wxOSX.</li>
<li>Better drag-and-drop implementation in wxOSX.</li>
<li>Fixes for important bugs in wxDataViewCtrl under all platforms.</li>
<li>Many improvements and bug fixes for Wayland support in wxGTK.</li>
<li>Support for the latest OS versions (Windows 11, macOS 12) and compilers (MSVS
2022, gcc 12, clang 13).</li>
<li>Project bug tracker has been moved to GitHub Issues.</li>
</ul>
<p>Notice that in spite of all the changes, this release remains almost completely
compatible with 3.1.5 at the API level, so upgrading to it if you’re already
using wxWidgets 3.1 should be straightforward.</p>
<h3 id="feedback">Feedback</h3>
<p>Please let us know about your experience with this release via any of the
following channels:</p>
<ul>
<li><a href="https://www.wxwidgets.org/support/mailing-lists/">Mailing lists</a></li>
<li><a href="https://forums.wxwidgets.org/">Discussion forums</a></li>
<li><a href="https://www.wxwidgets.org/support/irc/">#wxwidgets IRC Channel</a></li>
<li><a href="https://stackoverflow.com/questions/tagged/wxwidgets">Stack Overflow</a></li>
</ul>
<p>Or by commenting under this post.</p>
<p>Thanks to everybody who has contributed to this release and we hope that you
will enjoy working with it!</p>
Goodbye Trac2022-01-12T00:00:00+00:00/news/2022/01/goodbye-trac<p>After almost 15 years of using <a href="https://trac.edgewall.org/">Trac</a> as our bug tracker (thank you Trac
developers for providing the tool that was so helpful for us during all these
years!), we’ve just migrated all the tickets from it to <a href="https://github.com/wxWidgets/wxWidgets/issues/">GitHub Issues</a>.
Most of the existing issues, with the exception of the very old ones, have
kept their existing numbers, so instead of
<code class="language-plaintext highlighter-rouge">https://trac.wxwidgets.org/ticket/NNNNN</code> you can simply use
<code class="language-plaintext highlighter-rouge">https://github.com/wxWidgets/wxWidgets/issues/NNNNN</code> now and we will
probably put in place an automatic redirect from the former to the latter
soon. And to report new issues, please go to
<a href="https://github.com/wxWidgets/wxWidgets/issues/new/">https://github.com/wxWidgets/wxWidgets/issues/new/</a></p>
<p>There are many advantages of using GitHub Issues instead of our own Trac
installation, e.g. GitHub web UI is easier to use and much faster. And you
also don’t need to create, or use, a separate account, as was the case for
wxTrac. However this is also the main disadvantage of this change: you now
need to have a GitHub account in order to report issues in wxWidgets. We
hope that relatively few people will be negatively affected by this, but for
those who are, please post your bug reports to <a href="https://www.wxwidgets.org/support/mailing-lists/">our mailing lists</a> instead.</p>
<p>And please also use the mailing lists to let us know if you encounter any
problems after this migration!</p>
Roundup of the Recent Changes2021-10-30T00:00:00+00:00/news/2021/10/roundup-of-the-recent-changes<p>A quick overview of the recent changes and improvements in wxWidgets: since
3.1.5, quite a few things have happened and this post provides a summary of
the last 6 months.</p>
<p>The most important one is the addition of <a href="https://docs.wxwidgets.org/trunk/classwx_bitmap_bundle.html">wxBitmapBundle class</a> class,
which allows to provide several versions of the same bitmap, including the
default (used at 100% DPI, i.e. without DPI scaling at all) and
high-resolution one (used at 200% DPI scaling) as well as more variants for
the intermediate scaling factors, if necessary, and let wxWidgets
automatically select the best version to use and switch between them if the
DPI scaling changes, as it happens when moving the window between displays
using different DPI. Note that the new API is 100% backwards-compatible with
the existing one, i.e. all the existing code will continue to work and if you
provide just a single bitmap, it will be upscaled to the expected size, just
as before. But now you can also easily provide your own high resolution
version to avoid the bitmaps in your application looking blurry in high DPI.
This already works today with <code class="language-plaintext highlighter-rouge">wxButton</code> (and all the derived classes),
<code class="language-plaintext highlighter-rouge">wxStaticBitmap</code> and <code class="language-plaintext highlighter-rouge">wxToolBar</code> and all the other classes using bitmaps will
support the new API in wx 3.1.6.</p>
<p>Moreover, as a side-effect of this work, it is now possible to use SVG images
everywhere where <code class="language-plaintext highlighter-rouge">wxBitmap</code> is used with <a href="https://docs.wxwidgets.org/trunk/classwx_bitmap_bundle.html#ad7add757fd27af9ad000750cef9c61f9">wxBitmapBundle::FromSVG()</a>,
thanks to <a href="https://github.com/memononen/nanosvg">Nano SVG</a> library integration.</p>
<p>The next big addition to the API is the <a href="https://docs.wxwidgets.org/trunk/classwx_u_i_locale.html">wxUILocale class</a>, which provides
a new and more flexible way to get locale-specific information than the old
<code class="language-plaintext highlighter-rouge">wxLocale</code>. Notably, the new class doesn’t rely on the – quite naive, in
retrospect – assumption that the standard C <code class="language-plaintext highlighter-rouge">setlocale()</code> function actually
works, which allows it to work correctly under the recent macOS, where C
locale cannot be used at all, due to bugs in Apple code. It also uses <a href="https://docs.wxwidgets.org/trunk/classwx_u_i_locale.html">BCP
47-like</a> identifiers for the locale instead of <code class="language-plaintext highlighter-rouge">wxLanguage</code> enum, which
allows it to cover all the languages supported by the OS and not just those
known to wxWidgets, and provides a new <a href="https://docs.wxwidgets.org/trunk/classwx_u_i_locale.html#ab8614302394aa5f3dafddd39fd2aeab7">CompareString() function</a> which
compares strings using language-specific rules. It is recommended to use this
class rather than <code class="language-plaintext highlighter-rouge">wxLocale</code> in all new code, especially for applications
targeting macOS, as using the old class results in a <a href="https://trac.wxwidgets.org/ticket/19023">bad bug</a> under macOS
10.15 or newer.</p>
<p>Other new features include:</p>
<ul>
<li>Add support for using native spell checking in <code class="language-plaintext highlighter-rouge">wxTextCtrl</code>.</li>
<li>Add XRC handler for <code class="language-plaintext highlighter-rouge">wxStyledTextCtrl</code>.</li>
<li>Implement support for undo/redo for <code class="language-plaintext highlighter-rouge">wxTextCtrl</code> in wxOSX.</li>
<li>Add <code class="language-plaintext highlighter-rouge">wxImage::Change{Saturation,Brightness,HSV,Lightness}()</code>.</li>
<li>Add <code class="language-plaintext highlighter-rouge">wxKeyEvent::IsAutoRepeat()</code>.</li>
<li>Add <code class="language-plaintext highlighter-rouge">wxSpinCtrl::GetTextValue()</code>.</li>
</ul>
<p>There have a few updates for the new compiler versions and other modernizations:</p>
<ul>
<li>wxWidgets headers have been updated to not produce any warnings when
compiling in C++20 mode with gcc 11 and clang 12.</li>
<li>MSVS 2022 is now supported.</li>
<li>Variadic functions such as <code class="language-plaintext highlighter-rouge">wxPrintf()</code> and <code class="language-plaintext highlighter-rouge">wxLogXXX()</code> now support
<code class="language-plaintext highlighter-rouge">std::string_view</code> arguments too.</li>
<li>wxMSW uses (quite old) Winsock 2 by default rather than the (absolutely
ancient) Winsock 1.</li>
</ul>
<p>A few optimizations as well:</p>
<ul>
<li><code class="language-plaintext highlighter-rouge">wxMBConv</code> was significantly sped up under Unix systems.</li>
<li>Creating standard system fonts is now much faster in wxOSX.</li>
</ul>
<p>And other than that, there were all the usual minor improvements and bug fixes:</p>
<ul>
<li><code class="language-plaintext highlighter-rouge">wxMediaCtrl</code> in wxGTK now works when using Wayland too.</li>
<li>Fix key event generation in <code class="language-plaintext highlighter-rouge">wxDataViewCtrl</code>.</li>
<li>Improve handling printer settings in wxMSW and wxGTK.</li>
<li>Fix mouse events when using touch events in wxGTK.</li>
<li>Fix <code class="language-plaintext highlighter-rouge">wxDC::Blit()</code> when using RTL layout in wxMSW.</li>
<li>Improve <code class="language-plaintext highlighter-rouge">wxSpinCtrlDouble</code> significant digits handling.</li>
<li>Several bug fixes in the long-neglected wxUniv port.</li>
</ul>
<p>That’s all for this “brief” summary, please don’t hesitate to try the new
features and let us know if you have any questions about them or if you find
any problems, so that they could be fixed before the upcoming 3.2.0 release.</p>
<p>Thanks in advance!</p>
IRC Channel Moving to Libera.Chat2021-05-31T00:00:00+00:00/news/2021/05/irc-channel-moving-to-libera-chat<p>As many of you might have heard, the Freenode IRC network changed management a
week ago, in what can only be described as a hostile takeover. The original
Freenode staff that has taken great care of us for about two decades now have
all resigned from Freenode, and created <a href="https://libera.chat/">Libera.Chat</a>, which we have
decided to migrate to. This decision aligns with hundreds other open source
projects making the same migration now, including <a href="https://lists.ubuntu.com/archives/ubuntu-irc/2021-May/001927.html">Ubuntu</a>, <a href="https://www.gentoo.org/news/2021/05/23/Moving-to-Libera.html">Gentoo</a>,
<a href="https://lists.wikimedia.org/hyperkitty/list/mediawiki-l@lists.wikimedia.org/thread/5VVH5LTZUIN63WNAJZFREMD66LFQLTFT/">Wikimedia</a>, <a href="https://wiki.freebsd.org/IRC/Official-FreeBSD-IRC-channels-now-on-Libera-Chat">FreeBSD</a>, <a href="https://communityblog.fedoraproject.org/irc-announcement/">Fedora</a>, <a href="https://archlinux.org/news/move-of-official-irc-channels-to-liberachat/">Arch Linux</a>, <a href="https://libreelec.tv/2021/05/freenode-news/">LibreELEC</a>,
<a href="https://forum.arduino.cc/t/arduino-irc-channel-moved-to-libera-chat/866788">Arduino</a>, and <a href="https://www.postgresql.org/about/news/migration-of-postgresql-irc-channels-2216/">PostgreSQL</a>. We understand that this may be disruptive,
but believe this move will ultimately be best for everyone.</p>
<p>In order to ensure that our relatively small IRC community of users isn’t
divided long term, we have muted our channel on Freenode, leaving a notice with
updated instructions for joining our new channel on Libera.Chat, where you will
find all of the same helpful and experienced wxWidgets users.</p>
<p>Please see our <a href="/support/irc/">IRC Channel</a> page for help with connecting to Libera.Chat.</p>
Ingenuity Helicopter2021-04-19T00:00:00+00:00/news/2021/04/ingenuity-helicopter<p>wxWidgets code probably doesn’t run on Mars (yet), but wxPython/wxWidgets is
nevertheless <a href="https://docs.github.com/en/github/setting-up-and-managing-your-github-profile/personalizing-your-profile#list-of-qualifying-repositories-for-mars-2020-helicopter-contributor-badge">one of the projects</a> whose developers have been credited as
contributors to the <a href="https://github.com/readme/nasa-ingenuity-helicopter">NASA Ingenuity mission</a>.</p>
wxWidgets 3.1.5 Released2021-04-14T00:00:00+00:00/news/2021/04/wxwidgets-3.1.5-released<p>wxWidgets 3.1.5 release is now
<a href="https://github.com/wxWidgets/wxWidgets/releases/tag/v3.1.5">available on GitHub</a>.
You will find there archives with the library sources and documentation as
well as binaries for the selected Windows compilers such as <a href="https://visualstudio.microsoft.com/">Microsoft Visual
C++</a>, <a href="https://mingw-w64.org/">MinGW-w64</a>
and <a href="https://jmeubank.github.io/tdm-gcc/">TDM-GCC</a>.</p>
<p>Please notice that while 3.1.5 is officially a “development” version because
it is not fully compatible with the “stable” 3.0.x, the list of backwards
incompatible changes is very short, so you shouldn’t have any problems
updating to this version from 3.0.x in practice, and you’re encouraged to use
this release, including in production.</p>
<h3 id="changes-in-this-release">Changes in this release</h3>
<p>In the nine months since the previous release, there have been more than 1600
commits from 70 unique contributors (40 with multiple contributions), so it is
impossible to summarize all the changes in this document without making it too
long, please see the <a href="https://raw.githubusercontent.com/wxWidgets/wxWidgets/v3.1.5/docs/changes.txt">fuller changelog</a> for more (but still not all)
details, but some of the most important changes are:</p>
<ul>
<li>New <a href="https://docs.wxwidgets.org/3.1.5/classwx_web_request.html">wxWebRequest</a> and related classes provide a simple way to use HTTPS
and HTTP/2 from wxWidgets applications using native libraries or libcurl.</li>
<li>Support EGL in wxGLCanvas and Wayland in wxMediaCtrl under Linux.</li>
<li>Many appearance and other fixes for macOS 11.</li>
<li>More improvements to wxGrid UI, API and performance.</li>
<li>wxImage improvements: add alpha support in Paste() and clipboard support.</li>
<li>API additions: wxPersistentComboBox, wxFileName::ResolveLink(),
wxFileHistory::SetMenuPathStyle(), wxString::utf8_string(), wxEVT_FULLSCREEN.</li>
<li>Improvements: wxConfig now supports 64-bit integers, wxLog uses millisecond
resolution in timestamps, XRC files can be loaded from URLs.</li>
<li>Yet more bug fixes, fixes for API inconsistencies and optimizations, notably
in wxDataViewCtrl, wxListCtrl, wxPropertyGrid.</li>
</ul>
<p>Notice that in spite of all the changes, this release remains almost completely
compatible with 3.1.4 at the API level, so upgrading to it if you’re already
using wxWidgets 3 should be straightforward.</p>
<h3 id="feedback">Feedback</h3>
<p>Please let us know about your experience with this release via any of the
following channels:</p>
<ul>
<li><a href="https://www.wxwidgets.org/support/mailing-lists/">Mailing lists</a></li>
<li><a href="https://forums.wxwidgets.org/">Discussion forums</a></li>
<li><a href="https://www.wxwidgets.org/support/irc/">#wxwidgets IRC Channel</a></li>
<li><a href="https://stackoverflow.com/questions/tagged/wxwidgets">Stack Overflow</a></li>
</ul>
<p>Or by commenting under this post.</p>
<p>Thanks to everybody who has contributed to this release and we hope that you
will enjoy working with it!</p>
wxWidgets 3.1.4 Released2020-07-22T00:00:00+00:00/news/2020/07/wxwidgets-3.1.4-released<p>wxWidgets 3.1.4 release is now
<a href="https://github.com/wxWidgets/wxWidgets/releases/tag/v3.1.4">available on GitHub</a>.
You will find there archives with the library sources and documentation as
well as binaries for the selected Windows compilers such as <a href="https://visualstudio.microsoft.com/">Microsoft Visual
C++</a> and <a href="https://mingw-w64.org/">MinGW-w64</a>.</p>
<p>Please notice that while 3.1.4 is officially a “development” version because
it is not fully compatible with the “stable” 3.0.x, the list of backwards
incompatible changes is very short, so you shouldn’t have any problems
updating to this version from 3.0.x in practice, and you’re encouraged to use
this release, including in production.</p>
<h3 id="changes-in-this-release">Changes in this release</h3>
<p>In the nine months since the previous release, there have been almost 1700
commits from 74 unique contributors (37 with multiple contributions), so it is
impossible to summarize all the changes in this document without making it too
long, please see the <a href="https://raw.githubusercontent.com/wxWidgets/wxWidgets/v3.1.4/docs/changes.txt">fuller changelog</a> for more (but still not all)
details, but some of the most important changes are:</p>
<ul>
<li>wxOSX port now supports the latest macOS 11 on ARM hardware.</li>
<li>wxMSW comes with a new Edge-based wxWebView implementation.</li>
<li>Better, although still not perfect, per-monitor DPI support in wxMSW.</li>
<li>wxGrid was has been significantly improved and is now much user friendlier.</li>
<li>AUI appearance enhancements for non-default GTK themes and macOS dark mode.</li>
<li>wxWidgets may now be built with C++20 compiler.</li>
<li>Improvements to CMake build system.</li>
<li>Allow optionally forbidding dangerous implicit wxString conversions.</li>
</ul>
<p>And, of course, there were many, many bug fixes in all ports, notably including
fixing several long-standing problems in wxOSX.</p>
<p>Notice that in spite of all the changes, this release remains almost completely
compatible with 3.1.3 at the API level, so upgrading to it if you’re already
using wxWidgets 3 should be straightforward.</p>
<h3 id="feedback">Feedback</h3>
<p>Please let us know about your experience with this release via any of the
following channels:</p>
<ul>
<li><a href="https://www.wxwidgets.org/support/mailing-lists/">Mailing lists</a></li>
<li><a href="https://forums.wxwidgets.org/">Discussion forums</a></li>
<li><a href="https://www.wxwidgets.org/support/irc/">#wxwidgets IRC Channel</a></li>
<li><a href="https://stackoverflow.com/questions/tagged/wxwidgets">Stack Overflow</a></li>
</ul>
<p>Or by commenting under this post.</p>
<p>Thanks to everybody who has contributed to this release and we hope that you
will enjoy working with it!</p>
wxWidgets 3.0.5 Released2020-04-25T00:00:00+00:00/news/2020/04/wxwidgets-3.0.5-released<p>wxWidgets 3.0.5, the latest release in the stable 3.0 series, is now
<a href="https://www.wxwidgets.org/downloads/#v3.0.5">available</a>. Upgrading to it is strongly recommended for all users of the
previous 3.0.x release as it brings a lot of bug fixes and support for newer
compilers (MinGW 4.9, 5 and 7), SDKs (macOS 10.10 and later) and libraries
(GStreamer 1.0) but remains 100% compatible with 3.0.0, both at the API and
the ABI level, and so upgrading to it doesn’t require absolutely any changes
to the existing applications.</p>
<p>The <a href="https://github.com/wxWidgets/wxWidgets/blob/v3.0.5/docs/publicity/announce.txt">announcement post</a> contains the fuller list of the most important
changes in this release and they are described in even more details in the
<a href="https://github.com/wxWidgets/wxWidgets/blob/v3.0.5/docs/changes.txt#L583-L648">change log</a>.</p>
<!--more-->
<p>As usual, in addition to the sources, you can also download binaries for the
selected Windows compilers (any version of Microsoft Visual C++ from 2008 to
2019, <a href="http://tdm-gcc.tdragon.net/">MinGW-TDM</a> 4.9.2, 5.1.0 and 9.2.0, or <a href="https://sourceforge.net/projects/mingw-w64/">MinGW</a> 7.2.0, 7.3.0 and
8.1.0). And you can read the documentation for this release <a href="https://docs.wxwidgets.org/3.0.5/">online</a>.</p>
<p>Thanks to everybody who contributed, by reporting bugs and submitting patches,
to this wxWidgets release. We hope you will find it even better than the
previous one and will enjoy using it!</p>
wxWidgets 3.1.3 Released2019-10-28T00:00:00+00:00/news/2019/10/wxwidgets-3.1.3-released<p>wxWidgets 3.1.3 release is now
<a href="https://github.com/wxWidgets/wxWidgets/releases/tag/v3.1.3">available on GitHub</a>.
You will find there archives with the library sources and documentation as
well as binaries for the selected Windows compilers such as <a href="https://visualstudio.microsoft.com/">Microsoft Visual
C++</a> and <a href="https://mingw-w64.org/">MinGW-w64</a>.</p>
<p>Please notice that while 3.1.3 is officially a “development” version because
it is not fully compatible with the “stable” 3.0.x, the list of backwards
incompatible changes is very short, so you shouldn’t have any problems
updating to this version from 3.0.x in practice, and you’re encouraged to use
this release, including in production.</p>
<h3 id="changes-in-this-release">Changes in this release</h3>
<p>There have been almost 2000 commits from 97 unique contributors (52 with
multiple contributions) since 3.1.2 releases, so it is impossible to summarize
all the changes in this document without making it too long, please see the
<a href="https://raw.githubusercontent.com/wxWidgets/wxWidgets/v3.1.3/docs/changes.txt">full changelog</a>
for more details, but some of the most important changes are:</p>
<ul>
<li>Support for per-monitor DPI and dynamic DPI changes under MSW.</li>
<li>More generally, many fixes for various controls appearance in high DPI.</li>
<li>Long requested support for freezing rows and/or columns in wxGrid.</li>
<li>New XRC handlers for wxDataViewCtrl, wxInfoBar.</li>
<li>It is now possible to use gradients when creating wxGraphicsPen.</li>
<li>Extended compiler (MSVS 2019) and platforms (macOS 10.14+) support.</li>
<li>Significant improvements to the (still experimental) wxQt port.</li>
<li>Important bug fixes for focus handling in wxOSX port.</li>
</ul>
<h3 id="feedback">Feedback</h3>
<p>Please let us know about your experience with this release via any of the
following channels:</p>
<ul>
<li><a href="https://www.wxwidgets.org/support/mailing-lists/">Mailing lists</a></li>
<li><a href="https://forums.wxwidgets.org/">Discussion forums</a></li>
<li><a href="https://www.wxwidgets.org/support/irc/">#wxwidgets IRC Channel</a></li>
<li><a href="https://stackoverflow.com/questions/tagged/wxwidgets">Stack Overflow</a></li>
</ul>
<p>Or by commenting under this post.</p>
<p>Thanks to everybody who has contributed to this release and we hope that you
will enjoy working with it!</p>
New wxWidgets videos2019-07-24T00:00:00+00:00/news/2019/07/new-wxwidgets-videos<p>Two new wxWidgets video tutorials have been recently published by
<a href="https://onelonecoder.com/">Javidx9</a> on YouTube: here is the <a href="https://www.youtube.com/watch?v=FOIbK4bJKS8">first
part</a>, introducing programming
with wxWidgets in C++ and the here is the <a href="https://www.youtube.com/watch?v=FwUGeV2fnfM">second
one</a>, showing how to develop a
simple application.</p>
<p>If you have always wanted to learn programming wxWidgets but were intimidated
by the size of <a href="https://docs.wxwidgets.org/trunk/index.html">its manual</a>, you
may appreciate this alternative way of getting acquainted with it.</p>
<p>Thanks to Javidx9 for producing the videos!</p>