void tst_QOpenGLWidget::painter() { QWidget w; PainterWidget *glw = new PainterWidget(&w); w.resize(640, 480); glw->resize(320, 200); w.show(); QTest::qWaitForWindowExposed(&w); QImage image = glw->grabFramebuffer(); QCOMPARE(image.width(), glw->width()); QCOMPARE(image.height(), glw->height()); QVERIFY(image.pixel(20, 10) == qRgb(0, 0, 255)); glw->m_clear = true; image = glw->grabFramebuffer(); QVERIFY(image.pixel(20, 10) == qRgb(0, 255, 0)); }
void tst_QOpenGLWidget::reparentToNotYetCreated() { QWidget w1; PainterWidget *glw = new PainterWidget(&w1); w1.resize(640, 480); glw->resize(320, 200); w1.show(); QTest::qWaitForWindowExposed(&w1); QWidget w2; glw->setParent(&w2); w2.show(); QTest::qWaitForWindowExposed(&w2); QImage image = glw->grabFramebuffer(); QCOMPARE(image.width(), 320); QCOMPARE(image.height(), 200); QVERIFY(image.pixel(20, 10) == qRgb(0, 0, 255)); }