X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/7a8fff2da5f732bad0beaf934e7a20395b4921bd..24dab815808d6be2758f3e63f93b7c171190059e:/lib/gui/elistbox.h diff --git a/lib/gui/elistbox.h b/lib/gui/elistbox.h index 08f80035..76ad8208 100644 --- a/lib/gui/elistbox.h +++ b/lib/gui/elistbox.h @@ -4,6 +4,7 @@ #include #include +class eListbox; class eSlider; class iListboxContent: public iObject @@ -56,12 +57,15 @@ public: eListbox(eWidget *parent); ~eListbox(); + PSignal0 selectionChanged; + enum { showOnDemand, showAlways, showNever }; void setScrollbarMode(int mode); + void setWrapAround(bool); void setContent(iListboxContent *content); @@ -72,9 +76,13 @@ public: moveEnd, justCheck }; */ - + + int getCurrentIndex(); void moveSelection(int how); void moveSelectionTo(int index); + void moveToEnd(); + bool atBegin(); + bool atEnd(); enum ListboxActions { moveUp, @@ -88,7 +96,6 @@ public: void setItemHeight(int h); void setSelectionEnable(int en); - #ifndef SWIG /* entryAdded: an entry was added *before* the given index. it's index is the given number. */ void entryAdded(int index); @@ -97,7 +104,7 @@ public: /* entryChanged: the entry with the given index was changed and should be redrawn. */ void entryChanged(int index); /* the complete list changed. you should not attemp to keep the current index. */ - void entryReset(); + void entryReset(bool cursorHome=true); protected: int event(int event, void *data=0, void *data2=0); @@ -106,6 +113,7 @@ protected: private: int m_scrollbar_mode, m_prev_scrollbar_page; bool m_content_changed; + bool m_enabled_wrap_around; int m_top, m_selected; int m_itemheight;