8 #include <QPaintDevice> 45 virtual QString GetName(
void) = 0;
46 virtual bool SupportsAnimation(
void) = 0;
47 virtual bool SupportsAlpha(
void) = 0;
48 virtual bool SupportsClipping(
void) = 0;
50 virtual void Begin(QPaintDevice *parent) { m_Parent = parent; }
51 virtual void End() { m_Parent =
nullptr; }
53 virtual void SetClipRect(
const QRect &clipRect);
54 virtual void SetClipRegion(
const QRegion &clipRegion);
55 virtual void Clear(QPaintDevice *device,
const QRegion ®ion);
59 virtual void DrawImage(
const QRect &
dest,
MythImage *im,
const QRect &src,
62 void DrawImage(
int x,
int y,
MythImage *im,
int alpha);
63 void DrawImage(
const QPoint &topLeft,
MythImage *im,
int alph);
65 virtual void DrawText(
const QRect &
dest,
const QString &msg,
int flags,
67 const QRect &boundRect);
68 virtual void DrawTextLayout(
const QRect &canvasRect,
72 const QRect &destRect);
73 virtual void DrawRect(
const QRect &area,
const QBrush &fillBrush,
74 const QPen &linePen,
int alpha);
75 virtual void DrawRoundRect(
const QRect &area,
int cornerRadius,
76 const QBrush &fillBrush,
const QPen &linePen,
78 virtual void DrawEllipse(
const QRect &area,
const QBrush &fillBrush,
79 const QPen &linePen,
int alpha);
81 virtual void PushTransformation(
const UIEffects &zoom, QPointF center = QPointF());
92 m_showBorders = showBorders;
93 m_showNames = showNames;
99 void SetMaximumCacheSizes(
int hardware,
int software);
102 void DrawTextPriv(
MythImage *im,
const QString &msg,
int flags,
104 void DrawRectPriv(
MythImage *im,
const QRect &area,
int radius,
int ellipse,
105 const QBrush &fillBrush,
const QPen &linePen);
107 MythImage *GetImageFromString(
const QString &msg,
int flags,
const QRect &
r,
112 QRect &canvas, QRect &
dest);
113 MythImage *GetImageFromRect(
const QRect &area,
int radius,
int ellipse,
114 const QBrush &fillBrush,
115 const QPen &linePen);
118 virtual MythImage* GetFormatImagePriv(
void) = 0;
119 virtual void DeleteFormatImagePriv(
MythImage *im) = 0;
120 void ExpireImages(int64_t max = 0);
124 virtual void Teardown(
void);
QMap< QString, MythImage * > m_StringToImageMap
QSet< MythImage * > m_allocatedImages
QVector< QTextLayout * > LayoutVector
std::list< QString > m_StringExpireList
virtual void FreeResources(void)
QPaintDevice * GetParent(void)
int64_t m_MaxSoftwareCacheSize
QVector< QTextLayout::FormatRange > FormatVector
int64_t m_SoftwareCacheSize
virtual void Begin(QPaintDevice *parent)
void SetDebugMode(bool showBorders, bool showNames)
virtual void PopTransformation(void)
int m_MaxHardwareCacheSize