Jeff Tranter
Jeff Tranter is a Qt Consulting Manager at ICS. He oversees the architectural and high-level design of software systems for clients. Jeff’s leadership organizes global teams of developers on desktop and embedded applications. He has been published in Electronic Design magazine.
Articles by Author
Report from Qt Developer Days 2014 San Francisco
Wednesday, October 29, 2014 - 11:49 "> • By Jeff Tranter • Qt, Developer Days, Conference
Report from Qt Developer Days 2014 San Francisco
Report on Qt Developer Days 2014 Berlin
Monday, October 20, 2014 - 10:49 "> • By Jeff Tranter • Qt Developer Days, Conference, Berlin, Europe
I recently returned from the Qt Developer Days Europe conference and I wanted to share a brief report on some of the highlights of the show.
Qt on QNX
Monday, September 22, 2014 - 13:17 "> • By Jeff Tranter • Qt, QNX, BlackBerry, RTOS
When BlackBerry introduced its new Qt-based BlackBerry 10 platform for smart phones and tablets, it generated a lot of interest in Qt on mobile. BlackBerry 10 is based on the QNX 1 operating system, a subsidiary of BlackBerry. What is perhaps not as well known, is that Qt is well supported on QNX as an embedded operating system in its own right.
Qt 5.4.0 Alpha is Out!
Monday, September 8, 2014 - 16:14 "> • By Jeff Tranter • Qt, QML, 5.4
Representing a significant milestone towards the next Qt release, the alpha version of Qt 5.4.0 came out this week. Qt 5.4.0 will include a number of interesting new features. In this blog post, I will briefly mention just a few of the highlights. QtWebEngine, the replacement for QtWebKit that I described in a blog post a few months ago, will be included in the Qt 5.4.0 release and will be supported on the following desktop platforms: Linux, Mac OS X and Windows.
Alternatives for Virtual Keyboards
Monday, August 25, 2014 - 10:43 "> • By Jeff Tranter • Qt, QML, virtual keyboard, on-screen keyboard, Maliit
With touchscreen-based systems such as tablets, smart phones and embedded devices, there is often a need for a virtual or on-screen keyboard. Qt itself does not provide a virtual keyboard and I am often asked for recommendations on approaches for a virtual keyboard. Let's look at some of the options available.
Summer Grab Bag
Monday, August 11, 2014 - 11:04 "> • By Jeff Tranter • Qt, QML, Raspberry Pi, Yocto, Wayland, Embedded
To better support the embedded market, the Raspberry Pi Foundation now offers the Compute Module (3), a Raspberry Pi in a more flexible form factor intended for industrial applications.
What's New in Qt 5.3: QPrinterInfo
Friday, July 25, 2014 - 14:26 "> • By Jeff Tranter • Qt, QML, QPrinterInfo, printing
The Qt 5.3 release made a lot of "under the hood" improvements to the internals of the Qt printing system. There were also some changes visible at the API level. One of the more noticeable changes was to add enhancements to the QPrinterInfo class. In this blog post, I'll go over this class and present an example application illustrating how to use it.
The Whole Shebang - Running QML Files Directly
Friday, June 27, 2014 - 15:13 "> • By Jeff Tranter • Qt, QML, qmlscene, QML tooling, QML run-time
A new feature in Qt version 5 is an executable program similar to qmlscene that can execute QML files.
Retrocomputing: Motif and CDE
Friday, May 30, 2014 - 10:38 "> • By Jeff Tranter • Motif, CDE, Unix, Raspberry Pi, X11, Linux, Retrocomputing
Introduction In this blog post, we'll look at a couple of older graphical user interface toolkits that were popular in the 1980s and 1990s.
The QML Canvas Element
Monday, May 5, 2014 - 09:18 "> • By Jeff Tranter • Qt, QML, Canvas, HTML5
Perhaps you have been trying to do more with QML than just using the basic elements like rectangles, text and images, or maybe you have been struggling to implement a user interface that doesn't map well into these basic elements. If so, the QML Canvas may be just the solution you are looking for. In this post, we'll look at Canvas (1), a powerful and useful QML element that is part of Qt Quick. Introduction
Building QtWebEngine
Thursday, April 17, 2014 - 09:27 "> • By Jeff Tranter • QtWebEngine, Chromium
QtWebEngine (1) is a new web rendering engine that is planned to replace QtWebKit in Qt. In this blog post, I'll give a short tutorial describing how to build the current version of QtWebEngine on a Linux desktop system, so you can run some example applications and take a look at the features and API.
The BeagleBone Black - A Low-Cost Embedded Platform, Part 3
Tuesday, April 1, 2014 - 15:57 "> • By Jeff Tranter • BeagleBone Black, OpenEmbedded, bitbake, Qt 5
In part one of this series I introduced the BeagleBone Black, a low-cost embedded computer platform that supports Qt. In part two, we looked at how to get Qt 4 up and running on this platform. In this installment, we'll look at how to get the latest release of Qt, Qt 5, running on the BeagleBone Black. As with Qt 4, we can choose from several approaches.
What's New In Qt 5.2: QTimeZone
Wednesday, March 19, 2014 - 10:10 "> • By Jeff Tranter • Qt, Qt 5.2, QTimeZone
In this post, I will briefly describe a new class, QTimeZone (1), one of several that were introduced in Qt 5.2, and show an example application that uses it. Introduction The QTimeZone class provides detailed information about world time zones, including how to convert between Coordinated Universal Time (UTC), the primary time standard by which the world regulates clocks and time, and local time for a specific time zone, with the details of daylight savings time changes as well.
The BeagleBone Black - A Low-Cost Embedded Platform, Part 2
Thursday, March 6, 2014 - 16:20 "> • By Jeff Tranter • Qt, BeagleBone Black
In part one of this series I introduced the BeagleBone Black, a low-cost embedded computer platform that supports Qt. In this second blog post, I'll look at how to get Qt 4 up and running on this hardware.
KDE Frameworks 5 - Taking KArchive for a Test Drive
Monday, February 24, 2014 - 10:09 "> • By Jeff Tranter • Qt, KDE, Qt 5, KArchive, KDE Frameworks 5
In this blog post, I present a tutorial on setting up and using one of the libraries from the new KDE Frameworks 5, a collection of add-ons to Qt.
The BeagleBone Black: A Low-Cost Embedded Platform, Part 1
Monday, February 10, 2014 - 08:47 "> • By Jeff Tranter • Qt, Qt 4, Qt 5, BeagleBone, BeagleBoard, BeagleBone Black
In this blog post I will look at the BeagleBone Black, a low-cost embedded computer platform that supports Qt.
The Raspberry Pi Camera Module
Monday, January 27, 2014 - 13:25 "> • By Jeff Tranter • Embedded, Camera, Raspberry Pi
In this post we'll look at the Raspberry Pi camera module, a low cost hardwar module that supports still picture and video recording.
What's New in Qt 5.2: QCommandLineParser
Friday, January 3, 2014 - 16:01 "> • By Jeff Tranter • Qt, Qt 5.2, command line parsing, C++
After several failed attempts in the past, thanks to the efforts of Qt and KDE developer David Faure, command line parsing support is now in Qt 5.2.0.
What's New in Qt 5.2?
Friday, December 6, 2013 - 13:06 "> • By Jeff Tranter • Qt, QML, Qt 5.2
Qt 5.2.0 is now out! In this blog post, we'll look at some of the highlights of this new release. Release Timeline Qt 5.2 is a minor release of Qt (as opposed to a major release like Qt 6 or a patch release like 5.1.2). As such, it is binary compatible with other Qt 5 releases. The release occurred on the following timeline:
Report on Qt Developer Days 2013 San Francisco
Monday, November 11, 2013 - 13:21 "> • By Jeff Tranter • Qt, Developer Days, Conference
We've just returned from the Qt Developer Days San Francisco conference last week and I wanted to share a brief report on some of the highlights of the show.
Report on Qt Developer Days 2013 Berlin
Tuesday, October 15, 2013 - 09:18 "> • By Jeff Tranter • Qt, QML, Developer Days, Conference, Berlin
This was the 10th annual Qt Developer Days. The conference is traditionally held in Europe and North America and this year the European show was at the Cafe Moskau in Berlin, the same location as last year.
The QML Presentation System
Monday, September 30, 2013 - 09:11 "> • By Jeff Tranter • Qt, QML
With Qt Developer Days 2013 rapidly approaching, a number of Qt developers are busy preparing presentations for the conference, myself included. I thought it would be timely to give an overview of the QML Presentation System.
Qt and C++11
Thursday, August 29, 2013 - 09:27 "> • By Jeff Tranter • Qt, C++
With most C++ compilers now providing good support for the latest language standard, C++11, let's look at some of the new language features that are particularly useful for use in Qt programs.
The Qt 5 Multimedia QML Elements
Monday, August 19, 2013 - 09:45 "> • By Jeff Tranter • Qt, QML
Qt 5 introduced a new set of multimedia APIs. Both C++ and QML APIs are provided. In this blog post, I will give an overview of the QML APIs for multimedia.
Combining Qt Widgets and QML with QWidget::createWindowContainer()
Friday, August 2, 2013 - 15:43 "> • By Jeff Tranter • Widgets, QML
Introduction Qt 5.1 introduces a new method in the QWidget class called createWindowContainer(). It allows embedding a QWindow (such as a QQuickView) into a QWidget-based application. This allows combining both QML and widgets in the same application, something that was not possible with Qt 5.0. The new method is well documented (see References at the end of the posting) but I did not see any complete compilable examples of using it, so I thought I would present one here.
The Qt Installer Framework
Friday, July 26, 2013 - 12:58 "> • By Jeff Tranter •
In this blog post, we'll take a very brief look at the Qt Installer Framework. Introduction The Qt Installer Framework allows you to create cross-platform graphical software installers. It supports the desktop platforms supported by Qt: Windows, Mac OS X, and Linux. It allows you to easily create the standard type of graphical installers with multiple pages that guide a user through the process of installation. It also supports uninstalls and the ability to update components.
Integrating C++ with QML
Friday, July 19, 2013 - 13:24 "> • By Jeff Tranter •
Qt Quick's QML language makes it easy to do a lot of things, especially fancy animated user interfaces. However, there are some things that either can't be done or are not really suitable for implementing in QML. As we'll see, Qt makes it quite easy to expose C++ code to QML. In this blog post I'll show an example of doing this with a small but functional application.
The Qt Graphical Effects Module
Friday, June 21, 2013 - 11:39 "> • By Jeff Tranter • Qt, OpenGL, QML
This blog posting gives an introduction to the Qt Graphical Effects module, which is available in Qt 5. As of Qt 5.1.