changeset 761:6a8d922f991d tonioni

A lot of work on saving and reloading sessions: save flexinote layer type and hybrid spectrogram normalisation, etc
author Chris Cannam
date Wed, 02 Apr 2014 21:50:04 +0100
parents d0fd7630d32f
children b75c95e7f906
files layer/LayerFactory.cpp layer/SpectrogramLayer.cpp
diffstat 2 files changed, 16 insertions(+), 9 deletions(-) [+]
line wrap: on
line diff
--- a/layer/LayerFactory.cpp	Wed Apr 02 18:22:41 2014 +0100
+++ b/layer/LayerFactory.cpp	Wed Apr 02 21:50:04 2014 +0100
@@ -197,7 +197,7 @@
     LayerTypeSet types;
     types.insert(TimeInstants);
     types.insert(TimeValues);
-	types.insert(FlexiNotes);
+    types.insert(FlexiNotes);
     types.insert(Notes);
     types.insert(Regions);
     types.insert(Text);
@@ -214,7 +214,7 @@
     if (dynamic_cast<const TimeRulerLayer *>(layer)) return TimeRuler;
     if (dynamic_cast<const TimeInstantLayer *>(layer)) return TimeInstants;
     if (dynamic_cast<const TimeValueLayer *>(layer)) return TimeValues;
-	if (dynamic_cast<const FlexiNoteLayer *>(layer)) return FlexiNotes;
+    if (dynamic_cast<const FlexiNoteLayer *>(layer)) return FlexiNotes;
     if (dynamic_cast<const NoteLayer *>(layer)) return Notes;
     if (dynamic_cast<const RegionLayer *>(layer)) return Regions;
     if (dynamic_cast<const TextLayer *>(layer)) return Text;
@@ -235,7 +235,7 @@
     case TimeInstants: return "instants";
     case TimeValues: return "values";
     case Notes: return "notes";
-    case FlexiNotes: return "flexible notes";
+    case FlexiNotes: return "flexinotes";
     case Regions: return "regions";
     case Text: return "text";
     case Image: return "image";
@@ -349,7 +349,7 @@
 	return new SparseOneDimensionalModel(baseModel->getSampleRate(), 1);
     } else if (layerType == TimeValues) {
 	return new SparseTimeValueModel(baseModel->getSampleRate(), 1, true);
-	} else if (layerType == FlexiNotes) {
+    } else if (layerType == FlexiNotes) {
 	return new FlexiNoteModel(baseModel->getSampleRate(), 1, true);
     } else if (layerType == Notes) {
 	return new NoteModel(baseModel->getSampleRate(), 1, true);
--- a/layer/SpectrogramLayer.cpp	Wed Apr 02 18:22:41 2014 +0100
+++ b/layer/SpectrogramLayer.cpp	Wed Apr 02 21:50:04 2014 +0100
@@ -3647,18 +3647,21 @@
 		 "colourScheme=\"%4\" "
 		 "colourRotation=\"%5\" "
 		 "frequencyScale=\"%6\" "
-		 "binDisplay=\"%7\" "
-		 "normalizeColumns=\"%8\" "
-                 "normalizeVisibleArea=\"%9\"")
+		 "binDisplay=\"%7\" ")
 	.arg(m_minFrequency)
 	.arg(m_maxFrequency)
 	.arg(m_colourScale)
 	.arg(m_colourMap)
 	.arg(m_colourRotation)
 	.arg(m_frequencyScale)
-	.arg(m_binDisplay)
+	.arg(m_binDisplay);
+
+    s += QString("normalizeColumns=\"%1\" "
+                 "normalizeVisibleArea=\"%2\" "
+                 "normalizeHybrid=\"%3\" ")
 	.arg(m_normalizeColumns ? "true" : "false")
-        .arg(m_normalizeVisibleArea ? "true" : "false");
+        .arg(m_normalizeVisibleArea ? "true" : "false")
+        .arg(m_normalizeHybrid ? "true" : "false");
 
     Layer::toXml(stream, indent, extraAttributes + " " + s);
 }
@@ -3731,5 +3734,9 @@
     bool normalizeVisibleArea =
 	(attributes.value("normalizeVisibleArea").trimmed() == "true");
     setNormalizeVisibleArea(normalizeVisibleArea);
+
+    bool normalizeHybrid =
+	(attributes.value("normalizeHybrid").trimmed() == "true");
+    setNormalizeHybrid(normalizeHybrid);
 }