1 #ifndef __lib_gui_epositiongauge_h
2 #define __lib_gui_epositiongauge_h
4 #include <lib/gui/ewidget.h>
7 typedef long long pts_t;
11 class ePositionGauge: public eWidget
14 ePositionGauge(eWidget *parent);
16 void setLength(const pts_t &len);
17 void setPosition(const pts_t &pos);
19 void setInColor(const gRGB &color); /* foreground? */
20 void setPointer(int which, gPixmap *pixmap, const ePoint ¢er);
22 void setInOutList(SWIG_PYOBJECT(ePyObject) list);
23 void setForegroundColor(const gRGB &col);
25 void enableSeekPointer(int enable);
26 void setSeekPosition(const pts_t &pos);
30 int event(int event, void *data=0, void *data2=0);
32 void updatePosition();
33 enum ePositionGaugeEvent
35 evtChangedPosition = evtUserWidget
37 ePixmap *m_point_widget, *m_seek_point_widget;
38 ePoint m_point_center, m_seek_point_center;
40 pts_t m_position, m_length, m_seek_position;
41 int m_pos, m_seek_pos;
43 /* TODO: this is duplicated code from lib/service/servicedvb.h */
49 bool operator < (const struct cueEntry &o) const
51 return where < o.where;
53 cueEntry(const pts_t &where, unsigned int what) :
54 where(where), what(what)
59 std::multiset<cueEntry> m_cue_entries;
60 int scale(const pts_t &val);
62 int m_have_foreground_color;
63 gRGB m_foreground_color;