implement set window state
[mussa.git] / qui / MussaWindow.cpp
index df892af4d4461fc568607af45b91ef262a77d151..162598487cd68778d9a57a0fa5d9e8efb26f26a8 100644 (file)
@@ -100,6 +100,8 @@ MussaWindow::MussaWindow(MussaRef analysis_, QWidget *parent) :
   if (analysis) {
     connect(analysis.get(), SIGNAL(progress(const std::string&, int, int)),
             this, SLOT(updateProgress(const std::string&, int, int)));
+    connect(analysis.get(), SIGNAL(isModified(bool)),
+            this, SLOT(updateAnalysisModified(bool)));        
   }
   updateTitle();
   updateAnalysis();
@@ -793,9 +795,16 @@ MussaWindow::updateProgress(const string& description, int current, int max)
   qApp->processEvents();
 }
 
+void MussaWindow::updateAnalysisModified(bool is_modified)
+{
+  setWindowModified(is_modified);
+}
+
 void MussaWindow::updateTitle()
 {
   if (analysis) {
-    setWindowTitle(analysis->get_title().c_str());
+    QString title(analysis->get_title().c_str());
+    title += "[*]";
+    setWindowTitle(title);
   }
 }