diff --git a/src/UI/DocumentViews/AudioVisualizer.hh b/src/UI/DocumentViews/AudioVisualizer.hh index 65cbce7590932da689a0778fcea853d9690c4a2f..25022705f3369542e70501698bd64beb479ac6af 100644 --- a/src/UI/DocumentViews/AudioVisualizer.hh +++ b/src/UI/DocumentViews/AudioVisualizer.hh @@ -5,8 +5,8 @@ #error "This is a C++ header" #endif -#include "TimingView.hh" -#include "TimingParams.hh" +#include "AudioVisualizer/TimingView.hh" +#include "AudioVisualizer/TimingParams.hh" #include "../../Lib/Audio.hh" namespace Vivy diff --git a/src/UI/DocumentViews/TimingAxis.cc b/src/UI/DocumentViews/AudioVisualizer/TimingAxis.cc similarity index 100% rename from src/UI/DocumentViews/TimingAxis.cc rename to src/UI/DocumentViews/AudioVisualizer/TimingAxis.cc diff --git a/src/UI/DocumentViews/TimingAxis.hh b/src/UI/DocumentViews/AudioVisualizer/TimingAxis.hh similarity index 97% rename from src/UI/DocumentViews/TimingAxis.hh rename to src/UI/DocumentViews/AudioVisualizer/TimingAxis.hh index c8694985e22cc82f464f910c5463c9fd050c58a9..4180a9e364fa1b80a5b5f5b118e643164bdfb4a4 100644 --- a/src/UI/DocumentViews/TimingAxis.hh +++ b/src/UI/DocumentViews/AudioVisualizer/TimingAxis.hh @@ -9,7 +9,7 @@ #include <QPainter> #include <QGraphicsScene> #include <cmath> -#include "../../Lib/Audio.hh" +#include "../../../Lib/Audio.hh" namespace Vivy { diff --git a/src/UI/DocumentViews/TimingBar.cc b/src/UI/DocumentViews/AudioVisualizer/TimingBar.cc similarity index 100% rename from src/UI/DocumentViews/TimingBar.cc rename to src/UI/DocumentViews/AudioVisualizer/TimingBar.cc diff --git a/src/UI/DocumentViews/TimingBar.hh b/src/UI/DocumentViews/AudioVisualizer/TimingBar.hh similarity index 100% rename from src/UI/DocumentViews/TimingBar.hh rename to src/UI/DocumentViews/AudioVisualizer/TimingBar.hh diff --git a/src/UI/DocumentViews/TimingParams.cc b/src/UI/DocumentViews/AudioVisualizer/TimingParams.cc similarity index 100% rename from src/UI/DocumentViews/TimingParams.cc rename to src/UI/DocumentViews/AudioVisualizer/TimingParams.cc diff --git a/src/UI/DocumentViews/TimingParams.hh b/src/UI/DocumentViews/AudioVisualizer/TimingParams.hh similarity index 94% rename from src/UI/DocumentViews/TimingParams.hh rename to src/UI/DocumentViews/AudioVisualizer/TimingParams.hh index 6cf92c6df16f35bf979b4715acccb7a8fd0646da..5b9e8c388b05a2c9d6357de0a666ea5db340f535 100644 --- a/src/UI/DocumentViews/TimingParams.hh +++ b/src/UI/DocumentViews/AudioVisualizer/TimingParams.hh @@ -5,7 +5,7 @@ #error "This is a C++ header" #endif -#include "../../Lib/Utils.hh" +#include "../../../Lib/Utils.hh" #include <QWidget> #include <QSlider> diff --git a/src/UI/DocumentViews/TimingScene.cc b/src/UI/DocumentViews/AudioVisualizer/TimingScene.cc similarity index 87% rename from src/UI/DocumentViews/TimingScene.cc rename to src/UI/DocumentViews/AudioVisualizer/TimingScene.cc index af78ff7a2bb7699a0ae2936a48e47ab3b313d0e8..b6e76efc68e086ae0326c675eba6e6d3df190084 100644 --- a/src/UI/DocumentViews/TimingScene.cc +++ b/src/UI/DocumentViews/AudioVisualizer/TimingScene.cc @@ -1,8 +1,8 @@ #include "TimingScene.hh" -#include "../../Lib/Utils.hh" -#include "../../Lib/Ass/Ass.hh" -#include "../../Lib/Document/VivyDocument.hh" +#include "../../../Lib/Utils.hh" +#include "../../../Lib/Ass/Ass.hh" +#include "../../../Lib/Document/VivyDocument.hh" #include <QGraphicsLineItem> #include <QGraphicsPixmapItem> @@ -29,6 +29,7 @@ TimingScene::TimingScene(QImage img_, AudioContext::StreamPtr stream, QWidget *p , audioStream(stream) { QPixmap pixmap(QPixmap::fromImage(img)); + setSceneRect(QRect(pixmap.rect())); backgroundImg = addPixmap(pixmap); ax = new TimingAxis(stream, 0, pixmap.width(), 10); addItem(ax); @@ -70,12 +71,17 @@ TimingScene::mousePressEvent(QGraphicsSceneMouseEvent *event) noexcept if (p && (got == nullptr || got == backgroundImg)) { // Handle the different cases - if (timingMode == TimingMode::Line) - handleMousePressEventLine(event, p); - else if (timingMode == TimingMode::Syl) - handleMousePressEventSyl(event, p); - else if (timingMode == TimingMode::Char) - handleMousePressEventChar(event, p); + switch(timingMode){ + case TimingMode::Line: + handleMousePressEventLine(event, p); + break; + case TimingMode::Syl: + handleMousePressEventSyl(event, p); + break; + case TimingMode::Char: + handleMousePressEventChar(event, p); + break; + } } QGraphicsScene::mousePressEvent(event); diff --git a/src/UI/DocumentViews/TimingScene.hh b/src/UI/DocumentViews/AudioVisualizer/TimingScene.hh similarity index 93% rename from src/UI/DocumentViews/TimingScene.hh rename to src/UI/DocumentViews/AudioVisualizer/TimingScene.hh index 95d000b2fb8282340a47e50dc07e717f690398b1..c6cf5a2a6a372cdcde1d30a9ed33e5820e689d61 100644 --- a/src/UI/DocumentViews/TimingScene.hh +++ b/src/UI/DocumentViews/AudioVisualizer/TimingScene.hh @@ -1,8 +1,8 @@ #pragma once -#include "../../Lib/Utils.hh" -#include "../../Lib/Audio.hh" -#include "../../Lib/Ass/Ass.hh" +#include "../../../Lib/Utils.hh" +#include "../../../Lib/Audio.hh" +#include "../../../Lib/Ass/Ass.hh" #include "TimingBar.hh" #include "TimingAxis.hh" diff --git a/src/UI/DocumentViews/TimingView.cc b/src/UI/DocumentViews/AudioVisualizer/TimingView.cc similarity index 67% rename from src/UI/DocumentViews/TimingView.cc rename to src/UI/DocumentViews/AudioVisualizer/TimingView.cc index f40b27a6a3b0b820eda14c645234ff92a443fb30..531b08ea0cd9268d790be7acd7900412ff5f3e86 100644 --- a/src/UI/DocumentViews/TimingView.cc +++ b/src/UI/DocumentViews/AudioVisualizer/TimingView.cc @@ -18,6 +18,7 @@ TimingView::TimingView(QImage img, AudioContext::StreamPtr stream, QWidget *pare horizontalScrollBar()->setValue(horizontalScrollBar()->minimum()); setScene(currentScene); + centerOn(0,height()); } void @@ -27,23 +28,6 @@ TimingView::wheelEvent(QWheelEvent *event) noexcept event->angleDelta().y() * wheelAngleToScrollRatio); } -void -TimingView::mousePressEvent(QMouseEvent *event) noexcept -{ - QPoint pos = event->pos(); - pos.rx() += horizontalScrollBar()->value(); - int x = event->pos().x() + horizontalScrollBar()->value(); - - QGraphicsItem *got; - if ((got = currentScene->itemAt(pos, QTransform())) == nullptr || got == currentScene->bg()) { - const int height = static_cast<int>(currentScene->height()); - currentScene->addItem(new TimingBar( - QLine(x, 0, x, height), event->button() == Qt::LeftButton ? startColour : endColour)); - } - - QGraphicsView::mousePressEvent(event); -} - void TimingView::moveScrollBarToBottom(int, int max) noexcept { diff --git a/src/UI/DocumentViews/TimingView.hh b/src/UI/DocumentViews/AudioVisualizer/TimingView.hh similarity index 87% rename from src/UI/DocumentViews/TimingView.hh rename to src/UI/DocumentViews/AudioVisualizer/TimingView.hh index 1d22b7b93152e1b362e232ab75865dae9e3712f6..d0fb66dc03b294959e759bed15bca47f62287cd4 100644 --- a/src/UI/DocumentViews/TimingView.hh +++ b/src/UI/DocumentViews/AudioVisualizer/TimingView.hh @@ -4,8 +4,8 @@ #error "This is a C++ header" #endif -#include "../../Lib/Utils.hh" -#include "../../Lib/Audio.hh" +#include "../../../Lib/Utils.hh" +#include "../../../Lib/Audio.hh" #include "TimingBar.hh" #include "TimingScene.hh" #include "TimingAxis.hh" @@ -32,7 +32,6 @@ private: AudioContext::StreamPtr audioStream; public slots: - void mousePressEvent(QMouseEvent *event) noexcept override; void moveScrollBarToBottom(int, int) noexcept; }; }