X-Git-Url: http://code.vuplus.com/gitweb/?a=blobdiff_plain;f=lib%2Fgui%2Fesubtitle.h;h=cdad7286cab7cd8e7ce3b7e29a4b4361b272440a;hb=b3a41d26169d1867be084a868d86d72c8f2d6af9;hp=d7287776f20204b4f696c4c996e5d030ffb2b3c5;hpb=3f71f581949b23c013b07a266e9aae0edd102a53;p=vuplus_dvbapp diff --git a/lib/gui/esubtitle.h b/lib/gui/esubtitle.h index d728777..cdad728 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