PDA

View Full Version : Conan 0.9.8 - signal/slot connection debugging made easy



gnik
27th September 2010, 08:14
Conan version 0.9.8 has just been released and brings Qt 4.7 support.
It is available under GPL at SourceForge (http://sourceforge.net/projects/conanforqt/).

When working on a large Qt software project the amount of signal-slot connections can really go through the roof. During run-time I often want to know what is connected to what. I also regularly want to know how often and when a specific signal is emitted. In general I just want some proper signal-slot debugging.
Unfortunately, Qt provides next to nothing for this. Sure you've got QObject::dumpObjectInfo, QObject::dumpObjectTree and the QSignalSpy, but their use is very limited and unpractical. So I decided to make my own signal-slot debugging library called Conan. It is real easy to use and has helped me locate multiple duplicate signal connection in Qt's own libraries. So if you ever need some signal-slot introspection, try Conan. I hope you will find it usefull!

Here is a small excerpt from the readme:


Conan 0.9.8 - Connection analyzer for Qt 4.6.0 - Qt 4.7.0
---------------------------------------------------------

Conan is a C++ library that provides run-time introspection of object
hierarchies, object inheritance, signal/slot connections, and signal
emissions.

Conan contains a single widget (conan::ConanWidget) that provides the
following functionality:
-object hierarchies can be added, discovered, browsed and exported to XML
-signals/slots, including active connections, can be examined
-duplicate connections can be found
-signal emissions can be monitored and logged
See /doc/html/index.html for detailed information.


Contact - edekoning@gmail.com
Website - http://sourceforge.net/projects/conanforqt
License - GPL - source code -> see ./GPL.txt
CCL - icons -> see ./icons/CCL.txt
...

Conan 0.9.8 release
-------------------

Bugfixes:
-Fixed a problem where sorting the object tree view resulted in invalid QPersistentModelIndex
-Fixed a string formatting issue in ObjectUtility::Address
-Fixed compilation issues when compiling under Linux, teted with Qt Creator 1.3.1 and Qt 4.6.2
on Ubuntu 10.4

Feature additions:
-Remove root object.

Changes:
-Added support for Qt 4.7.0
-Renamed output folder from bin to lib
-The columns on the Objects Hierarchy page can now be manually resized, where they would
previously automatically resize to their contents.
...