void setIconSize(const QSize &size);
QSize iconSize() const;
+ void setDevicePixelRatio(qreal devicePixelRatio);
+ qreal devicePixelRatio() const;
+
/**
* Sets the range of items that are visible currently. The roles
* of visible items are resolved first.
*/
void setHoverSequenceState(const QUrl &itemUrl, int seqIdx);
+Q_SIGNALS:
+ void previewJobFinished(); // For unit testing
+
private Q_SLOTS:
void slotItemsInserted(const KItemRangeList &itemRanges);
void slotItemsRemoved(const KItemRangeList &itemRanges);
void applyChangedBalooRoles(const QString &file);
void applyChangedBalooRolesForItem(const KFileItem &file);
- void slotDirectoryContentsCountReceived(const QString &path, int count, long size);
+ void slotDirectoryContentsCountReceived(const QString &path, int count, long long size);
private:
/**
* Transforms a raw preview image, applying scale and frame.
*
* @param pixmap A raw preview image from a PreviewJob.
+ * @param overlays the overlays to add to the pixmap
* @return The scaled and decorated preview image.
*/
QPixmap transformPreviewPixmap(const QPixmap &pixmap);
/**
* Resolves the sort role of the item and applies it to the model.
+ * Despite the name, this handles both sorting and grouping, as
+ * regrouping never happens without resorting at the same time.
*/
void applySortRole(int index);
void trimHoverSequenceLoadedItems();
+ void resetSizeData(const int index, const int size = 0);
+
+ void recountDirectoryItems(const QList<QUrl> directories);
+
private:
+ QSize cacheSize();
+ /**
+ * enqueue directory size counting for KFileItem item at index
+ */
void startDirectorySizeCounting(const KFileItem &item, int index);
enum State { Idle, Paused, ResolvingSortRole, ResolvingAllRoles, PreviewJobRunning };
KFileItemModel *m_model;
QSize m_iconSize;
+ qreal m_devicePixelRatio;
int m_firstVisibleIndex;
int m_lastVisibleIndex;
int m_maximumVisibleItems;
QSet<QByteArray> m_resolvableRoles;
QStringList m_enabledPlugins;
qulonglong m_localFileSizePreviewLimit;
- bool m_scanDirectories;
// Items for which the sort role still has to be determined.
QSet<KFileItem> m_pendingSortRoleItems;