diff framework/MainWindowBase.h @ 729:15da3ab3d416 csv-export-dialog

Split export functions into file-type-specific ones; accept various CSV-specific arguments
author Chris Cannam
date Tue, 14 Jan 2020 15:42:46 +0000
parents 1e2e03197b8c
children 48001ed9143b 7b1d30af4b38
line wrap: on
line diff
--- a/framework/MainWindowBase.h	Fri Jan 10 14:54:43 2020 +0000
+++ b/framework/MainWindowBase.h	Tue Jan 14 15:42:46 2020 +0000
@@ -70,6 +70,7 @@
 class QSignalMapper;
 class QShortcut;
 class AlignmentModel;
+class LayerGeometryProvider;
 
 namespace breakfastquay {
     class SystemPlaybackTarget;
@@ -165,10 +166,28 @@
     virtual bool saveSessionFile(QString path);
     virtual bool saveSessionTemplate(QString path);
 
-    virtual bool exportLayerTo(Layer *layer, View *fromView,
+    virtual bool exportLayerToSVL(Layer *layer,
+                                  QString toPath, QString &error);
+
+    virtual bool exportLayerToMIDI(Layer *layer,
+                                   MultiSelection *selectionsToWrite, // or null
+                                   QString toPath, QString &error);
+
+    virtual bool exportLayerToRDF(Layer *layer,
+                                  QString toPath, QString &error);
+
+    virtual bool exportLayerToCSV(Layer *layer, LayerGeometryProvider *provider,
+                                  MultiSelection *selectionsToWrite, // or null
+                                  QString delimiter,
+                                  DataExportOptions options,
+                                  QString toPath, QString &error);
+
+    // Delegate to one of the above depending on extension of path,
+    // using the default export options
+    virtual bool exportLayerTo(Layer *layer, LayerGeometryProvider *provider,
                                MultiSelection *selectionsToWrite, // or null
                                QString toPath, QString &error);
-
+    
     void cueOSCScript(QString filename);
     
     /// Implementation of FrameTimer interface method