X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/ff3e20702fe0458bdefbb42f851ba29c64c6da69..d04e6435efecf42a192a4f6c71dca9a1a053d5fb:/lib/service/listboxservice.h?ds=sidebyside diff --git a/lib/service/listboxservice.h b/lib/service/listboxservice.h index d26ee545..589afba6 100644 --- a/lib/service/listboxservice.h +++ b/lib/service/listboxservice.h @@ -1,6 +1,7 @@ #ifndef __lib_service_listboxservice_h #define __lib_service_listboxservice_h +#include #include #include #include @@ -11,7 +12,8 @@ class eListboxServiceContent: public virtual iListboxContent public: eListboxServiceContent(); - void addService(const eServiceReference &ref); + void addService(const eServiceReference &ref, bool beforeCurrent=false); + void removeCurrent(); void FillFinished(); void setIgnoreService( const eServiceReference &service ); @@ -19,7 +21,9 @@ public: void getCurrent(eServiceReference &ref); int getNextBeginningWithChar(char c); - + int getPrevMarkerPos(); + int getNextMarkerPos(); + /* support for marked services */ void initMarked(); void addMarked(const eServiceReference &ref); @@ -43,7 +47,9 @@ public: /* only in complex mode: */ enum { celServiceNumber, + celMarkerPixmap, celFolderPixmap, + celServiceEventProgressbar, celServiceName, celServiceTypePixmap, celServiceInfo, // "now" event @@ -54,7 +60,10 @@ public: picDVB_S, picDVB_T, picDVB_C, + picServiceGroup, picFolder, + picMarker, + picServiceEventProgressbar, picElements }; @@ -67,6 +76,26 @@ public: int setCurrentMarked(bool); void setNumberOffset(int offset) { m_numberoffset = offset; } + + int getItemHeight() { return m_itemheight; } + void setItemHeight(int height); + + enum { + markedForeground, + markedForegroundSelected, + markedBackground, + markedBackgroundSelected, + serviceNotAvail, + serviceEventProgressbarColor, + serviceEventProgressbarColorSelected, + serviceEventProgressbarBorderColor, + serviceEventProgressbarBorderColorSelected, + serviceDescriptionColor, + serviceDescriptionColorSelected, + colorElements + }; + + void setColor(int color, gRGB &col); protected: void cursorHome(); void cursorEnd(); @@ -90,6 +119,8 @@ protected: eRect m_element_position[celElements]; ePtr m_element_font[celElements]; ePtr m_pixmaps[picElements]; + gRGB m_color[colorElements]; + bool m_color_set[colorElements]; private: typedef std::list list; @@ -101,6 +132,7 @@ private: eSize m_itemsize; ePtr m_service_center; + ePtr m_lst; eServiceReference m_root; @@ -114,6 +146,8 @@ private: int m_numberoffset; eServiceReference m_is_playable_ignore; + + int m_itemheight; }; #endif