aboutsummaryrefslogtreecommitdiffstats
path: root/gui/application.cc
diff options
context:
space:
mode:
Diffstat (limited to 'gui/application.cc')
-rw-r--r--gui/application.cc17
1 files changed, 17 insertions, 0 deletions
diff --git a/gui/application.cc b/gui/application.cc
index 8c3db77b..0a82e40b 100644
--- a/gui/application.cc
+++ b/gui/application.cc
@@ -20,6 +20,8 @@
*/
#include "application.h"
+#include "log.h"
+#include <QOpenGLContext>
#include <QMessageBox>
#include <QSurfaceFormat>
#include <QTextStream>
@@ -42,7 +44,22 @@ Application::Application(int &argc, char **argv) : QApplication(argc, argv)
QSurfaceFormat fmt;
fmt.setSamples(10);
fmt.setProfile(QSurfaceFormat::CoreProfile);
+ // macOS is very picky about this version matching
+ // the version of openGL used in ImGuiRenderer
+ fmt.setMajorVersion(3);
+ fmt.setMinorVersion(2);
QSurfaceFormat::setDefaultFormat(fmt);
+
+ QOpenGLContext glContext;
+ fmt = glContext.format();
+ if (fmt.majorVersion() < 3) {
+ printf("Could not get OpenGL 3.0 context. Aborting.\n");
+ log_abort();
+ }
+ if (fmt.minorVersion() < 2) {
+ printf("Could not get OpenGL 3.2 context - trying anyway...\n ");
+ }
+
#ifdef _WIN32
SetConsoleCtrlHandler((PHANDLER_ROUTINE)WinHandler, TRUE);
#endif