69QSurfaceFormat QSGSoftwareContext::defaultSurfaceFormat()
const
71 QSurfaceFormat format = QSurfaceFormat::defaultFormat();
72 format.setRenderableType(QSurfaceFormat::DefaultRenderableType);
73 format.setMajorVersion(0);
74 format.setMinorVersion(0);
75 if (QQuickWindow::hasDefaultAlphaBuffer())
76 format.setAlphaBufferSize(8);
88void QSGSoftwareRenderContext::invalidate()
90 qDeleteAll(m_texturesToDelete);
91 m_texturesToDelete.clear();
93 qDeleteAll(m_textures);
96 Q_ASSERT(m_fontEnginesToClean.isEmpty());
98 qDeleteAll(m_glyphCaches);
99 m_glyphCaches.clear();
101 qDeleteAll(m_staleGlyphCaches);
102 m_staleGlyphCaches.clear();
104 m_sg->renderContextInvalidated(
this);
177void *QSGSoftwareContext::getResource(QQuickWindow *window, Resource resource)
const
182 auto cd = QQuickWindowPrivate::get(window);
184 if (resource == PainterResource)
185 return window->isSceneGraphInitialized() ?
static_cast<QSGSoftwareRenderContext *>(cd->context)->m_activePainter :
nullptr;
186 else if (resource == RedirectPaintDevice)
187 return cd->redirect.rt.sw.paintDevice;