X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/006f667ab14aff2d067373e7e88bde4800b2d9c2..9aee5d22513f0367febab54b38b3a7dc58d120bb:/src/kitemviews/kitemlistview.h diff --git a/src/kitemviews/kitemlistview.h b/src/kitemviews/kitemlistview.h index 8a522a686..f20180289 100644 --- a/src/kitemviews/kitemlistview.h +++ b/src/kitemviews/kitemlistview.h @@ -23,7 +23,7 @@ #ifndef KITEMLISTVIEW_H #define KITEMLISTVIEW_H -#include +#include "dolphin_export.h" #include #include @@ -44,7 +44,6 @@ class KItemListViewLayouter; class KItemListWidget; class KItemListWidgetInformant; class KItemListWidgetCreatorBase; -class KItemListViewCreatorBase; class QTimer; /** @@ -60,7 +59,7 @@ class QTimer; * @see KItemListWidget * @see KItemModelBase */ -class LIBDOLPHINPRIVATE_EXPORT KItemListView : public QGraphicsWidget +class DOLPHIN_EXPORT KItemListView : public QGraphicsWidget { Q_OBJECT @@ -161,8 +160,7 @@ public: const KItemListStyleOption& styleOption() const; - /** @reimp */ - virtual void setGeometry(const QRectF& rect); + virtual void setGeometry(const QRectF& rect) Q_DECL_OVERRIDE; /** * @return The page step which should be used by the vertical scroll bar. @@ -194,12 +192,14 @@ public: int lastVisibleIndex() const; /** - * @return Required size for all items in the model. - * The returned value might be larger than KItemListView::itemSize(). + * @return Calculates the required size for all items in the model. + * It might be larger than KItemListView::itemSize(). * In this case the layout grid will be stretched to assure an * unclipped item. + * NOTE: the logical height (width) is actually the + * width (height) if the scroll orientation is Qt::Vertical! */ - void calculateItemSizeHints(QVector& sizeHints) const; + void calculateItemSizeHints(QVector& logicalHeightHints, qreal& logicalWidthHint) const; /** * If set to true, items having child-items can be expanded to show the child-items as @@ -278,10 +278,7 @@ public: */ void editRole(int index, const QByteArray& role); - /** - * @reimp - */ - virtual void paint(QPainter* painter, const QStyleOptionGraphicsItem* option, QWidget* widget = 0); + virtual void paint(QPainter* painter, const QStyleOptionGraphicsItem* option, QWidget* widget = 0) Q_DECL_OVERRIDE; signals: void scrollOrientationChanged(Qt::Orientation current, Qt::Orientation previous); @@ -321,7 +318,7 @@ signals: void roleEditingFinished(int index, const QByteArray& role, const QVariant& value); protected: - virtual QVariant itemChange(GraphicsItemChange change, const QVariant &value); + virtual QVariant itemChange(GraphicsItemChange change, const QVariant &value) Q_DECL_OVERRIDE; void setItemSize(const QSizeF& size); void setStyleOption(const KItemListStyleOption& option); @@ -378,13 +375,13 @@ protected: virtual void onTransactionBegin(); virtual void onTransactionEnd(); - virtual bool event(QEvent* event); - virtual void mousePressEvent(QGraphicsSceneMouseEvent* event); - virtual void mouseMoveEvent(QGraphicsSceneMouseEvent* event); - virtual void dragEnterEvent(QGraphicsSceneDragDropEvent* event); - virtual void dragMoveEvent(QGraphicsSceneDragDropEvent* event); - virtual void dragLeaveEvent(QGraphicsSceneDragDropEvent* event); - virtual void dropEvent(QGraphicsSceneDragDropEvent* event); + virtual bool event(QEvent* event) Q_DECL_OVERRIDE; + virtual void mousePressEvent(QGraphicsSceneMouseEvent* event) Q_DECL_OVERRIDE; + virtual void mouseMoveEvent(QGraphicsSceneMouseEvent* event) Q_DECL_OVERRIDE; + virtual void dragEnterEvent(QGraphicsSceneDragDropEvent* event) Q_DECL_OVERRIDE; + virtual void dragMoveEvent(QGraphicsSceneDragDropEvent* event) Q_DECL_OVERRIDE; + virtual void dragLeaveEvent(QGraphicsSceneDragDropEvent* event) Q_DECL_OVERRIDE; + virtual void dropEvent(QGraphicsSceneDragDropEvent* event) Q_DECL_OVERRIDE; QList visibleItemListWidgets() const; @@ -772,7 +769,7 @@ private: * KItemListWidgetCreatorBase and KItemListGroupHeaderCreatorBase. * @internal */ -class LIBDOLPHINPRIVATE_EXPORT KItemListCreatorBase +class DOLPHIN_EXPORT KItemListCreatorBase { public: virtual ~KItemListCreatorBase(); @@ -796,7 +793,7 @@ private: * expensive instantiations and deletions of KItemListWidgets by recycling existing widget * instances. */ -class LIBDOLPHINPRIVATE_EXPORT KItemListWidgetCreatorBase : public KItemListCreatorBase +class DOLPHIN_EXPORT KItemListWidgetCreatorBase : public KItemListCreatorBase { public: virtual ~KItemListWidgetCreatorBase(); @@ -805,7 +802,7 @@ public: virtual void recycle(KItemListWidget* widget); - virtual void calculateItemSizeHints(QVector& sizeHints, const KItemListView* view) const = 0; + virtual void calculateItemSizeHints(QVector& logicalHeightHints, qreal& logicalWidthHint, const KItemListView* view) const = 0; virtual qreal preferredRoleColumnWidth(const QByteArray& role, int index, @@ -824,7 +821,7 @@ public: virtual KItemListWidget* create(KItemListView* view); - virtual void calculateItemSizeHints(QVector& sizeHints, const KItemListView* view) const; + virtual void calculateItemSizeHints(QVector& logicalHeightHints, qreal& logicalWidthHint, const KItemListView* view) const; virtual qreal preferredRoleColumnWidth(const QByteArray& role, int index, @@ -857,9 +854,9 @@ KItemListWidget* KItemListWidgetCreator::create(KItemListView* view) } template -void KItemListWidgetCreator::calculateItemSizeHints(QVector& sizeHints, const KItemListView* view) const +void KItemListWidgetCreator::calculateItemSizeHints(QVector& logicalHeightHints, qreal& logicalWidthHint, const KItemListView* view) const { - return m_informant->calculateItemSizeHints(sizeHints, view); + return m_informant->calculateItemSizeHints(logicalHeightHints, logicalWidthHint, view); } template @@ -878,7 +875,7 @@ qreal KItemListWidgetCreator::preferredRoleColumnWidth(const QByteArray& role * The intention of the group-header creator is to prevent repetitive and expensive instantiations and * deletions of KItemListGroupHeaders by recycling existing header instances. */ -class LIBDOLPHINPRIVATE_EXPORT KItemListGroupHeaderCreatorBase : public KItemListCreatorBase +class DOLPHIN_EXPORT KItemListGroupHeaderCreatorBase : public KItemListCreatorBase { public: virtual ~KItemListGroupHeaderCreatorBase();