summaryrefslogtreecommitdiffstats
path: root/src/waveform/renderers
diff options
context:
space:
mode:
authorHarshit Maurya <hmaurya999@gmail.com>2020-05-14 03:43:58 +0530
committerHarshit Maurya <hmaurya999@gmail.com>2020-05-16 02:17:43 +0530
commit99aa12e06eaa07db65026519d5875ee24f33da20 (patch)
treed0630d433ada747c6c21311f1ef050c2a8a490f3 /src/waveform/renderers
parentad104313bd206d1f133d1270c4ee8a91eb162fe1 (diff)
wwaveformviewer: highlight hovered mark
Diffstat (limited to 'src/waveform/renderers')
-rw-r--r--src/waveform/renderers/waveformmark.cpp1
-rw-r--r--src/waveform/renderers/waveformwidgetrenderer.cpp17
-rw-r--r--src/waveform/renderers/waveformwidgetrenderer.h2
3 files changed, 5 insertions, 15 deletions
diff --git a/src/waveform/renderers/waveformmark.cpp b/src/waveform/renderers/waveformmark.cpp
index 5d8e7d1164..cb7fae606b 100644
--- a/src/waveform/renderers/waveformmark.cpp
+++ b/src/waveform/renderers/waveformmark.cpp
@@ -99,6 +99,7 @@ WaveformMark::WaveformMark(const QString& group,
}
void WaveformMark::setBaseColor(QColor baseColor) {
+ m_image = QImage();
m_fillColor = baseColor;
m_borderColor = Color::chooseContrastColor(baseColor);
m_labelColor = Color::chooseColorByBrightness(baseColor, QColor(255,255,255,255), QColor(0,0,0,255));
diff --git a/src/waveform/renderers/waveformwidgetrenderer.cpp b/src/waveform/renderers/waveformwidgetrenderer.cpp
index 79499d0712..58f4764651 100644
--- a/src/waveform/renderers/waveformwidgetrenderer.cpp
+++ b/src/waveform/renderers/waveformwidgetrenderer.cpp
@@ -289,7 +289,7 @@ void WaveformWidgetRenderer::setTrack(TrackPointer track) {
}
}
-CuePointer WaveformWidgetRenderer::getCueAtPoint(QPoint point) {
+WaveformMarkPointer WaveformWidgetRenderer::getCueMarkAtPoint(QPoint point) {
WaveformMarkPointer pSelectedMark;
const int lineHoverpadding = 5;
for (const auto& pMark : m_markLabelOffsets.keys()) {
@@ -328,19 +328,8 @@ CuePointer WaveformWidgetRenderer::getCueAtPoint(QPoint point) {
if (labelRectangleInWaveformWidgetSpace.contains(point) ||
markLineVicinity.contains(point)) {
- pSelectedMark = pMark;
- break;
+ return pMark;
}
}
- if (!pSelectedMark) {
- return static_cast<CuePointer>(nullptr);
- }
-
- QList<CuePointer> cueList = getTrackInfo()->getCuePoints();
- for (const auto& pCue : cueList) {
- if (pCue->getHotCue() == pSelectedMark->getHotCue()) {
- return pCue;
- }
- }
- return static_cast<CuePointer>(nullptr);
+ return static_cast<WaveformMarkPointer>(nullptr);
}
diff --git a/src/waveform/renderers/waveformwidgetrenderer.h b/src/waveform/renderers/waveformwidgetrenderer.h
index 0ab5731511..3f58560e4a 100644
--- a/src/waveform/renderers/waveformwidgetrenderer.h
+++ b/src/waveform/renderers/waveformwidgetrenderer.h
@@ -41,7 +41,7 @@ class WaveformWidgetRenderer {
inline const char* getGroup() const { return m_group;}
const TrackPointer getTrackInfo() const { return m_pTrack;}
// Get cue at a point on the waveform widget.
- CuePointer getCueAtPoint(QPoint point);
+ WaveformMarkPointer getCueMarkAtPoint(QPoint point);
double getFirstDisplayedPosition() const { return m_firstDisplayedPosition;}
double getLastDisplayedPosition() const { return m_lastDisplayedPosition;}