Mercurial > hg > svgui
diff widgets/InteractiveFileFinder.cpp @ 1324:13d9b422f7fe zoom
Merge from default branch
author | Chris Cannam |
---|---|
date | Mon, 17 Sep 2018 13:51:31 +0100 |
parents | 34b941921ac8 |
children | c8a6fd3f9dff |
line wrap: on
line diff
--- a/widgets/InteractiveFileFinder.cpp Mon Dec 12 15:18:52 2016 +0000 +++ b/widgets/InteractiveFileFinder.cpp Mon Sep 17 13:51:31 2018 +0100 @@ -19,6 +19,7 @@ #include "data/fileio/DataFileReaderFactory.h" #include "rdf/RDFImporter.h" #include "rdf/RDFExporter.h" +#include "system/System.h" #include <QFileInfo> #include <QMessageBox> @@ -134,6 +135,11 @@ } break; + case SVGFile: + settingsKeyStub = "svg"; + filter = tr("Scalable Vector Graphics files (*.svg)\nAll files (*.*)"); + break; + case CSVFile: settingsKeyStub = "layer"; filter = tr("Comma-separated data files (*.csv)\nSpace-separated .lab files (*.lab)\nText files (*.txt)\nAll files (*.*)"); @@ -151,9 +157,12 @@ }; if (lastPath == "") { - char *home = getenv("HOME"); - if (home) lastPath = home; - else lastPath = "."; + std::string home; + if (getEnvUtf8("HOME", home)) { + lastPath = QString::fromStdString(home); + } else { + lastPath = "."; + } } else if (QFileInfo(lastPath).isDir()) { lastPath = QFileInfo(lastPath).canonicalPath(); } else { @@ -282,6 +291,12 @@ filter = tr("Portable Network Graphics files (*.png)\nAll files (*.*)"); break; + case SVGFile: + settingsKeyStub = "savesvg"; + title = tr("Select a file to export to"); + filter = tr("Scalable Vector Graphics files (*.svg)\nAll files (*.*)"); + break; + case CSVFile: settingsKeyStub = "savelayer"; title = tr("Select a file to export to"); @@ -294,9 +309,12 @@ }; if (lastPath == "") { - char *home = getenv("HOME"); - if (home) lastPath = home; - else lastPath = "."; + std::string home; + if (getEnvUtf8("HOME", home)) { + lastPath = QString::fromStdString(home); + } else { + lastPath = "."; + } } else if (QFileInfo(lastPath).isDir()) { lastPath = QFileInfo(lastPath).canonicalPath(); } else { @@ -330,6 +348,8 @@ defaultSuffix = "wav"; } else if (type == ImageFile) { defaultSuffix = "png"; + } else if (type == SVGFile) { + defaultSuffix = "svg"; } else if (type == CSVFile) { defaultSuffix = "csv"; } @@ -450,6 +470,10 @@ settingsKeyStub = "image"; break; + case SVGFile: + settingsKeyStub = "svg"; + break; + case CSVFile: settingsKeyStub = "layer"; break;