comparison m4/acinclude.m4 @ 24142:59cdf06c940e

use QOpenGLWidget if it is available * acinclude.m4 (OCTAVE_CHECK_QT_OPENGL_OK): Check for QOpenGlWidget. * GLCanvas.h, GLCanvas.cc (GLCanvas): Use QOpenGLWidget if it is available. Error both QOpenGLWidget and QGLWidget are missing.
author John W. Eaton <jwe@octave.org>
date Fri, 13 Oct 2017 13:22:09 -0400
parents ed746cbfce24
children 25ccc1f8092d
comparison
equal deleted inserted replaced
24141:af577de75e68 24142:59cdf06c940e
1340 [AC_LANG_PUSH(C++) 1340 [AC_LANG_PUSH(C++)
1341 ac_octave_save_CPPFLAGS="$CPPFLAGS" 1341 ac_octave_save_CPPFLAGS="$CPPFLAGS"
1342 ac_octave_save_CXXFLAGS="$CXXFLAGS" 1342 ac_octave_save_CXXFLAGS="$CXXFLAGS"
1343 CPPFLAGS="$QT_CPPFLAGS $CXXPICFLAG $CPPFLAGS" 1343 CPPFLAGS="$QT_CPPFLAGS $CXXPICFLAG $CPPFLAGS"
1344 CXXFLAGS="$CXXPICFLAG $CXXFLAGS" 1344 CXXFLAGS="$CXXPICFLAG $CXXFLAGS"
1345 AC_CHECK_HEADERS([QOpenGLWidget QGLWidget])
1345 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ 1346 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
1346 #if HAVE_WINDOWS_H 1347 #if HAVE_WINDOWS_H
1347 # include <windows.h> 1348 # include <windows.h>
1348 #endif 1349 #endif
1349 #if defined (HAVE_GL_GL_H) 1350 #if defined (HAVE_GL_GL_H)
1350 # include <GL/gl.h> 1351 # include <GL/gl.h>
1351 #elif defined (HAVE_OPENGL_GL_H) 1352 #elif defined (HAVE_OPENGL_GL_H)
1352 # include <OpenGL/gl.h> 1353 # include <OpenGL/gl.h>
1353 #endif 1354 #endif
1354 #if defined (HAVE_GL_GLU_H) 1355 #if defined (HAVE_GL_GLU_H)
1355 # include <GL/glu.h> 1356 # include <GL/glu.h>
1356 #elif defined HAVE_OPENGL_GLU_H || defined HAVE_FRAMEWORK_OPENGL 1357 #elif defined HAVE_OPENGL_GLU_H || defined HAVE_FRAMEWORK_OPENGL
1357 # include <OpenGL/glu.h> 1358 # include <OpenGL/glu.h>
1358 #endif 1359 #endif
1359 #include <QGLWidget> 1360 #if defined (HAVE_QOPENGLWIDGET)
1360 class gl_widget : public QGLWidget 1361 # include <QOpenGLWidget>
1362 # define OCTAVE_QT_OPENGL_WIDGET QOpenGLWidget
1363 #elif defined (HAVE_QGLWIDGET)
1364 # include <QGLWidget>
1365 # define OCTAVE_QT_OPENGL_WIDGET QGLWidget
1366 #endif
1367 class gl_widget : public OCTAVE_QT_OPENGL_WIDGET
1361 { 1368 {
1362 public: 1369 public:
1363 gl_widget (QWidget *parent = 0) : QGLWidget (parent) {} 1370 gl_widget (QWidget *parent = 0)
1371 : OCTAVE_QT_OPENGL_WIDGET (parent) { }
1364 ~gl_widget () {} 1372 ~gl_widget () {}
1365 }; 1373 };
1366 ]], [[ 1374 ]], [[
1367 gl_widget widget; 1375 gl_widget widget;
1368 ]])], 1376 ]])],