1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
|
#include "immediatetooltip.h"
#include "common/unused.h"
#include <QEnterEvent>
#include <QToolTip>
#include <QWidget>
#include <QDebug>
ImmediateTooltip::ImmediateTooltip(QWidget* parent)
: QObject(parent)
{
parent->setMouseTracking(true);
parent->installEventFilter(this);
}
bool ImmediateTooltip::eventFilter(QObject* obj, QEvent* event)
{
UNUSED(obj);
switch (event->type())
{
case QEvent::Enter:
{
QEnterEvent* e = dynamic_cast<QEnterEvent*>(event);
QToolTip::showText(e->globalPos(), toolTip);
break;
}
case QEvent::Leave:
QToolTip::hideText();
break;
default:
break;
}
return false;
}
const QString& ImmediateTooltip::getToolTip() const
{
return toolTip;
}
void ImmediateTooltip::setToolTip(const QString& newToolTip)
{
toolTip = newToolTip;
}
|