+void MussaWindow::saveAnalysis()
+{
+ std::auto_ptr<QFileDialog> dialog(new QFileDialog(this));
+ dialog->setAcceptMode(QFileDialog::AcceptSave);
+ dialog->setFileMode(QFileDialog::AnyFile);
+
+ QStringList fileNames;
+ if (not dialog->exec()) {
+ return;
+ }
+ fileNames = dialog->selectedFiles();
+
+ if (fileNames.size() != 1) {
+ return;
+ }
+
+ fs::path save_path(fileNames[0].toStdString());
+ // do you want to overwrite?
+ if (fs::exists(save_path) and
+ QMessageBox::question(
+ this,
+ tr("Overwrite File? -- Mussa"),
+ tr("A file called %1 already exists"
+ "do you want to overwrite it?")
+ .arg(fileNames[0]),
+ tr("&Yes"), tr("&No"),
+ QString(), 0, 1)
+ ) {
+ return;
+ }
+ analysis->save(save_path);
+}
+