d2c6294bd5
Add a class to display debug messages, providing convenience functions for installing and formatting parameters like indentation. It prints a startup message containing relevant information about Qt. Change-Id: Id0a19adbb5953a6ded1a8e692f242b63748e7273 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
62 lines
2.3 KiB
Plaintext
62 lines
2.3 KiB
Plaintext
This is a collection of functions and classes helpful for diagnosing bugs
|
|
in Qt 4 and Qt 5. It can be included in the application's .pro file by
|
|
adding:
|
|
|
|
include([path to Qt sources]/tests/manual/diaglib/diaglib.pri)
|
|
|
|
For Qt 4, the environment variable QTDIR may be used:
|
|
include($$(QTDIR)/tests/manual/diaglib/diaglib.pri)
|
|
|
|
The .pri file adds the define QT_DIAG_LIB, so, diagnostic
|
|
code can be enlosed within #ifdef to work without it as well.
|
|
|
|
All functions and classes are in the QtDiag namespace.
|
|
|
|
function dumpText() (textdump.h)
|
|
Returns a string containing the input text split up in characters
|
|
listing category, script, direction etc.
|
|
Useful for analyzing non-Latin text.
|
|
|
|
function dumpTextAsCode() (textdump.h)
|
|
Returns a string containing a code snippet creating a QString
|
|
by appending the unicode value of character of the input.
|
|
This is useful for constructing non-Latin strings with purely ASCII
|
|
source code.
|
|
|
|
class EventFilter (eventfilter.h):
|
|
An event filter that logs Qt events to qDebug() depending on
|
|
configured categories (for example mouse, keyboard, etc).
|
|
|
|
class DebugProxyStyle (debugproxystyle.h)
|
|
A proxy style that wraps around an existing style and outputs
|
|
the parameters and return values of its function calls, useful
|
|
for debugging QStyle.
|
|
|
|
class LogWidget (logwidget.h)
|
|
A Log Widget inheriting QPlainTextEdit with convenience functions
|
|
to install as a message handler.
|
|
|
|
class LogFunctionGuard
|
|
A guard class for use with LogWidget logging messages when a function
|
|
is entered/left (indenting the log messages).
|
|
Can be instantiated using:
|
|
LogFunctionGuard guard(__FUNCTION__) or
|
|
LogFunctionGuard guard(Q_FUNC_INFO)
|
|
|
|
function glInfo() (glinfo.h):
|
|
Returns a string describing the Open GL configuration (obtained
|
|
by querying GL_VENDOR and GL_RENDERER). Available only
|
|
when the QT qmake variable contains opengl.
|
|
|
|
functions dumpNativeWindows(), dumpNativeQtTopLevels():
|
|
These functions du,p out the hierarchy of native Windows. Currently
|
|
implemented for Windows only.
|
|
|
|
function dumpAllWidgets() (qwidgetdump.h):
|
|
Dumps the hierarchy of QWidgets including information about flags,
|
|
visibility, geometry, etc.
|
|
|
|
function dumpAllWindows() (qwindowdump.h):
|
|
Dumps the hierarchy of QWindows including information about flags,
|
|
visibility, geometry, etc.
|