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<ePangoSubtitlePageElement> m_elements;
void clear() { m_elements.clear(); }
};
+struct eVobSubtitlePage
+{
+ pts_t m_show_pts;
+ int m_timeout; /* in milliseconds */
+ ePtr<gPixmap> m_pixmap;
+};
+
class eDVBTeletextSubtitlePage;
-class eDVBPangoSubtitlePage;
-class ePangoSubtitlePage;
+class eDVBSubtitlePage;
class eSubtitleWidget: public eWidget, public Object
{
void setPage(const eDVBSubtitlePage &p);
void setPage(const ePangoSubtitlePage &p);
void clearPage();
- void setPixmap(ePtr<gPixmap> &pixmap, gRegion changed);
+ void setPixmap(ePtr<gPixmap> &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
static eSubtitleStyle subtitleStyles[Subtitle_MAX];
ePtr<gPixmap> m_pixmap; // pixmap to paint on next evtPaint
+ eRect m_pixmap_dest;
};
#endif