26 #if ! defined (octave_GLCanvas_h)
27 #define octave_GLCanvas_h 1
29 #if defined (HAVE_QOPENGLWIDGET)
30 # include <QOpenGLWidget>
31 # define OCTAVE_QT_OPENGL_WIDGET QOpenGLWidget
32 # include <QOpenGLFramebufferObject>
33 # define OCTAVE_QT_OPENGL_FBO QOpenGLFramebufferObject
34 # if defined (HAVE_QT_OFFSCREEN)
35 # include <QOpenGLContext>
36 # include <QOffscreenSurface>
38 #elif defined (HAVE_QGLWIDGET)
40 # define OCTAVE_QT_OPENGL_WIDGET QGLWidget
41 # include <QGLFramebufferObject>
42 # define OCTAVE_QT_OPENGL_FBO QGLFramebufferObject
44 # error "configuration error: must have <QOpenGLWidget> or <QGLWidget>."
70 void do_print (
const QString& file_cmd,
const QString& term,
72 void drawZoomBox (
const QPoint& p1,
const QPoint& p2);
97 # if defined (HAVE_QT_OFFSCREEN)
98 QOpenGLContext m_os_context;
99 QOffscreenSurface m_os_surface;
void do_print(const QString &file_cmd, const QString &term, const graphics_handle &handle)
void drawZoomBox(const QPoint &p1, const QPoint &p2)
bool begin_rendering(void)
octave::qopengl_functions m_glfcns
void wheelEvent(QWheelEvent *event)
void keyPressEvent(QKeyEvent *event)
void mouseMoveEvent(QMouseEvent *event)
void resize(int, int, int, int)
void draw(const graphics_handle &handle)
uint8NDArray do_getPixels(const graphics_handle &handle)
void mousePressEvent(QMouseEvent *event)
octave::opengl_renderer m_renderer
graphics_object selectFromAxes(const graphics_object &ax, const QPoint &pt)
void mouseDoubleClickEvent(QMouseEvent *event)
void keyReleaseEvent(QKeyEvent *event)
GLCanvas(octave::base_qobject &oct_qobj, octave::interpreter &interp, const graphics_handle &handle, QWidget *parent)
void mouseReleaseEvent(QMouseEvent *event)
Base class for Octave interfaces that use Qt.