Error message when OpenGL can't be intialized

This commit is contained in:
2022-04-25 12:00:34 +02:00
parent cc69b7bc2d
commit ba450ee554
+12
View File
@@ -7,6 +7,8 @@
#include <QOpenGLFramebufferObject>
#include <QGridLayout>
#include <QMimeData>
#include <QMessageBox>
#include <QCoreApplication>
struct RawImageType
{
@@ -62,6 +64,13 @@ ImageWidget::ImageWidget(QWidget *parent) : QOpenGLWidget(parent)
m_updateTimer->setSingleShot(true);
connect(m_updateTimer, SIGNAL(timeout()), this, SLOT(update()));
setAcceptDrops(true);
QTimer::singleShot(1000, [this](){
if(!isValid())
{
QMessageBox::critical(this, tr("OpenGL error"), tr("Could not initialize OpenGL 3.3 context. Ensure that proper GPU driver is installed."));
QCoreApplication::exit(-1);
}
});
}
ImageWidget::~ImageWidget()
@@ -258,6 +267,9 @@ void ImageWidget::initializeGL()
f->glClearColor(0.5f, 0.5f, 0.5f, 1.0f);
f3 = context()->versionFunctions<QOpenGLFunctions_3_3_Core>();
if(f3 == nullptr)
QMessageBox::critical(this, tr("OpenGL error"), tr("Could not initialize OpenGL 3.3 context. Ensure that proper GPU driver is installed."));
m_vao = std::unique_ptr<QOpenGLVertexArrayObject>(new QOpenGLVertexArrayObject);
m_vaoThumb = std::unique_ptr<QOpenGLVertexArrayObject>(new QOpenGLVertexArrayObject);
m_vao->create();