diff options
| author | Andreas Monzner <andreas.monzner@multimedia-labs.de> | 2007-11-19 23:58:58 +0000 |
|---|---|---|
| committer | Andreas Monzner <andreas.monzner@multimedia-labs.de> | 2007-11-19 23:58:58 +0000 |
| commit | ea9231ad7229f47ebf117a3b4894a9e4e7a3c40a (patch) | |
| tree | c1c41afba1d73b43eca5f21421f150bc3b91be0f /lib/gui | |
| parent | 03660c34322e7cdb315bd6ed87cecc68d14214c8 (diff) | |
| download | enigma2-ea9231ad7229f47ebf117a3b4894a9e4e7a3c40a.tar.gz enigma2-ea9231ad7229f47ebf117a3b4894a9e4e7a3c40a.zip | |
update scrollbar in timerlist when a entry is removed
Diffstat (limited to 'lib/gui')
| -rw-r--r-- | lib/gui/elistbox.cpp | 5 | ||||
| -rw-r--r-- | lib/gui/elistboxcontent.cpp | 9 | ||||
| -rw-r--r-- | lib/gui/elistboxcontent.h | 1 |
3 files changed, 13 insertions, 2 deletions
diff --git a/lib/gui/elistbox.cpp b/lib/gui/elistbox.cpp index 383ac42d..73fbff3b 100644 --- a/lib/gui/elistbox.cpp +++ b/lib/gui/elistbox.cpp @@ -432,7 +432,10 @@ void eListbox::entryRemoved(int index) if (index == m_selected && m_content) m_selected = m_content->cursorGet(); - moveSelection(justCheck); + if (m_content && m_content->cursorGet() >= m_content->size()) + moveSelection(moveUp); + else + moveSelection(justCheck); if ((m_top <= index) && (index < (m_top + m_items_per_page))) { diff --git a/lib/gui/elistboxcontent.cpp b/lib/gui/elistboxcontent.cpp index fd7341a9..191bc7e1 100644 --- a/lib/gui/elistboxcontent.cpp +++ b/lib/gui/elistboxcontent.cpp @@ -262,7 +262,8 @@ void eListboxPythonStringContent::invalidate() int s = size(); if ( m_cursor >= s ) m_listbox->moveSelectionTo(s?s-1:0); - m_listbox->invalidate(); + else + m_listbox->invalidate(); } } @@ -1021,3 +1022,9 @@ void eListboxPythonMultiContent::updateClip(gRegion &clip) else m_old_clip = m_clip = gRegion::invalidRegion(); } + +void eListboxPythonMultiContent::entryRemoved(int idx) +{ + if (m_listbox) + m_listbox->entryRemoved(idx); +} diff --git a/lib/gui/elistboxcontent.h b/lib/gui/elistboxcontent.h index 118ed302..277899e7 100644 --- a/lib/gui/elistboxcontent.h +++ b/lib/gui/elistboxcontent.h @@ -78,6 +78,7 @@ public: void setItemHeight(int height); void setSelectionClip(eRect &rect, bool update=false); void updateClip(gRegion &); + void entryRemoved(int idx); private: std::map<int, ePtr<gFont> > m_font; }; |
