make eSubtitleWidget more flexible
[enigma2.git] / lib / gui / esubtitle.h
index a4dab32425e139b4c4606be40a9b189de42c37ee..155427730ed056926d16345a082c7da00fba1eaf 100644 (file)
@@ -3,23 +3,35 @@
 
 #include <lib/gui/ewidget.h>
 #include <lib/dvb/teletext.h>
+#include <lib/dvb/subtitle.h>
 
 class eDVBTeletextSubtitlePage;
 
-class eSubtitleWidget: public eWidget
+class eSubtitleWidget: public eWidget, public Object
 {
 public:
        eSubtitleWidget(eWidget *parent);
        
-       void addPage(const eDVBTeletextSubtitlePage &p);
-       void checkTiming();
-       void activatePage();
+       void setPage(const eDVBTeletextSubtitlePage &p);
+       void setPage(const eDVBSubtitlePage &p);
+       void clearPage();
 
+       void setPixmap(ePtr<gPixmap> &pixmap, gRegion changed);
 protected:
        int event(int event, void *data=0, void *data2=0);
 
 private:
-       std::list<eDVBTeletextSubtitlePage> m_pages;
+       int m_page_ok;
+       eDVBTeletextSubtitlePage m_page;
+
+       int m_dvb_page_ok;
+       eDVBSubtitlePage m_dvb_page;
+
+       eTimer m_hide_subtitles_timer;
+
+       gRegion m_visible_region;
+
+       ePtr<gPixmap> m_pixmap;  // pixmap to paint on next evtPaint
 };
 
 #endif