diff options
| author | Andreas Monzner <andreas.monzner@multimedia-labs.de> | 2006-11-21 20:17:09 +0000 |
|---|---|---|
| committer | Andreas Monzner <andreas.monzner@multimedia-labs.de> | 2006-11-21 20:17:09 +0000 |
| commit | 265fb595e8767536096985bcfca7d0c36e61b5a0 (patch) | |
| tree | 98c09d74ea8c49f1e4b86e2168068be5c8940af7 /lib/service/listboxservice.cpp | |
| parent | 5824a5dd33390117c70ff1cdfdf76afaaaac71ac (diff) | |
| download | enigma2-265fb595e8767536096985bcfca7d0c36e61b5a0.tar.gz enigma2-265fb595e8767536096985bcfca7d0c36e61b5a0.zip | |
small servicelist speedup
Diffstat (limited to 'lib/service/listboxservice.cpp')
| -rw-r--r-- | lib/service/listboxservice.cpp | 26 |
1 files changed, 13 insertions, 13 deletions
diff --git a/lib/service/listboxservice.cpp b/lib/service/listboxservice.cpp index 32b9007f..f5145074 100644 --- a/lib/service/listboxservice.cpp +++ b/lib/service/listboxservice.cpp @@ -51,12 +51,10 @@ void eListboxServiceContent::setRoot(const eServiceReference &root, bool justSet return; assert(m_service_center); - ePtr<iListableService> lst; - if (m_service_center->list(m_root, lst)) + if (m_service_center->list(m_root, m_lst)) eDebug("no list available!"); - else - if (lst->getContent(m_list)) - eDebug("getContent failed"); + else if (m_lst->getContent(m_list)) + eDebug("getContent failed"); FillFinished(); } @@ -227,10 +225,11 @@ void eListboxServiceContent::setPixmap(int type, ePtr<gPixmap> &pic) void eListboxServiceContent::sort() { - ePtr<iListableService> lst; - if (!m_service_center->list(m_root, lst)) + if (!m_lst) + m_service_center->list(m_root, m_lst); + if (m_lst) { - m_list.sort(iListableServiceCompare(lst)); + m_list.sort(iListableServiceCompare(m_lst)); /* FIXME: is this really required or can we somehow keep the current entry? */ cursorHome(); if (m_listbox) @@ -304,13 +303,12 @@ int eListboxServiceContent::setCurrentMarked(bool state) m_listbox->entryChanged(m_cursor_number); if (!state) { - ePtr<iListableService> lst; - if (m_service_center->list(m_root, lst)) - eDebug("no list available!"); - else + if (!m_lst) + m_service_center->list(m_root, m_lst); + if (m_lst) { ePtr<iMutableServiceList> list; - if (lst->startEdit(list)) + if (m_lst->startEdit(list)) eDebug("no editable list"); else { @@ -329,6 +327,8 @@ int eListboxServiceContent::setCurrentMarked(bool state) } } } + else + eDebug("no list available!"); } } |
