diff options
| author | Peter Penz <[email protected]> | 2008-09-21 21:17:00 +0000 |
|---|---|---|
| committer | Peter Penz <[email protected]> | 2008-09-21 21:17:00 +0000 |
| commit | 5edaa4b299de465d3e3d43389b29834e01ced190 (patch) | |
| tree | dadf2f3cb292004a3cd4157628e924eac444ca1d /src/kfilepreviewgenerator.h | |
| parent | 5fe847f61438c5535fc1f0143e80583a5f7012bd (diff) | |
prepare class to simplify keeping binary compatibility
svn path=/trunk/KDE/kdebase/apps/; revision=863339
Diffstat (limited to 'src/kfilepreviewgenerator.h')
| -rw-r--r-- | src/kfilepreviewgenerator.h | 143 |
1 files changed, 11 insertions, 132 deletions
diff --git a/src/kfilepreviewgenerator.h b/src/kfilepreviewgenerator.h index 6d720fefc..67f26a7e7 100644 --- a/src/kfilepreviewgenerator.h +++ b/src/kfilepreviewgenerator.h @@ -84,139 +84,18 @@ public: /** Cancels all pending previews. */ void cancelPreviews(); -private slots: - /** - * Generates previews for the items \a items asynchronously. - */ - void generatePreviews(const KFileItemList& items); - - /** - * Adds the preview \a pixmap for the item \a item to the preview - * queue and starts a timer which will dispatch the preview queue - * later. - */ - void addToPreviewQueue(const KFileItem& item, const QPixmap& pixmap); - - /** - * Is invoked when the preview job has been finished and - * removes the job from the m_previewJobs list. - */ - void slotPreviewJobFinished(KJob* job); - - /** Synchronizes the item icon with the clipboard of cut items. */ - void updateCutItems(); - - /** - * Dispatches the preview queue block by block within - * time slices. - */ - void dispatchPreviewQueue(); - - /** - * Pauses all preview jobs and invokes KFilePreviewGenerator::resumePreviews() - * after a short delay. Is invoked as soon as the user has moved - * a scrollbar. - */ - void pausePreviews(); - - /** - * Resumes the previews that have been paused after moving the - * scrollbar. The previews for the current visible area are - * generated first. - */ - void resumePreviews(); - private: - /** - * Returns true, if the item \a item has been cut into - * the clipboard. - */ - bool isCutItem(const KFileItem& item) const; - - /** Applies an item effect to all cut items. */ - void applyCutItemEffect(); - - /** - * Applies a frame around the icon. False is returned if - * no frame has been added because the icon is too small. - */ - bool applyImageFrame(QPixmap& icon); - - /** - * Resizes the icon to \a maxSize if the icon size does not - * fit into the maximum size. The aspect ratio of the icon - * is kept. - */ - void limitToSize(QPixmap& icon, const QSize& maxSize); - - /** - * Starts a new preview job for the items \a to m_previewJobs - * and triggers the preview timer. - */ - void startPreviewJob(const KFileItemList& items); - - /** Kills all ongoing preview jobs. */ - void killPreviewJobs(); - - /** - * Orders the items \a items in a way that the visible items - * are moved to the front of the list. When passing this - * list to a preview job, the visible items will get generated - * first. - */ - void orderItems(KFileItemList& items); - -private: - /** Remembers the pixmap for an item specified by an URL. */ - struct ItemInfo - { - KUrl url; - QPixmap pixmap; - }; - - bool m_showPreview; - - /** - * True, if m_pendingItems and m_dispatchedItems should be - * cleared when the preview jobs have been finished. - */ - bool m_clearItemQueues; - - /** - * True if a selection has been done which should cut items. - */ - bool m_hasCutSelection; - - int m_pendingVisiblePreviews; - - QAbstractItemView* m_view; - QTimer* m_previewTimer; - QTimer* m_scrollAreaTimer; - QList<KJob*> m_previewJobs; - KDirModel* m_dirModel; - KDirSortFilterProxyModel* m_proxyModel; - - KMimeTypeResolver* m_mimeTypeResolver; - - QList<ItemInfo> m_cutItemsCache; - QList<ItemInfo> m_previews; - - /** - * Contains all items where a preview must be generated, but - * where the preview job has not dispatched the items yet. - */ - KFileItemList m_pendingItems; - - /** - * Contains all items, where a preview has already been - * generated by the preview jobs. - */ - KFileItemList m_dispatchedItems; + class Private; + Private* const d; /// @internal + Q_DISABLE_COPY(KFilePreviewGenerator) + + Q_PRIVATE_SLOT(d, void generatePreviews(const KFileItemList&)) + Q_PRIVATE_SLOT(d, void addToPreviewQueue(const KFileItem&, const QPixmap&)) + Q_PRIVATE_SLOT(d, void slotPreviewJobFinished(KJob*)) + Q_PRIVATE_SLOT(d, void updateCutItems()) + Q_PRIVATE_SLOT(d, void dispatchPreviewQueue()) + Q_PRIVATE_SLOT(d, void pausePreviews()) + Q_PRIVATE_SLOT(d, void resumePreviews()) }; -inline bool KFilePreviewGenerator::showPreview() const -{ - return m_showPreview; -} - #endif |
