KDirListerCache Class Reference
Design of the cache: There is a single KDirListerCache for the whole process. More...
#include <kdirlister_p.h>

Public Slots | |
| void | slotFileRenamed (const QString &srcUrl, const QString &dstUrl) |
| void | slotFilesAdded (const QString &urlDirectory) |
| void | slotFilesChanged (const QStringList &fileList) |
| void | slotFilesRemoved (const QStringList &fileList) |
Public Member Functions | |
| KDirListerCache () | |
| ~KDirListerCache () | |
| void | emitItemsFromCache (KDirLister::Private::CachedItemsJob *job, KDirLister *lister, const KUrl &_url, bool _reload, bool _emitCompleted) |
| KFileItem | findByName (const KDirLister *lister, const QString &_name) const |
| KFileItem * | findByUrl (const KDirLister *lister, const KUrl &url) const |
| void | forgetCachedItemsJob (KDirLister::Private::CachedItemsJob *job, KDirLister *lister, const KUrl &url) |
| void | forgetDirs (KDirLister *lister, const KUrl &_url, bool notify) |
| void | forgetDirs (KDirLister *lister) |
| KFileItem | itemForUrl (const KUrl &url) const |
| KFileItemList * | itemsForDir (const KUrl &dir) const |
| bool | listDir (KDirLister *lister, const KUrl &_url, bool _keep, bool _reload) |
| void | setAutoUpdate (KDirLister *lister, bool enable) |
| void | stop (KDirLister *lister, bool silent=false) |
| void | stopListingUrl (KDirLister *lister, const KUrl &_url, bool silent=false) |
| void | updateDirectory (const KUrl &dir) |
Detailed Description
Design of the cache: There is a single KDirListerCache for the whole process.
It holds all the items used by the dir listers (itemsInUse) as well as a cache of the recently used items (itemsCached). Those items are grouped by directory (a DirItem represents a whole directory).
KDirListerCache also runs all the jobs for listing directories, whether they are for normal listing or for updates. For faster lookups, it also stores a hash table, which gives for a directory URL:
- the dirlisters holding that URL (listersCurrentlyHolding)
- the dirlisters currently listing that URL (listersCurrentlyListing)
Definition at line 181 of file kdirlister_p.h.
Constructor & Destructor Documentation
| KDirListerCache::KDirListerCache | ( | ) |
Definition at line 53 of file kdirlister.cpp.
| KDirListerCache::~KDirListerCache | ( | ) |
Definition at line 79 of file kdirlister.cpp.
Member Function Documentation
| void KDirListerCache::emitItemsFromCache | ( | KDirLister::Private::CachedItemsJob * | job, |
| KDirLister * | lister, | ||
| const KUrl & | _url, | ||
| bool | _reload, | ||
| bool | _emitCompleted | ||
| ) |
Definition at line 323 of file kdirlister.cpp.
| KFileItem KDirListerCache::findByName | ( | const KDirLister * | lister, |
| const QString & | _name | ||
| ) | const |
Definition at line 783 of file kdirlister.cpp.
| KFileItem * KDirListerCache::findByUrl | ( | const KDirLister * | lister, |
| const KUrl & | url | ||
| ) | const |
Definition at line 799 of file kdirlister.cpp.
| void KDirListerCache::forgetCachedItemsJob | ( | KDirLister::Private::CachedItemsJob * | job, |
| KDirLister * | lister, | ||
| const KUrl & | url | ||
| ) |
Definition at line 365 of file kdirlister.cpp.
| void KDirListerCache::forgetDirs | ( | KDirLister * | lister | ) |
Definition at line 511 of file kdirlister.cpp.
| void KDirListerCache::forgetDirs | ( | KDirLister * | lister, |
| const KUrl & | _url, | ||
| bool | notify | ||
| ) |
Definition at line 544 of file kdirlister.cpp.
Definition at line 758 of file kdirlister.cpp.
| KFileItemList * KDirListerCache::itemsForDir | ( | const KUrl & | dir | ) | const |
Definition at line 777 of file kdirlister.cpp.
| bool KDirListerCache::listDir | ( | KDirLister * | lister, |
| const KUrl & | _url, | ||
| bool | _keep, | ||
| bool | _reload | ||
| ) |
Definition at line 95 of file kdirlister.cpp.
| void KDirListerCache::setAutoUpdate | ( | KDirLister * | lister, |
| bool | enable | ||
| ) |
Definition at line 496 of file kdirlister.cpp.
Definition at line 942 of file kdirlister.cpp.
| void KDirListerCache::slotFilesAdded | ( | const QString & | urlDirectory | ) | [slot] |
Notify that files have been added in directory The receiver will list that directory again to find the new items (since it needs more than just the names anyway).
Connected to the DBus signal from the KDirNotify interface.
Definition at line 835 of file kdirlister.cpp.
| void KDirListerCache::slotFilesChanged | ( | const QStringList & | fileList | ) | [slot] |
Notify that files have been changed.
At the moment, this is only used for new icon, but it could be used for size etc. as well. Connected to the DBus signal from the KDirNotify interface.
Definition at line 908 of file kdirlister.cpp.
| void KDirListerCache::slotFilesRemoved | ( | const QStringList & | fileList | ) | [slot] |
Notify that files have been deleted.
This call passes the exact urls of the deleted files so that any view showing them can simply remove them or be closed (if its current dir was deleted) Connected to the DBus signal from the KDirNotify interface.
Definition at line 848 of file kdirlister.cpp.
| void KDirListerCache::stop | ( | KDirLister * | lister, |
| bool | silent = false |
||
| ) |
Definition at line 412 of file kdirlister.cpp.
| void KDirListerCache::stopListingUrl | ( | KDirLister * | lister, |
| const KUrl & | _url, | ||
| bool | silent = false |
||
| ) |
Definition at line 437 of file kdirlister.cpp.
| void KDirListerCache::updateDirectory | ( | const KUrl & | dir | ) |
Definition at line 637 of file kdirlister.cpp.
The documentation for this class was generated from the following files:
KDE 4.6 API Reference