Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
GammaRay is a tool to poke around in a Qt-application and also to manipulate the application to some extent.

Don't build the UI library when not building the UI.

This is now possible with the remaining dependency from probe parts on that
library removed.
latest commit f50ff3727b
Volker Krause vkrause authored
Failed to load latest commit information.
3rdparty Include ModelUtils in the only place it is actually used.
app Fix rpath on Mac for plugins, both in the client and in the target.
client Coverity Scan fixes in release mode
cmake Toolchain-QNX66.cmake - add a Toolchain for QNX6.6
common better way to fix the Coverity Scan issues found in release mode
core Fix compilation with gcc 4.6
docs update copyright year
hooking krazy excludeall some checks due to the low-level nature of this code
inprocessui update copyright year
launcher remove krazy:exclude directives for the camelcase checker
plugins Remove the last dependency of a probe plugin to the GammaRay UI library.
resources First step in trying to make GammaRay a bundle on OSX.
tests Build with GAMMARAY_BUILD_UI being off.
ui Remove the last dependency of a probe plugin to the GammaRay UI library.
.emacs-dirvars For us XEmacs people
.gitignore Minor: These files come from kdiff3
.kateconfig Add .kateconfig file with indention settings.
.krazy Merge remote-tracking branch 'github/2.2'
CHANGES Merge remote-tracking branch 'github/2.2'
CMakeLists.txt Don't build the UI library when not building the UI.
GammaRay.appdata.xml isseu82: fix typo causing "the builder to skip the application appdat…
GammaRay.desktop Correctly install icons, so that the right size is picked automatically.
GammaRayConfig.cmake.in Fix the install location fallback handling for external plugins.
Install.txt Update build requirements.
License.txt Rename COPYING to License.txt (to be consistent with Charm)
ReadMe.md update copyright year
ReadMe.txt update copyright year
add_license_blurb.sh Don't hardcode my name/email for the CMakeLists.txt license either.
config-gammaray-version.h.cmake second half of rename commit - sorry for the early push :(
config-gammaray.h.cmake Give the probe DLL a "lib" prefix on Android.
debian.changelog prepare for 2.2.1 release.
debian.control merge from 1.2 branch
debian.rules merge from 1.2 branch
gammaray.dsc prepare for 2.2.1 release.
gammaray.spec prepare for 2.2.1 release.

ReadMe.md

Introduction

GammaRay is a free software introspection tool for Qt applications developed by KDAB. Leveraging the QObject introspection mechanism it allows you to observe and manipulate your application at runtime. This works both locally on your workstation and remotely on an embedded target.

Augmenting your instruction-level debugger, GammaRay allows you to work on a much higher level, with the same concepts as the frameworks you use. This is especially useful for the more complex Qt frameworks such as model/view, state machines or scene graphs.

GammaRay can:

  • Browse the QObject tree with live updates.

  • View, and to some extent, edit QObject static and dynamic properties.

  • View and call slots of a QObject.

  • View other QObject elements such as signals, enums and class infos.

  • List all QObject inbound and outbound signal/slot connections.

  • Provide a layout information overlay for QWidget applications.

  • Inspect all QPainter operations used to draw a specific widget.

  • Browse the QtQuick2 item tree and scenegraph.

  • Plot object lifetime and emitted signals.

  • View the content of any QAbstractItemModel. Very useful when debugging a proxy model chain for example.

  • Browse the QAbstractProxyModel hierarchy.

  • Browse the item tree of any QGraphicsView scene.

  • Show a live preview of QGraphicsView items, including showing their coordinate system, transformation origin, rotate/zoom/pan, etc.

  • Intercept translations and change them at runtime.

  • Inspect all building blocks of a QStyle.

  • Act as a complete java script debugger, attachable to any QScriptEngine (including the usually not accessible one used by QtQuick1 internally).

  • Perform HTML/CSS/DOM/JS introspection/editing/profiling on any QWebPage, thanks to QWebInspector.

  • Browse the QResource tree and its content.

  • Browse QStateMachines, along with their states and transitions.

  • Show all registered meta types.

  • Show all installed fonts.

  • Show all available codecs.

  • Browse all QTextDocuments, along with the ability to edit them and view their internal structures.

  • Show all QTimers and their statistics (number of wakeups, wakeup time, ...)

Contact

Get Involved

If you want to contribute, please check out: https://github.com/KDAB/GammaRay/wiki/Get-Involved

License

Copyright (C) 2010-2015 Klarälvdalens Datakonsult AB, a KDAB Group company, info@kdab.com

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.

About KDAB

GammaRay is supported and maintained by Klarälvdalens Datakonsult AB (KDAB)

KDAB, the Qt experts, provide consulting and mentoring for developing Qt applications from scratch and in porting from all popular and legacy frameworks to Qt. We continue to help develop parts of Qt and are one of the major contributors to the Qt Project. We can give advanced or standard trainings anywhere around the globe.

Please visit http://www.kdab.com to meet the people who write code like this.

Something went wrong with that request. Please try again.