Is there a way to access the image on the QWidget’s backing store?

It is possible, but it is not portable. The QBackingStore is just a wrapper class around a QImage buffer on most platforms, but I suppose this is not guaranteed. I’ve researched this issue when writing the QuickWidget. A cast is needed:

QImage * image = dynamic_cast<QImage*>(backingStore()->paintDevice());
if (image != 0) // it's an image, do something with it

Be careful though not to cause the QImage to detach. Things such as resizing are off limits.

Check the QuickWidget out at:

https://code.google.com/p/quickwidget/

Leave a Comment