X-Git-Url: http://code.vuplus.com/gitweb/?a=blobdiff_plain;f=lib%2Fdvb%2Fteletext.h;h=7c62afb9e45212f5f7ce91fa7b6cd57072ba2ff4;hb=01da0bdcc7d4043dbab99ad19443e5860c72da79;hp=880fa569787c1f02c82746129b583433d555363c;hpb=81a206b7c61609f51ad5b4f4420c6eb562b83804;p=vuplus_dvbapp diff --git a/lib/dvb/teletext.h b/lib/dvb/teletext.h index 880fa56..7c62afb 100644 --- a/lib/dvb/teletext.h +++ b/lib/dvb/teletext.h @@ -13,8 +13,11 @@ struct eDVBTeletextSubtitlePageElement gRGB m_color; std::string m_text; eRect m_area; - eDVBTeletextSubtitlePageElement(const gRGB &color, const std::string &text) - : m_color(color), m_text(text) + + int m_source_line; + + eDVBTeletextSubtitlePageElement(const gRGB &color, const std::string &text, int source_line) + : m_color(color), m_text(text), m_source_line(source_line) { } }; @@ -26,6 +29,7 @@ struct eDVBTeletextSubtitlePage int m_timeout; /* in pts */ std::vector m_elements; + void clearLine(int line) { for (unsigned int i = 0; i < m_elements.size(); ) if (m_elements[i].m_source_line == line) m_elements.erase(m_elements.begin() + i); else ++i; } void clear() { m_elements.clear(); } }; @@ -59,8 +63,9 @@ private: std::string m_subtitle_text; int m_subtitle_color; + int m_current_source_line; - void addSubtitleString(int color, std::string string); + void addSubtitleString(int color, std::string string, int source_line); void sendSubtitlePage();