X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/ae59e9cff74f8b5c36203b43ab5be0ead370b096..4f0779fd3cd5951698d537c721dc17e85f15a681:/lib/gui/esubtitle.h diff --git a/lib/gui/esubtitle.h b/lib/gui/esubtitle.h index d7287776..cdad7286 100644 --- a/lib/gui/esubtitle.h +++ b/lib/gui/esubtitle.h @@ -12,26 +12,32 @@ struct ePangoSubtitlePageElement std::string m_pango_line; eRect m_area; ePangoSubtitlePageElement(const gRGB &color, const std::string &text) - : m_color(color), m_pango_line(text), m_have_color(true) + : m_color(color), m_have_color(true), m_pango_line(text) { } ePangoSubtitlePageElement(const std::string &text) - : m_pango_line(text), m_have_color(false) + : m_have_color(false), m_pango_line(text) { } }; struct ePangoSubtitlePage { - pts_t show_pts; + pts_t m_show_pts; int m_timeout; /* in milliseconds */ std::vector m_elements; void clear() { m_elements.clear(); } }; +struct eVobSubtitlePage +{ + pts_t m_show_pts; + int m_timeout; /* in milliseconds */ + ePtr m_pixmap; +}; + class eDVBTeletextSubtitlePage; -class eDVBPangoSubtitlePage; -class ePangoSubtitlePage; +class eDVBSubtitlePage; class eSubtitleWidget: public eWidget, public Object { @@ -42,7 +48,7 @@ public: void setPage(const eDVBSubtitlePage &p); void setPage(const ePangoSubtitlePage &p); void clearPage(); - void setPixmap(ePtr &pixmap, gRegion changed); + void setPixmap(ePtr &pixmap, gRegion changed, eRect dest = eRect(0, 0, 720, 576)); typedef enum { Subtitle_TTX, Subtitle_Regular, Subtitle_Bold, Subtitle_Italic, Subtitle_MAX } subfont_t; struct eSubtitleStyle @@ -75,6 +81,7 @@ private: static eSubtitleStyle subtitleStyles[Subtitle_MAX]; ePtr m_pixmap; // pixmap to paint on next evtPaint + eRect m_pixmap_dest; }; #endif