qtbase/examples/opengl/hellogl2/mainwindow.cpp
Even Oscar Andersen e40fdf19ab wasm: hellogl2 screen is black
We need to reset the OpenGL state in paintGL for the drawing
to work,

Also, disable the dock/add window functionality as it does not
work on webassembly.

Change-Id: I480d944bc2029a07d5d49f0a85c3754fbc8cd53c
Reviewed-by: Lorn Potter <lorn.potter@gmail.com>
2024-07-01 17:33:48 +02:00

32 lines
912 B
C++

// Copyright (C) 2016 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
#include "mainwindow.h"
#include "window.h"
#include <QApplication>
#include <QKeySequence>
#include <QMenuBar>
#include <QMenu>
#include <QMessageBox>
MainWindow::MainWindow()
{
#ifndef Q_OS_WASM
QMenu *menuWindow = menuBar()->addMenu(tr("&Window"));
menuWindow->addAction(tr("Add new"), QKeySequence(Qt::CTRL | Qt::Key_N),
this, &MainWindow::onAddNew);
menuWindow->addAction(tr("Quit"), QKeySequence(Qt::CTRL | Qt::Key_Q),
qApp, QApplication::closeAllWindows);
#endif
onAddNew();
}
void MainWindow::onAddNew()
{
if (!centralWidget())
setCentralWidget(new Window);
else
QMessageBox::information(this, tr("Cannot Add New Window"),
tr("Already occupied. Undock first."));
}