GammaRay - Introspection/Debugging Tool for Qt Applications

Volker Krause vkrause at
Sun Oct 30 12:21:51 GMT 2011


During the Qt Dev Days in Munich last week we (KDAB) released a new Free 
Software introspection/debugging tool for Qt applications, called GammaRay:

It hooks itself into a Qt application (at start-up or at runtime) using a 
variety of methods (ranging from assembler hacks to (ab)using Qt plug-ins) and 
uses the Qt meta object system for introspecting object, properties, signals, 
slots, signal/slot connections, etc. Nothing really new until here, tools like 
Qt Inspector or KSpy can do this already. On top of that GammaRay adds a bunch 
of higher level tools though, for example:

- QWidget layout overlay, similar to designer
- Inspecting a QGraphicsScene and various details of QGraphicsItems 
(visualizing shapes, bounding rects, transformation origins, etc)
- Looking at the full (proxy) model hierarchy and all intermediate results in 
- a live updating QStateMachine visualization
- attaching of QScriptEngineDebugger and QWebInspector to the corresponding 
objects in the application
- a QTextDocument document object model viewer

Additionally, GammaRay has a plug-in interface for adding new tools, say a 
KJob tracker.

GammaRay works on Linux, Mac and Windows (MSVC only so far), it needs to be 
compiled against the same Qt version used by the application you are about to 
debug though. There's also a Qt Creator plug-in for it 

Some screenshots can be found here:

GammaRay was originally developed in support for the Kontact Touch project, 
back when there wasn't a QML debugger yet. The proxy model debugger also 
proved quite helpful on KMail, maybe it can help some of you as well :)

Needless to say that contributions are very much welcome.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 190 bytes
Desc: This is a digitally signed message part.
URL: <>
-------------- next part --------------

>> Visit to unsubscribe <<

More information about the kde-core-devel mailing list