MythTV  master
mythmainwindow_internal.h
Go to the documentation of this file.
1 #ifndef MYTHMAINWINDOW_INT
2 #define MYTHMAINWINDOW_INT
3 
4 #include <QWidget>
5 
6 #if defined( USE_OPENGL_PAINTER ) || defined( _WIN32 )
7 # include <QGLWidget>
8 #endif
9 
10 class MythMainWindow;
12 
13 #ifdef USE_OPENGL_PAINTER
14 #include "mythrender_opengl.h"
15 
16 #ifdef USE_OPENGL_QT5
17 #include <QWidget>
18 typedef QWidget MythPainterWindowWidget;
19 #else
20 #include <QGLWidget>
21 typedef QGLWidget MythPainterWindowWidget;
22 #endif
23 #ifdef USING_MINGW
24 #include <QGLWidget>
25 #endif
26 
28 {
29  Q_OBJECT
30 
31  public:
33  MythRenderOpenGL *rend);
34 #ifdef USE_OPENGL_QT5
36  QPaintEngine *paintEngine() const;
37 #endif
38 
39  void paintEvent(QPaintEvent *e) override; // MythPainterWindowWidget aka QWidget
40 
44 };
45 #endif
46 
47 #ifdef _WIN32
48 // FIXME - this only really needs a QWidget but the background overpaints the
49 // main window (setAutoFillBackground(false) does not seem to help)
50 class MythPainterWindowD3D9 : public QGLWidget
51 {
52  Q_OBJECT
53 
54  public:
56 
57  void paintEvent(QPaintEvent *e) override; // QGLWidget
58 
61 };
62 #endif
63 
64 class MythPainterWindowQt : public QWidget
65 {
66  Q_OBJECT
67 
68  public:
70 
71  void paintEvent(QPaintEvent *e) override; // QWidget
72 
75 };
76 
77 #endif
void paintEvent(QPaintEvent *e) override
MythMainWindowPrivate * d
MythMainWindowPrivate * d
MythPainterWindowGL(MythMainWindow *win, MythMainWindowPrivate *priv, MythRenderOpenGL *rend)
QGLWidget MythPainterWindowWidget
void paintEvent(QPaintEvent *e) override
MythMainWindowPrivate * d
MythRenderOpenGL * m_render
MythPainterWindowQt(MythMainWindow *win, MythMainWindowPrivate *priv)
MythPainterWindowD3D9(MythMainWindow *win, MythMainWindowPrivate *priv)
void paintEvent(QPaintEvent *e) override