diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/ktooltip.cpp | 9 | ||||
| -rw-r--r-- | src/ktooltip_p.h | 4 |
2 files changed, 13 insertions, 0 deletions
diff --git a/src/ktooltip.cpp b/src/ktooltip.cpp index 3c1da3fba..39e06b4c7 100644 --- a/src/ktooltip.cpp +++ b/src/ktooltip.cpp @@ -95,6 +95,7 @@ QVariant KToolTipItem::data(int role) const void KToolTipItem::setData(int role, const QVariant &data) { d->map[role] = data; + KToolTipManager::instance()->update(); } @@ -471,6 +472,7 @@ void KToolTipManager::showTip(const QPoint &pos, KToolTipItem *item) hideTip(); label->showTip(pos, item); currentItem = item; + m_tooltipPos = pos; } void KToolTipManager::hideTip() @@ -509,6 +511,13 @@ void KToolTipManager::setDelegate(KToolTipDelegate *delegate) m_delegate = delegate; } +void KToolTipManager::update() +{ + if (currentItem == 0) + return; + label->showTip(m_tooltipPos, currentItem); +} + KToolTipDelegate *KToolTipManager::delegate() const { return m_delegate; diff --git a/src/ktooltip_p.h b/src/ktooltip_p.h index 16ca85293..332df4854 100644 --- a/src/ktooltip_p.h +++ b/src/ktooltip_p.h @@ -44,6 +44,8 @@ public: void setDelegate(KToolTipDelegate *delegate); KToolTipDelegate *delegate() const; + + void update(); private: KToolTipManager(); @@ -51,6 +53,8 @@ private: KAbstractToolTipLabel *label; KToolTipItem *currentItem; KToolTipDelegate *m_delegate; + + QPoint m_tooltipPos; #ifdef Q_WS_X11 bool haveArgbVisual; |
