From 2fd04bd20b32bf9ccc7d67c7c2123f42879b8338 Mon Sep 17 00:00:00 2001
From: Kubat <mael.martin31@gmail.com>
Date: Mon, 12 Jul 2021 22:35:51 +0200
Subject: [PATCH] MISC: Prefer the use of QVector instead of QList when
 possible

---
 CMakeLists.txt                 | 29 +++++++++++++++--------------
 src/Lib/Ass/AssFactory.hh      |  6 +++---
 src/UI/AbstractDocumentView.hh |  5 +----
 src/UI/PropertyModel.cc        |  2 +-
 src/UI/PropertyModel.hh        |  4 ++--
 5 files changed, 22 insertions(+), 24 deletions(-)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index cced477b..33b762ed 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -59,20 +59,21 @@ target_link_libraries(Vivy PRIVATE lua)
 
 # Headers related things
 target_include_directories(Vivy PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/inc)
-target_precompile_headers(Vivy
-    PRIVATE
-        # Private Vivy headers
-        ${Vivy_INC}
-
-        # Qt headers
-        <QString>
-        <QList>
-        <QMap>
-        <QWidget>
-        <QIcon>
-
-        # STL headers
-        <memory>
+target_precompile_headers(Vivy PRIVATE
+    # Private Vivy headers
+    ${Vivy_INC}
+
+    # STL headers
+    <memory>
+    <vector>
+
+    # Qt headers
+    <QString>
+    <QList>
+    <QVector>
+    <QMap>
+    <QWidget>
+    <QIcon>
 )
 
 # More options and warnings
diff --git a/src/Lib/Ass/AssFactory.hh b/src/Lib/Ass/AssFactory.hh
index ccd227ee..f21fddb1 100644
--- a/src/Lib/Ass/AssFactory.hh
+++ b/src/Lib/Ass/AssFactory.hh
@@ -6,7 +6,7 @@
 #include "Line.hh"
 #include "AssPrivate.hh"
 
-#include <memory.h>
+#include <memory>
 #include <QFile>
 #include <QMap>
 #include <QVariant>
@@ -43,8 +43,8 @@ private:
     static inline const QStringList validSections = { sectionEvents, sectionScriptInfo,
                                                       sectionStyles };
 
-    static inline const QStringList intTypeFields = { "PlayResX", "PlayResY", "WrapStyle" };
-    static inline const QList<QPair<QString, QString>> checkedValues = {
+    static inline const QStringList intTypeFields{ "PlayResX", "PlayResY", "WrapStyle" };
+    static inline const QVector<QPair<QString, QString>> checkedValues{
         { "ScriptType", "v4.00+" },
         { "WrapStyle", "0" },
         // { "YCbCr Matrix", "TV.601" },
diff --git a/src/UI/AbstractDocumentView.hh b/src/UI/AbstractDocumentView.hh
index 0ce9a6e0..e73814ba 100644
--- a/src/UI/AbstractDocumentView.hh
+++ b/src/UI/AbstractDocumentView.hh
@@ -1,5 +1,4 @@
-#ifndef VIVY_DOCUMENT_VIEW_H
-#define VIVY_DOCUMENT_VIEW_H
+#pragma once
 
 #ifndef __cplusplus
 #error "This is a C++ header"
@@ -56,5 +55,3 @@ private:
     const Type documentType;
 };
 }
-
-#endif // VIVY_DOCUMENT_VIEW_H
diff --git a/src/UI/PropertyModel.cc b/src/UI/PropertyModel.cc
index b32144f0..47308fa4 100644
--- a/src/UI/PropertyModel.cc
+++ b/src/UI/PropertyModel.cc
@@ -79,7 +79,7 @@ PropertyModel::Item::getType() const noexcept
     return type;
 }
 
-const QList<PropertyModel::Item *>
+const QVector<PropertyModel::Item *>
 PropertyModel::Item::getChilds() const noexcept
 {
     return childs;
diff --git a/src/UI/PropertyModel.hh b/src/UI/PropertyModel.hh
index dea2cbca..c79f0aa8 100644
--- a/src/UI/PropertyModel.hh
+++ b/src/UI/PropertyModel.hh
@@ -37,7 +37,7 @@ private:
 
         void appendChild(Item *) noexcept;
         Item *getChild(int row) const noexcept;
-        const QList<Item *> getChilds() const noexcept;
+        const QVector<Item *> getChilds() const noexcept;
         Item *getParent() const noexcept;
         int getChildCount() const noexcept;
         int getRow() const noexcept;
@@ -55,7 +55,7 @@ private:
         QString key{};
         QString value{};
         QJsonValue::Type type{ QJsonValue::Null };
-        QList<Item *> childs{};
+        QVector<Item *> childs{};
         Item *parent{ nullptr };
     };
 
-- 
GitLab