X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/d205df8517cabea52bb2a9c7c3a2d1f706e38553..265fb595e8767536096985bcfca7d0c36e61b5a0:/lib/service/listboxservice.h?ds=sidebyside diff --git a/lib/service/listboxservice.h b/lib/service/listboxservice.h index 1d5dc2a2..8623336f 100644 --- a/lib/service/listboxservice.h +++ b/lib/service/listboxservice.h @@ -5,17 +5,24 @@ #include #include -class eEPGCache; - class eListboxServiceContent: public virtual iListboxContent { DECLARE_REF(eListboxServiceContent); - eEPGCache *epgcache; public: eListboxServiceContent(); - void setRoot(const eServiceReference &ref); - void getCurrent(eServiceReference &ref); + void addService(const eServiceReference &ref, bool beforeCurrent=false); + void removeCurrent(); + void FillFinished(); + + void setIgnoreService( const eServiceReference &service ); + void setRoot(const eServiceReference &ref, bool justSet=false); + void getCurrent(eServiceReference &ref); + + int getNextBeginningWithChar(char c); + int getPrevMarkerPos(); + int getNextMarkerPos(); + /* support for marked services */ void initMarked(); void addMarked(const eServiceReference &ref); @@ -38,15 +45,27 @@ public: /* only in complex mode: */ enum { - celIcon, celServiceNumber, + celMarkerPixmap, + celFolderPixmap, celServiceName, + celServiceTypePixmap, celServiceInfo, // "now" event celElements }; - + + enum { + picDVB_S, + picDVB_T, + picDVB_C, + picFolder, + picMarker, + picElements + }; + void setElementPosition(int element, eRect where); void setElementFont(int element, gFont *font); + void setPixmap(int type, ePtr &pic); void sort(); @@ -75,6 +94,7 @@ protected: /* for complex mode */ eRect m_element_position[celElements]; ePtr m_element_font[celElements]; + ePtr m_pixmaps[picElements]; private: typedef std::list list; @@ -86,6 +106,7 @@ private: eSize m_itemsize; ePtr m_service_center; + ePtr m_lst; eServiceReference m_root; @@ -97,6 +118,8 @@ private: bool m_current_marked; int m_numberoffset; + + eServiceReference m_is_playable_ignore; }; #endif