Commit 85dae8b3 authored by Hans-Christian Ebke's avatar Hans-Christian Ebke

Qt5 compat fixes.

git-svn-id: http://www.openflipper.org/svnrepo/OpenFlipper/branches/Free@18975 383ad7c9-94d9-4d36-a494-682f7c89f535
parent 8d5c625c
#include <GL/glew.h>
#include "DepthPeeling.hh"
#include <OpenFlipper/common/GlobalOptions.hh>
#include <OpenFlipper/BasePlugin/PluginFunctions.hh>
#undef QT_NO_OPENGL
#include <QGLFormat>
#define QT_NO_OPENGL
#include <ACG/GL/gl.hh>
......@@ -172,29 +171,6 @@ void DepthPeeling::initializePlugin()
ACG::ShaderProgGenerator::setShaderDir(OpenFlipper::Options::shaderDirStr());
}
QAction* DepthPeeling::optionsAction()
{
QMenu* menu = new QMenu("Depth Peeling Mode");
// Recreate actionGroup
QActionGroup* modeGroup = new QActionGroup( this );
modeGroup->setExclusive( true );
QAction * action = new QAction("Front to Back" , modeGroup );
action->setCheckable( true );
action = new QAction("Dual" , modeGroup );
action->setCheckable( true );
action->setChecked(true);
menu->addActions(modeGroup->actions());
connect(modeGroup,SIGNAL(triggered( QAction * )),this,SLOT(slotModeChanged( QAction * )));
return menu->menuAction();
}
void DepthPeeling::slotModeChanged( QAction * _action)
{
// Prepare Picking Debugger Flag
......@@ -774,34 +750,6 @@ void DepthPeeling::renderDualPeeling(ACG::GLState* _glState, Viewer::ViewerPrope
}
}
QString DepthPeeling::checkOpenGL()
{
// Get version and check
QGLFormat::OpenGLVersionFlags flags = QGLFormat::openGLVersionFlags();
if ( !flags.testFlag(QGLFormat::OpenGL_Version_3_2) )
return QString("Insufficient OpenGL Version! OpenGL 3.2 or higher required");
// Check extensions
QString glExtensions = QString((const char*)glGetString(GL_EXTENSIONS));
QString missing("");
if ( !glExtensions.contains("GL_ARB_vertex_buffer_object") )
missing += "GL_ARB_vertex_buffer_object extension missing\n";
#ifndef __APPLE__
if ( !glExtensions.contains("GL_ARB_vertex_program") )
missing += "GL_ARB_vertex_program extension missing\n";
#endif
if ( !glExtensions.contains("GL_ARB_occlusion_query") )
missing += "GL_ARB_occlusion_query extension missing\n";
return missing;
}
void DepthPeeling::addRenderObject( RenderObject* _renderObject )
{
// do some more checks for error detection
......
/*===========================================================================*\
* *
* OpenFlipper *
* Copyright (C) 2001-2014 by Computer Graphics Group, RWTH Aachen *
* www.openflipper.org *
* *
*--------------------------------------------------------------------------- *
* This file is part of OpenFlipper. *
* *
* OpenFlipper is free software: you can redistribute it and/or modify *
* it under the terms of the GNU Lesser General Public License as *
* published by the Free Software Foundation, either version 3 of *
* the License, or (at your option) any later version with the *
* following exceptions: *
* *
* If other files instantiate templates or use macros *
* or inline functions from this file, or you compile this file and *
* link it with other files to produce an executable, this file does *
* not by itself cause the resulting executable to be covered by the *
* GNU Lesser General Public License. This exception does not however *
* invalidate any other reasons why the executable file might be *
* covered by the GNU Lesser General Public License. *
* *
* OpenFlipper is distributed in the hope that it will be useful, *
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
* GNU Lesser General Public License for more details. *
* *
* You should have received a copy of the GNU LesserGeneral Public *
* License along with OpenFlipper. If not, *
* see <http://www.gnu.org/licenses/>. *
* *
\*===========================================================================*/
/*===========================================================================*\
* *
* $Revision: 18127 $ *
* $LastChangedBy: moebius $ *
* $Date: 2014-02-05 10:12:54 +0100 (Wed, 05 Feb 2014) $ *
* *
\*===========================================================================*/
/**
* @file Contains definitions that require qt headers which are incompatible
* with glew.h.
*/
#include "DepthPeeling.hh"
#include <QGLFormat>
#include <QAction>
#include <QMenu>
QString DepthPeeling::checkOpenGL()
{
// Get version and check
QGLFormat::OpenGLVersionFlags flags = QGLFormat::openGLVersionFlags();
if ( !flags.testFlag(QGLFormat::OpenGL_Version_3_2) )
return QString("Insufficient OpenGL Version! OpenGL 3.2 or higher required");
// Check extensions
QString glExtensions = QString((const char*)glGetString(GL_EXTENSIONS));
QString missing("");
if ( !glExtensions.contains("GL_ARB_vertex_buffer_object") )
missing += "GL_ARB_vertex_buffer_object extension missing\n";
#ifndef __APPLE__
if ( !glExtensions.contains("GL_ARB_vertex_program") )
missing += "GL_ARB_vertex_program extension missing\n";
#endif
if ( !glExtensions.contains("GL_ARB_occlusion_query") )
missing += "GL_ARB_occlusion_query extension missing\n";
return missing;
}
QAction* DepthPeeling::optionsAction()
{
QMenu* menu = new QMenu("Depth Peeling Mode");
// Recreate actionGroup
QActionGroup* modeGroup = new QActionGroup( this );
modeGroup->setExclusive( true );
QAction * action = new QAction("Front to Back" , modeGroup );
action->setCheckable( true );
action = new QAction("Dual" , modeGroup );
action->setCheckable( true );
action->setChecked(true);
menu->addActions(modeGroup->actions());
connect(modeGroup,SIGNAL(triggered( QAction * )),this,SLOT(slotModeChanged( QAction * )));
return menu->menuAction();
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment