External: index
Internal: |- preamble -|- downloads -|- Qt Runtime DLL -|- TerraGUI 07 -|- Qt Examples -|- end -|
2011-05-22: I only recently was introduced to 'Qt' - http://qt.nokia.com/ - but have quickly taken to is as a very good cross platform application and user interface (UI) development tools. It comes in two(2) forms - a commercial version, and an LGPL version. Of course here I am only talking about the GPL version!
For a long time I have looked for a cross-platform Integrated Development Environment (IDE) which did all, or at least most of what the Microsoft Visual Studio (MSVC) IDE provided. Perhaps the most important being the context sensitive popup/tooltip information. By this I means you can have a defined structure, declare an instance of it, than after you type a '.', or a '->' if a pointer to the structure, and combo box popups showing all the members available.
Here's a simple example from Qt - It has a 'class' defined called 'QFile' so typing the code
snippet 'QFile f; if (f.', you get instant help, as the following image shows :-
Here I have scrolled down to the 'exists' member, and then a simple 'tab' key-in will
complete the function. and you are again presented with the options available per the following
image :-
But it is more than this massive popup, tooltip assistance, you can compile the 'application', and run it under the debugger all from within the IDE. If there are compile problems, you can instantly get the line of code in error to fix it, and under the debugger you have a full code view available, thus you are able to trace through the 'written' code.
This 'Qt Creator', as they call the IDE is a serious competitor to MSVC ;=))
Take care downloading and running executables from the web!
But in SOME cases I have NOT included any 'executables', since the idea is that you download and install the 'Qt SDK' into the OS of your choice, then unzip these examples into a folder of your choice, and load the included '*.pro' project file into 'Qt Creator' and build your own executables. Where there are executable, you will still need to 'deal' with the required runtime DLLS, given down the page.
While the 'Qt SDK' comes with lots of 'examples', I found I could learn lots about the giant Qt class library by extending some of those examples, or some others downloaded from the web...
Date | Link | Size | MD5 |
---|---|---|---|
2011/05/28 | textfind-02-exe.zip | 32,966 | 2928750c9ea128becff7ae186cc65e05 |
2011/05/28 | textfind-02-src.zip | 7,495 | 4897bc436215bb421d8e0869e9291441 |
2011/05/21 | queuedcustomtype-02.zip | 12,548 | d683a6aedd30a3fdbc7cac5950d95a36 |
2011/05/22 | simpledialog-01.zip | 3,618 | 5fc4296a9e1401617deffad898b5c287 |
2011/05/21 | findfiles-01.zip | 8,392 | 41d1e34b58f1f5feeea80f5efe454826 |
2011/05/20 | waitconditions-01.zip | 3,131 | b525a270c8c83d697326c321b01d5048 |
2011/05/17 | download-01.zip | 3,375 | ede30d7aa404db9ff99ae45f5ead07e2 |
textfind : The 'textfind' example includes a non-modal 'find' dialog, and connecting a click from it back to a 'textfind' class function. It also has a 1 second timer callback message flowing...
download : The item 'download' is quite interesting in that it is a reasonable simple replacement for GNU 'wget'... and I have extended it to 'understand' the first response from the flightgear mapserver is just HTML, giving the 'name' of the desired zip file to download.
queuedcustomtype : The 'queuedcustomtype' sends a request to a thread, and during the thread running, the thread passes back (a) special image updates to be done in a Block class structure, and (b) string of update and timing information to be displayed on the 'main' widow... the thread can be 'stopped', and restarted with another image file...
As suggested above, you can get the full set of Qt windows 32 runtime DLLS by downloading and installing the Qt SDK, but the download below is a minimal list needed to run my 'example' applications.
Date | Link | Size | MD5 |
---|---|---|---|
2011/04/26 | Qt-DLLS-02.zip | 5,733,193 | 2378c7e39e99c4a809d372212f9e3bb5 |
Aside for the above mainly example code, I presently only have one project using the Qt runtime...
Developed and maintained by Gijs de Rooy, this is a GUI to run the
terragear scenery construction tools. The full GPL2 source can be obtained through Git, on
gitorious.org, through the command -
> git clone git://gitorious.org/terragear-addons/terrageargui.git
[out-dir]
and it is recommended you obtain and compile that source...
The table below contain my slightly modified source, and Win32 runtime executable, built using Qt Creator 2.0.1, based on Qt 4.7.0 (32 bit), built on Aug 24 2010 at 11:00:55, from revision 97d831e3de, Copyright 2008-2010 Nokia Corporation. All rights reserved. This source is released under GPL2 or later...
Take care downloading and running executables from the web!
Date | Link | Size | MD5 |
---|---|---|---|
2011/05/26 | TerraGUI-02-src.zip | 39,462 | 85b96befee9bec767189276ee7d378f0 |
2011/05/26 | TerraGUI-02-bin.zip | 261,778 | 75676d59e945a6942d05e2e374001eb0 |
As mentioned you also need the 'Qt' runtime DLLs to run this binary |
qt_osm_map.htm - Some tests using OpenStreetMap (OSM) maps, and MORE...
qt_test_gui.htm - Some test routines, including using 'zlib', and some 'simgear' services
threading.htm - An exploration of Qt QThead API, and how to 'exit' promptly when the thread is running
EOP