#include <iostream>
-ImageSaveDialog::ImageSaveDialog(QGLWidget *newglwidget, QWidget *parent)
- : QDialog(parent)
+#include <boost/filesystem/path.hpp>
+namespace fs = boost::filesystem;
+
+ImageSaveDialog::ImageSaveDialog(boost::shared_ptr<QDir> default_dir_,
+ QGLWidget *newglwidget,
+ QWidget *parent)
+ : QDialog(parent),
+ default_dir(default_dir_)
{
setWindowTitle(tr("Mussa Save Image"));
setLayout(layout);
}
+QDir ImageSaveDialog::defaultDir() const
+{
+ return *default_dir;
+}
+
void ImageSaveDialog::accept()
{
bool endDialog = true;
QString filePath;
filePath = QFileDialog::getSaveFileName(this,
"Choose a filename to save image",
- ".",
+ default_dir->absolutePath(),
"Images (*.png *.jpg)");
if (filePath.isNull()) {
filePath.append(".png");
pixmap.save(filePath, "PNG");
}
+ fs::path path(filePath.toStdString(), fs::native);
+ default_dir->setPath(path.branch_path().native_directory_string().c_str());
}
}