From kde-core-devel Wed Nov 02 19:43:38 2011 From: Volker Krause Date: Wed, 02 Nov 2011 19:43:38 +0000 To: kde-core-devel Subject: Re: GammaRay - Introspection/Debugging Tool for Qt Applications Message-Id: <1792822.UpoDJEmNMj () vkpc9> X-MARC-Message: https://marc.info/?l=kde-core-devel&m=132026442718771 MIME-Version: 1 Content-Type: multipart/mixed; boundary="--nextPart2157621.qZmoPpUILp" --nextPart2157621.qZmoPpUILp Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="us-ascii" On Wednesday 02 November 2011 11:10:17 Bart Cerneels wrote: > On Sun, Oct 30, 2011 at 13:21, Volker Krause wrote: > > Hi! > > > > During the Qt Dev Days in Munich last week we (KDAB) released a new Free > > Software introspection/debugging tool for Qt applications, called > > GammaRay: > > https://github.com/KDAB/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 there > > - 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 > > (https://github.com/KDAB/KDAB-Creator). > > > > Some screenshots can be found here: http://www.kdab.com/gammaray > > > > 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. > > > > regards > > Volker > > I've asked this at the devdays but want to spread the idea amongst the > larger KDE comunity: > Can this tool, or it's technologies, be use to make inline translation > of a running application possible? Would greatly simplify the process > (and more fun!) and get better results since the string changes will > be immediately visible, preventing wrong context assumptions and to > long strings. I think GammaRay's core (injecting and accessing the object tree) would be a good start for such an inline translation tool. Actually, you can use GammaRay already to edit a lot of user visible strings by changing properties etc., just not fully inline in the UI. However, I see one big challenge with this approach: The strings we access there are already fully assembled, so no placeholders etc. are available anymore. For a real translation tool we would need to be able to query the corresponding unprocessed source string as well (and trigger a re-processing of it after translation, for live updates). regards Volker --nextPart2157621.qZmoPpUILp Content-Type: application/pgp-signature; name="signature.asc" Content-Description: This is a digitally signed message part. -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.16 (GNU/Linux) iD8DBQBOsZ1tf5bM1k0S0kcRApu0AJ9MOGQNum157n5SxUYn25uYtX8nPgCdGbkU jRkWEgMH6POgC6tUEdGuLiA= =8Ehh -----END PGP SIGNATURE----- --nextPart2157621.qZmoPpUILp--