Overview¶
The names of custom Qt classes which do their own non-Qt based rendering (for example, those using OpenGL), must be specified in the environment variable SQUISH_GRABWINDOW_CLASSES
. Multiple classes can be included, simply by separating them with commas.
For the specified classes Squish will take the screenshot directly from the operating system instead of using Qt's QPixmap::grabWidget()
function.
Example for Unix-like systems¶
Alternative form that avoids changing the environment:
If you need to do this a lot it will be more convenient to put the two lines above into a shell script (e.g., a .sh
file) and use that for starting the Squish IDE. (Of course, if you invoke the squishserver
yourself, you must remember to also set this environment variable first.)
Example for Windows¶
If you need to do this a lot it will be more convenient to put the two lines above into a .bat
file and use that for starting the Squish IDE. (Of course, if you invoke the squishserver
yourself, you must remember to also set this environment variable first.)
Using the operating system for all screenshots¶
To use the operating system (instead of functionality provided by Qt) for all screenshots set SQUISH_GRABWINDOW_CLASSES
to "QWidget".
Using the operating system for screenshots of all OpenGL objects¶
To use the operating system (instead of functionality provided by Qt) for screenshots of all OpenGL objects set SQUISH_GRABWINDOW_CLASSES
to "QGLWidget,QWSGLWindowSurface" (also see
QtOpenGL Module
for a list of Qt's OpenGL classes).
On Unix systems:
On Windows systems: