Blog
CCL 0.3 Beta Released

Published on April 18, 2025.
Written by Daniel T. McGinnis.

I am pleased to announce the release of CCL 0.3 Beta. This version contains bug fixes and new features.

This release came quite a while after I was hoping, but it's a pretty big jump forward. The big thing with this release is support for native, cross-platform widgets. You can now create native GUIs that work the same way on all platforms. The supported widgets are:

You can also create layouts that resize your widgets as you resize the window, as well as create message box dialogs. These features will, of course, expand in the future, but for now this is a good start.

CCL's desktop widgets work on the following platforms:

Here's a screenshot of the example program running on all the different platforms, so you can get an idea of what it looks like. The CSS drop shadow effect is for stylistic purposes only, and is not part of the actual application.

Screenshot of the CCL widgets demo running on Windows, macOS, Fedora Linux and FreeBSD

By supporting the latest version of GTK and Qt, CCL will be a good choice for developing cross-platform GUIs moving forward (once it becomes stable, of course - I'm still working on that). By supporting both GTK and Qt, CCL-based GUIs will look and feel truly native on both GNOME-powered and KDE-powered Linux distributions and FreeBSD installations. On Windows and macOS, there's only one native GUI API, so CCL will look and feel native there as well.

By the way, notice how the title text renders beautifully on the window on all platforms. That's just a std::u8string object initialized with a string literal. All of the text you see on the widgets are also simple std::u8string objects. Yes, CCL embraces the 'UTF-8 everywhere' mantra, and makes the standard library's Unicode string classes work seamlessly in cross-platform GUIs.

I'm not aware of a C++ library that provides native cross-platform widgets under a license as permissive as the Boost Software License, so I'm excited about where CCL's desktop GUI features are going.

That does it for now. Keep being awesome!



Copyright © 2022-2025 Daniel T. McGinnis

CCL was first published in 2022, and is still actively maintained.

This website was first published in 2022, and is still actively maintained.

This specific web page was first published in 2025.