]> cloud.milkyroute.net Git - dolphin.git/blob - src/kitemviews/private/kitemlistsizehintresolver.h
KItemListSizeHintResolver: remove no longer used member
[dolphin.git] / src / kitemviews / private / kitemlistsizehintresolver.h
1 /*
2 * SPDX-FileCopyrightText: 2011 Peter Penz <peter.penz19@gmail.com>
3 *
4 * SPDX-License-Identifier: GPL-2.0-or-later
5 */
6
7 #ifndef KITEMLISTSIZEHINTRESOLVER_H
8 #define KITEMLISTSIZEHINTRESOLVER_H
9
10 #include "dolphin_export.h"
11 #include "kitemviews/kitemmodelbase.h"
12
13 #include <QSizeF>
14 #include <QVector>
15
16 class KItemListView;
17
18 /**
19 * @brief Calculates and caches the sizehints of items in KItemListView.
20 */
21 class DOLPHIN_EXPORT KItemListSizeHintResolver
22 {
23 public:
24 explicit KItemListSizeHintResolver(const KItemListView* itemListView);
25 virtual ~KItemListSizeHintResolver();
26 QSizeF minSizeHint();
27 QSizeF sizeHint(int index);
28
29 void itemsInserted(const KItemRangeList& itemRanges);
30 void itemsRemoved(const KItemRangeList& itemRanges);
31 void itemsMoved(const KItemRange& range, const QList<int>& movedToIndexes);
32 void itemsChanged(int index, int count, const QSet<QByteArray>& roles);
33
34 void clearCache();
35 void updateCache();
36
37 private:
38 const KItemListView* m_itemListView;
39 mutable QVector<qreal> m_logicalHeightHintCache;
40 mutable qreal m_logicalWidthHint;
41 mutable qreal m_minHeightHint;
42 bool m_needsResolving;
43 };
44
45 #endif