MythTV  master
mythuiprocedural.h
Go to the documentation of this file.
1 #ifndef MYTHUIPROCEDURAL_H
2 #define MYTHUIPROCEDURAL_H
3 
4 // MythTV
5 #include "mythuitype.h"
6 
7 // Std
8 #include <memory>
9 
10 using ShaderSource = std::shared_ptr<QByteArray>;
11 
13 {
14  public:
15  MythUIProcedural(MythUIType* Parent, const QString& Name);
16 
17  protected:
18  void DrawSelf(MythPainter* Painter, int XOffset, int YOffset, int AlphaMod, QRect ClipRect) override;
19  bool ParseElement(const QString& FileName, QDomElement& Element, bool ShowWarnings) override;
20  void CopyFrom(MythUIType* Base) override;
21  void CreateCopy(MythUIType* Parent) override;
22  void Pulse() override;
23  void Finalize(void) override; // MythUIType
24  static ShaderSource LoadShaderSource(const QString &filename);
25 
26  protected:
27  QString m_hash;
30 };
31 
32 #endif
MythUIProcedural::m_hash
QString m_hash
Definition: mythuiprocedural.h:27
MythUIProcedural::ParseElement
bool ParseElement(const QString &FileName, QDomElement &Element, bool ShowWarnings) override
Parse the xml definition of this widget setting the state of the object accordingly.
Definition: mythuiprocedural.cpp:52
MythUIProcedural::Finalize
void Finalize(void) override
Perform any post-xml parsing initialisation tasks.
Definition: mythuiprocedural.cpp:92
ShaderSource
std::shared_ptr< QByteArray > ShaderSource
Definition: mythuiprocedural.h:10
MythUIProcedural
Definition: mythuiprocedural.h:12
MythUIType
The base class on which all widgets and screens are based.
Definition: mythuitype.h:85
MythUIProcedural::CreateCopy
void CreateCopy(MythUIType *Parent) override
Copy the state of this widget to the one given, it must be of the same type.
Definition: mythuiprocedural.cpp:80
MythUIProcedural::m_vertexSource
ShaderSource m_vertexSource
Definition: mythuiprocedural.h:28
MythUIProcedural::m_fragmentSource
ShaderSource m_fragmentSource
Definition: mythuiprocedural.h:29
MythUIProcedural::MythUIProcedural
MythUIProcedural(MythUIType *Parent, const QString &Name)
A procedural texture class.
Definition: mythuiprocedural.cpp:38
MythPainter
Definition: mythpainter.h:34
Name
Definition: channelsettings.cpp:71
MythUIProcedural::Pulse
void Pulse() override
Pulse is called 70 times a second to trigger a single frame of an animation.
Definition: mythuiprocedural.cpp:86
MythUIProcedural::LoadShaderSource
static ShaderSource LoadShaderSource(const QString &filename)
Definition: mythuiprocedural.cpp:105
MythUIProcedural::DrawSelf
void DrawSelf(MythPainter *Painter, int XOffset, int YOffset, int AlphaMod, QRect ClipRect) override
Definition: mythuiprocedural.cpp:43
MythUIProcedural::CopyFrom
void CopyFrom(MythUIType *Base) override
Copy this widgets state from another.
Definition: mythuiprocedural.cpp:68
build_compdb.filename
filename
Definition: build_compdb.py:21
mythuitype.h