From 75c24d504700b1810c94c970e40de953bc3a4779 Mon Sep 17 00:00:00 2001 From: alwin Date: Thu, 11 Nov 2004 00:52:25 +0000 Subject: speed up cat selection --- (limited to 'noncore/graphics/opie-eye') diff --git a/noncore/graphics/opie-eye/impl/doc/doc_lister.cpp b/noncore/graphics/opie-eye/impl/doc/doc_lister.cpp index d60149f..e43baed 100644 --- a/noncore/graphics/opie-eye/impl/doc/doc_lister.cpp +++ b/noncore/graphics/opie-eye/impl/doc/doc_lister.cpp @@ -38,6 +38,7 @@ Doc_DirLister::Doc_DirLister() m_namemap.clear(); m_filemap.clear(); + m_docreads = false; } QString Doc_DirLister::defaultPath()const { @@ -56,11 +57,13 @@ bool Doc_DirLister::matchCat(const AppLnk* app) QString Doc_DirLister::setStartPath(const QString&) { static const QString Mtype_str("image/jpeg;image/gif;image/bmp;image/png"); if (m_namemap.isEmpty()) { - DocLnkSet ds; - Global::findDocuments(&ds,Mtype_str); - QListIterator dit(ds.children()); + if (!m_docreads) { + Global::findDocuments(&m_ds,Mtype_str); + m_docreads = true; + } + QListIterator dit(m_ds.children()); for( ; dit.current(); ++dit) { - if (! (*dit)->isValid()) continue; +// if (! (*dit)->isValid()) continue; if (!matchCat((*dit))) continue; m_namemap[(*dit)->name()]=(*dit)->file(); m_filemap[(*dit)->file()]=(*dit)->name(); diff --git a/noncore/graphics/opie-eye/impl/doc/doc_lister.h b/noncore/graphics/opie-eye/impl/doc/doc_lister.h index e148ac0..403241c 100644 --- a/noncore/graphics/opie-eye/impl/doc/doc_lister.h +++ b/noncore/graphics/opie-eye/impl/doc/doc_lister.h @@ -7,6 +7,8 @@ #include +#include + #include #include @@ -38,6 +40,8 @@ private: QMap m_namemap,m_filemap; int m_catFilter; bool matchCat(const AppLnk* app); + bool m_docreads; + DocLnkSet m_ds; protected slots: virtual void slotFullInfo(const QString&, const QString&); -- cgit v0.9.0.2