diff options
Diffstat (limited to 'examples')
| -rw-r--r-- | examples/triage/entropy.cpp | 14 | ||||
| -rw-r--r-- | examples/triage/entropy.h | 1 |
2 files changed, 15 insertions, 0 deletions
diff --git a/examples/triage/entropy.cpp b/examples/triage/entropy.cpp index 3e3b0963..da089fd6 100644 --- a/examples/triage/entropy.cpp +++ b/examples/triage/entropy.cpp @@ -75,6 +75,7 @@ EntropyWidget::EntropyWidget(QWidget* parent, TriageView* view, BinaryViewRef da timer->start(); setCursor(Qt::PointingHandCursor); + setMouseTracking(true); setMinimumHeight(UIContext::getScaledWindowSize(32, 32).height()); } @@ -117,3 +118,16 @@ void EntropyWidget::mousePressEvent(QMouseEvent* event) uint64_t offset = (uint64_t)(frac * m_width * m_blockSize); m_view->navigateToFileOffset(offset); } + + +void EntropyWidget::mouseMoveEvent(QMouseEvent* event) +{ + float frac = (float)event->pos().x() / (float)rect().width(); + uint64_t offset = (uint64_t)(frac * m_width * m_blockSize); + uint64_t addr = 0; + bool hasAddr = m_data->GetAddressForDataOffset(offset, addr); + if (hasAddr) + setToolTip(QString("0x%1").arg(addr, 0, 16)); + else + setToolTip(QString("File offset: 0x%1").arg(offset, 0, 16)); +} diff --git a/examples/triage/entropy.h b/examples/triage/entropy.h index a48097c4..821dfb7b 100644 --- a/examples/triage/entropy.h +++ b/examples/triage/entropy.h @@ -44,6 +44,7 @@ class EntropyWidget : public QWidget protected: virtual void paintEvent(QPaintEvent* event) override; virtual void mousePressEvent(QMouseEvent* event) override; + virtual void mouseMoveEvent(QMouseEvent* event) override; private Q_SLOTS: void timerExpired(); |
