From 292089a85d231b50623ea8d2c2eced6de587603c Mon Sep 17 00:00:00 2001
From: Kubat <mael.martin31@gmail.com>
Date: Mon, 28 Jun 2021 17:33:24 +0200
Subject: [PATCH] VIEW: Add a tooltip for the document views

---
 src/MainWindow.cc       | 3 ++-
 src/VivyDocumentView.cc | 9 +++++++++
 src/VivyDocumentView.hh | 1 +
 3 files changed, 12 insertions(+), 1 deletion(-)

diff --git a/src/MainWindow.cc b/src/MainWindow.cc
index 116ca84c..421a0124 100644
--- a/src/MainWindow.cc
+++ b/src/MainWindow.cc
@@ -272,7 +272,8 @@ MainWindow::loadSubDocumentAudio() noexcept
 void
 MainWindow::addTab(VivyDocumentView *tab)
 {
-    documents->addTab(tab, QIcon(":/icons/vivy.png"), tab->getDocumentTabName());
+    const int index = documents->addTab(tab, QIcon(":/icons/vivy.png"), tab->getDocumentTabName());
+    documents->setTabToolTip(index, tab->getDocumentTabToolTip());
     qDebug() << "View constructed successfully";
 }
 
diff --git a/src/VivyDocumentView.cc b/src/VivyDocumentView.cc
index 0414a67f..9d731c51 100644
--- a/src/VivyDocumentView.cc
+++ b/src/VivyDocumentView.cc
@@ -37,6 +37,15 @@ VivyDocumentView::getDocumentTabName() const noexcept
            document->getName();
 }
 
+QString
+VivyDocumentView::getDocumentTabToolTip() const noexcept
+{
+    return "UUID: " + document->getUuid().toString() + "\nCapabilities: [" +
+           document->getDocumentCapabilitiesString() + "]" +
+           (document->checkDocumentOption(VivyDocument::UntouchedByDefault) ? "\nUntouched document"
+                                                                            : "");
+}
+
 void
 VivyDocumentView::loadAudioView() noexcept
 {
diff --git a/src/VivyDocumentView.hh b/src/VivyDocumentView.hh
index 1d6c9edb..5bdd43f1 100644
--- a/src/VivyDocumentView.hh
+++ b/src/VivyDocumentView.hh
@@ -21,6 +21,7 @@ public:
 
     std::weak_ptr<VivyDocument> getDocument() const noexcept;
     QString getDocumentTabName() const noexcept;
+    QString getDocumentTabToolTip() const noexcept;
 
 private:
     std::shared_ptr<VivyDocument> document;
-- 
GitLab