X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/fc233e3a96e68514165781859afc94a2bb33e9e9..9925392e576717cc0df070ace822a6f392808bb7:/lib/service/listboxservice.h diff --git a/lib/service/listboxservice.h b/lib/service/listboxservice.h index f560b627..d64805c5 100644 --- a/lib/service/listboxservice.h +++ b/lib/service/listboxservice.h @@ -13,13 +13,13 @@ public: eListboxServiceContent(); void setRoot(const eServiceReference &ref); void getCurrent(eServiceReference &ref); - + /* support for marked services */ void initMarked(); void addMarked(const eServiceReference &ref); void removeMarked(const eServiceReference &ref); int isMarked(const eServiceReference &ref); - + /* this is NOT thread safe! */ void markedQueryStart(); int markedQueryNext(eServiceReference &ref); @@ -45,6 +45,10 @@ public: void setElementPosition(int element, eRect where); void setElementFont(int element, gFont *font); + void sort(); + + int setCurrentMarked(bool); + protected: void cursorHome(); void cursorEnd(); @@ -52,7 +56,7 @@ protected: int cursorValid(); int cursorSet(int n); int cursorGet(); - + void cursorSave(); void cursorRestore(); int size(); @@ -80,11 +84,14 @@ private: ePtr m_service_center; eServiceReference m_root; - + /* support for marked services */ std::set m_marked; - std::set::const_iterator m_marked_iterator; + + /* support for movemode */ + bool m_current_marked; + list::iterator m_swap; }; #endif