5 #include <lib/gui/ewidget.h>
6 #include <lib/base/ebase.h>
7 #include <lib/dvb/subtitle.h>
10 class eSubtitleWidget
: public eWidget
13 std::set
<int> pageids
;
18 #ifndef TUXTXT_CFG_STANDALONE
22 int rememberttxsubpage
;
24 subtitle_ctx
*subtitle
; // the subtitle context
28 unsigned long long pts
;
33 std::queue
<pes_packet_s
> queue
;
35 eTimer timer
, timeout
;
36 void processPESPacket(unsigned char *pkt
, int len
);
38 void displaying_timeout();
40 unsigned char pesbuffer
[65536];
43 static eSubtitleWidget
*instance
;
44 int eventHandler(const eWidgetEvent
&event
);
45 void globalFocusHasChanged(const eWidget
* newFocus
);
47 void start(int pid
, const std::set
<int> &pageids
);
48 #ifndef TUXTXT_CFG_STANDALONE
49 void startttx(int page
);
56 static eSubtitleWidget
*getInstance() { return instance
; }