#include <KFileItem>
-class DolphinModel;
-class DolphinSortFilterProxyModel;
class FileMetaDataToolTip;
-class QAbstractItemView;
-class QModelIndex;
class QTimer;
/**
Q_OBJECT
public:
- explicit ToolTipManager(QAbstractItemView* parent,
- DolphinSortFilterProxyModel* model);
+ explicit ToolTipManager(QWidget* parent);
virtual ~ToolTipManager();
-public slots:
/**
- * Hides the currently shown tooltip. Invoking this method is
- * only needed when the tooltip should be hidden although
- * an item is hovered.
+ * Triggers the showing of the tooltip for the item \p item
+ * where the item has the maximum boundaries of \p itemRect.
+ * The tooltip manager takes care that the tooltip is shown
+ * slightly delayed.
*/
- void hideToolTip();
+ void showToolTip(const KFileItem& item, const QRectF& itemRect);
-protected:
- virtual bool eventFilter(QObject* watched, QEvent* event);
+ /**
+ * Hides the currently shown tooltip.
+ */
+ void hideToolTip();
private slots:
- void requestToolTip(const QModelIndex& index);
void startContentRetrieval();
void setPreviewPix(const KFileItem& item, const QPixmap& pix);
void previewFailed();
void showToolTip();
private:
- QAbstractItemView* m_view;
- DolphinModel* m_dolphinModel;
- DolphinSortFilterProxyModel* m_proxyModel;
-
/// Timeout from requesting a tooltip until the tooltip
/// should be shown
QTimer* m_showToolTipTimer;
bool m_toolTipRequested;
bool m_metaDataRequested;
bool m_appliedWaitCursor;
+ int m_margin;
KFileItem m_item;
QRect m_itemRect;
};