changeset 244:69e6ceb459cd

Add an activity log
author Chris Cannam
date Tue, 01 Apr 2014 13:42:34 +0100
parents 3ff0f36c8fc1
children 4c4674af2aec
files .hgsubstate src/MainWindow.cpp src/MainWindow.h
diffstat 3 files changed, 31 insertions(+), 6 deletions(-) [+]
line wrap: on
line diff
--- a/.hgsubstate	Tue Apr 01 13:42:13 2014 +0100
+++ b/.hgsubstate	Tue Apr 01 13:42:34 2014 +0100
@@ -2,6 +2,6 @@
 236814e07bd07473958c1ff89103124536a0c3c8 dataquay
 8180299e50873655869e3ee51390099632033a43 pyin
 27d4e7152c954bf3c4387319db088fb3cd02436b sv-dependency-builds
-3144af512ea3447e6cf1775f02b5b54b5a5ddeb5 svapp
-0c8218b2d84a172049d966c82c2064f5aa59c503 svcore
-394caa98d21a66bdb9942dd60e8be684a73d338c svgui
+dd07d48d7d4f7d033299a9142e04718b86c0ef1d svapp
+8db820ad2b8f4f15b80e103d681f5a66c90983de svcore
+34c1203d21b56c40524d6b800e9f35cd12cc9700 svgui
--- a/src/MainWindow.cpp	Tue Apr 01 13:42:13 2014 +0100
+++ b/src/MainWindow.cpp	Tue Apr 01 13:42:34 2014 +0100
@@ -56,6 +56,7 @@
 #include "rdf/RDFExporter.h"
 
 #include "widgets/RangeInputDialog.h"
+#include "widgets/ActivityLog.h"
 
 // For version information
 #include "vamp/vamp.h"
@@ -99,6 +100,7 @@
     m_ffwdAction(0),
     m_rwdAction(0),
     m_intelligentActionOn(true), //GF: !!! temporary
+    m_activityLog(new ActivityLog()),
     m_keyReference(new KeyReference())
 {
     setWindowTitle(QApplication::applicationName());
@@ -355,6 +357,17 @@
 
     statusBar();
 
+    connect(m_viewManager, SIGNAL(activity(QString)),
+            m_activityLog, SLOT(activityHappened(QString)));
+    connect(m_playSource, SIGNAL(activity(QString)),
+            m_activityLog, SLOT(activityHappened(QString)));
+    connect(CommandHistory::getInstance(), SIGNAL(activity(QString)),
+            m_activityLog, SLOT(activityHappened(QString)));
+    connect(this, SIGNAL(activity(QString)),
+            m_activityLog, SLOT(activityHappened(QString)));
+    connect(this, SIGNAL(replacedDocument()), this, SLOT(documentReplaced()));
+    m_activityLog->hide();
+
     newSession();
 
     settings.beginGroup("MainWindow");
@@ -1309,6 +1322,15 @@
 }
 
 void
+MainWindow::documentReplaced()
+{
+    if (m_document) {
+        connect(m_document, SIGNAL(activity(QString)),
+                m_activityLog, SLOT(activityHappened(QString)));
+    }
+}
+
+void
 MainWindow::closeSession()
 {
     if (!checkSaveModified()) return;
--- a/src/MainWindow.h	Tue Apr 01 13:42:13 2014 +0100
+++ b/src/MainWindow.h	Tue Apr 01 13:42:34 2014 +0100
@@ -20,6 +20,7 @@
 #include "Analyser.h"
 
 class VersionTester;
+class ActivityLog;
 
 class MainWindow : public MainWindowBase
 {
@@ -31,9 +32,9 @@
     virtual ~MainWindow();
 
 signals:
-    virtual void canExportPitchTrack(bool);
-    virtual void canExportNotes(bool);
-    virtual void canSnapNotes(bool);
+    void canExportPitchTrack(bool);
+    void canExportNotes(bool);
+    void canSnapNotes(bool);
 
 public slots:
     virtual bool commitData(bool mayAskUser); // on session shutdown
@@ -131,6 +132,7 @@
 
     virtual void documentModified();
     virtual void documentRestored();
+    virtual void documentReplaced();
 
     virtual void updateMenuStates();
     virtual void updateDescriptionLabel();
@@ -210,6 +212,7 @@
     QLabel        *m_pitchStatus;
     QLabel        *m_notesStatus;
     
+    ActivityLog   *m_activityLog;
     KeyReference  *m_keyReference;
     VersionTester *m_versionTester;