: m_colorIndex(0)
, m_renderer(renderer)
{
+ setSurfaceType(QWindow::OpenGLSurface);
setWindowTitle(QLatin1String("Hello Window"));
setFormat(renderer->format());
destroy();
}
+void QWindow::setSurfaceType(SurfaceType surfaceType)
+{
+ Q_D(QWindow);
+ d->surfaceType = surfaceType;
+}
+
+QWindow::SurfaceType QWindow::surfaceType() const
+{
+ Q_D(const QWindow);
+ return d->surfaceType;
+}
+
void QWindow::setVisible(bool visible)
{
Q_D(QWindow);
Q_PROPERTY(QString windowTitle READ windowTitle WRITE setWindowTitle)
public:
+ enum SurfaceType { RasterSurface, OpenGLSurface };
+
QWindow(QWindow *parent = 0);
virtual ~QWindow();
+ void setSurfaceType(SurfaceType surfaceType);
+ SurfaceType surfaceType() const;
+
void setVisible(bool visible);
bool visible() const;
public:
QWindowPrivate()
: QObjectPrivate()
+ , surfaceType(QWindow::RasterSurface)
, windowFlags(Qt::Window)
, parentWindow(0)
, platformWindow(0)
{
}
+ QWindow::SurfaceType surfaceType;
Qt::WindowFlags windowFlags;
QWindow *parentWindow;
QPlatformWindow *platformWindow;
winFormat.setAlphaBufferSize(qMax(winFormat.alphaBufferSize(), 8));
if (!widget->windowHandle()->handle()) {
+ widget->windowHandle()->setSurfaceType(QWindow::OpenGLSurface);
widget->windowHandle()->setFormat(winFormat);
widget->winId();//make window
}
d->oldContext = const_cast<QGLContext *>(QGLContext::currentContext());
d->window = new QWindow;
+ d->window->setSurfaceType(QWindow::OpenGLSurface);
d->window->setGeometry(QRect(0, 0, 3, 3));
d->window->create();