From 236d45d224d97e5b514d6950d945013f01c4d482 Mon Sep 17 00:00:00 2001
From: Kubat <mael.martin31@gmail.com>
Date: Sun, 20 Jun 2021 22:16:36 +0200
Subject: [PATCH] MISC: Move most of the #include <Q...> to the source files

---
 inc/Vivy/AudioVisualizer.h |  6 ------
 inc/Vivy/MainWindow.h      | 11 +++--------
 inc/Vivy/Timer.h           | 23 ++++++++---------------
 inc/Vivy/TimingBar.h       |  9 ---------
 src/AudioVisualizer.cc     |  7 +++++++
 src/Main.cc                |  2 +-
 src/MainWindow.cc          |  7 +++++++
 src/Timer.cc               | 11 +++++++++++
 src/TimingBar.cc           | 10 ++++++++++
 9 files changed, 47 insertions(+), 39 deletions(-)

diff --git a/inc/Vivy/AudioVisualizer.h b/inc/Vivy/AudioVisualizer.h
index b2f93e73..9b14e7b3 100644
--- a/inc/Vivy/AudioVisualizer.h
+++ b/inc/Vivy/AudioVisualizer.h
@@ -2,12 +2,6 @@
 #define VIVY_AUDIOVISUALIZER_H
 
 #include <QWidget>
-#include <QLabel>
-#include <QScrollArea>
-#include <QVBoxLayout>
-#include <QScrollBar>
-#include <QMessageBox>
-#include <QGraphicsPixmapItem>
 
 #include <Vivy/Timer.h>
 
diff --git a/inc/Vivy/MainWindow.h b/inc/Vivy/MainWindow.h
index eed9f5b4..91509b34 100644
--- a/inc/Vivy/MainWindow.h
+++ b/inc/Vivy/MainWindow.h
@@ -2,16 +2,11 @@
 #define VIVY_MAINWINDOW_H
 
 #include <QMainWindow>
-#include <QMenuBar>
-#include <QStatusBar>
-#include <QFileDialog>
-#include <QMessageBox>
-#include <QVBoxLayout>
-#include <QPixmap>
-#include <QImage>
-
 #include <Vivy/AudioVisualizer.h>
 
+class QMenu;
+class QAction;
+
 class MainWindow : public QMainWindow {
     Q_OBJECT
 
diff --git a/inc/Vivy/Timer.h b/inc/Vivy/Timer.h
index a97606c6..7bc6d473 100644
--- a/inc/Vivy/Timer.h
+++ b/inc/Vivy/Timer.h
@@ -2,37 +2,30 @@
 #define VIVY_TIMER_H
 
 #include <QWidget>
-#include <QLabel>
-#include <QScrollArea>
-#include <QVBoxLayout>
-#include <QScrollBar>
-#include <QMessageBox>
-#include <QMouseEvent>
-#include <QPainter>
 #include <QColor>
-#include <QGraphicsView>
 #include <QVector>
-#include <QGraphicsLineItem>
-#include <QGraphicsPixmapItem>
+#include <QGraphicsView>
 
 #include <Vivy/TimingBar.h>
 
-class Timer : public QGraphicsView {
+class QGraphicsPixmapItem;
+
+class Timer final : public QGraphicsView {
     Q_OBJECT
 
 public:
+    static inline constexpr QColor startColour = QColor(127, 0, 127);
+    static inline constexpr QColor endColour   = QColor(0, 127, 0);
+
     Timer(QImage img, QWidget *parent = nullptr);
     ~Timer() = default;
 
-    QPainter painter;
+private:
     QGraphicsPixmapItem *bg = nullptr;
     QGraphicsScene *scene   = new QGraphicsScene;
-    QColor startColour      = QColor(127, 0, 127);
-    QColor endColour        = QColor(0, 127, 0);
     QImage img;
     QVector<QLine> lines;
 
-protected:
     void mousePressEvent(QMouseEvent *event);
 
 public slots:
diff --git a/inc/Vivy/TimingBar.h b/inc/Vivy/TimingBar.h
index 0b342071..d43fddad 100644
--- a/inc/Vivy/TimingBar.h
+++ b/inc/Vivy/TimingBar.h
@@ -2,17 +2,8 @@
 #define VIVY_TIMING_BAR_H
 
 #include <QWidget>
-#include <QLabel>
-#include <QScrollArea>
-#include <QVBoxLayout>
-#include <QScrollBar>
-#include <QMessageBox>
-#include <QMouseEvent>
 #include <QGraphicsItem>
 #include <QGraphicsLineItem>
-#include <QPen>
-#include <QGraphicsSceneMouseEvent>
-#include <QApplication>
 
 class TimingBar : public QGraphicsLineItem {
 public:
diff --git a/src/AudioVisualizer.cc b/src/AudioVisualizer.cc
index 680b1e08..8de3f03c 100644
--- a/src/AudioVisualizer.cc
+++ b/src/AudioVisualizer.cc
@@ -1,5 +1,12 @@
 #include <Vivy/AudioVisualizer.h>
 
+#include <QLabel>
+#include <QScrollArea>
+#include <QVBoxLayout>
+#include <QScrollBar>
+#include <QMessageBox>
+#include <QGraphicsPixmapItem>
+
 AudioVisualizer::AudioVisualizer(QWidget *parent)
     : QWidget(parent)
 {
diff --git a/src/Main.cc b/src/Main.cc
index f9ea4198..22dc17c1 100644
--- a/src/Main.cc
+++ b/src/Main.cc
@@ -2,7 +2,7 @@
 #include <QApplication>
 
 int
-main(int argc, char *argv[])
+main(int argc, char **argv)
 {
     QApplication app(argc, argv);
     MainWindow window;
diff --git a/src/MainWindow.cc b/src/MainWindow.cc
index 60b55826..af9926e1 100644
--- a/src/MainWindow.cc
+++ b/src/MainWindow.cc
@@ -4,6 +4,13 @@
 #include <cstring>
 #include <cstdio>
 #include <QStandardPaths>
+#include <QPixmap>
+#include <QVBoxLayout>
+#include <QMessageBox>
+#include <QFileDialog>
+#include <QStatusBar>
+#include <QMenuBar>
+#include <QImage>
 
 extern "C" {
 #include <libavutil/opt.h>
diff --git a/src/Timer.cc b/src/Timer.cc
index ff104249..b964c953 100644
--- a/src/Timer.cc
+++ b/src/Timer.cc
@@ -1,5 +1,16 @@
 #include <Vivy/Timer.h>
 
+#include <QLabel>
+#include <QGraphicsLineItem>
+#include <QGraphicsView>
+#include <QGraphicsPixmapItem>
+#include <QScrollArea>
+#include <QVBoxLayout>
+#include <QScrollBar>
+#include <QMessageBox>
+#include <QMouseEvent>
+#include <QPainter>
+
 #define TO_ADD_TO_IMAGE_HEIGHT 2 /* Used for alignement */
 
 Timer::Timer(QImage img, QWidget *parent)
diff --git a/src/TimingBar.cc b/src/TimingBar.cc
index ecb77e50..a6502706 100644
--- a/src/TimingBar.cc
+++ b/src/TimingBar.cc
@@ -1,5 +1,15 @@
 #include <Vivy/TimingBar.h>
 
+#include <QLabel>
+#include <QScrollArea>
+#include <QPen>
+#include <QMessageBox>
+#include <QMouseEvent>
+#include <QGraphicsSceneMouseEvent>
+#include <QApplication>
+#include <QVBoxLayout>
+#include <QScrollBar>
+
 #define BAR_WIDTH      4
 #define BAR_DEMI_WIDTH ((int)(BAR_WIDTH / 2))
 
-- 
GitLab