comparison Samples/Qt/QStoneOpenGlWidget.h @ 849:8a8cf2991538 am-dev

Qt sample (work in progress)
author Alain Mazy <alain@mazy.be>
date Mon, 17 Jun 2019 15:04:47 +0200
parents
children 23701fbf228e
comparison
equal deleted inserted replaced
838:997290c7d537 849:8a8cf2991538
1 #pragma once
2 #include "../../Framework/OpenGL/OpenGLIncludes.h"
3 #include <QOpenGLWidget>
4 #include <QOpenGLFunctions>
5
6 #include <boost/shared_ptr.hpp>
7 #include "../../Framework/OpenGL/IOpenGLContext.h"
8 #include "../../Framework/Scene2D/OpenGLCompositor.h"
9
10
11 class QStoneOpenGlWidget : public QOpenGLWidget, public OrthancStone::OpenGL::IOpenGLContext
12 {
13 boost::shared_ptr<OrthancStone::OpenGLCompositor> compositor_;
14
15 public:
16 QStoneOpenGlWidget(QWidget *parent) : QOpenGLWidget(parent) { }
17
18 protected:
19 void initializeGL() override;
20
21 void resizeGL(int w, int h) override;
22
23 void paintGL() override;
24
25 virtual void MakeCurrent() override {}
26
27 virtual void SwapBuffer() override {}
28
29 virtual unsigned int GetCanvasWidth() const override
30 {
31 return this->width();
32 }
33
34 virtual unsigned int GetCanvasHeight() const override
35 {
36 return this->height();
37 }
38
39 public:
40 void SetCompositor(boost::shared_ptr<OrthancStone::OpenGLCompositor> compositor)
41 {
42 compositor_ = compositor;
43 }
44
45 };