diff --git a/PictureCopy.cpp b/PictureCopy.cpp index 64f4c15..8b2f5ce 100755 --- a/PictureCopy.cpp +++ b/PictureCopy.cpp @@ -18,6 +18,7 @@ #include "PictureCopy.h" #include "PictureDialog.h" +#include "StandardPaths.h" #include "SidebarGenerator.h" #include #include @@ -32,6 +33,7 @@ void PictureCopy::copyPicture(QWidget *parent, QString picPath) { QSettings settings("Syping", "gta5sync"); settings.beginGroup("FileDialogs"); + settings.beginGroup("PictureCopy"); fileDialogPreSave: QFileInfo sgdFileInfo(picPath); @@ -54,8 +56,9 @@ fileDialogPreSave: QList sidebarUrls = SidebarGenerator::generateSidebarUrls(fileDialog.sidebarUrls()); fileDialog.setSidebarUrls(sidebarUrls); - fileDialog.restoreState(settings.value("CopyPicture","").toByteArray()); + fileDialog.setDirectory(settings.value("Directory", StandardPaths::documentsLocation()).toString()); fileDialog.selectFile(sgdFileInfo.fileName()); + fileDialog.restoreGeometry(settings.value(parent->objectName() + "+Geomtery", "").toByteArray()); if (fileDialog.exec()) { @@ -94,6 +97,7 @@ fileDialogPreSave: } } - settings.setValue("CopyPicture", fileDialog.saveState()); + settings.setValue(parent->objectName() + "+Geometry", fileDialog.saveGeometry()); + settings.setValue("Directory", fileDialog.directory().absolutePath()); settings.endGroup(); } diff --git a/PictureDialog.cpp b/PictureDialog.cpp index 865a86c..9af7b8f 100755 --- a/PictureDialog.cpp +++ b/PictureDialog.cpp @@ -305,6 +305,7 @@ void PictureDialog::on_labPicture_mouseDoubleClicked(Qt::MouseButton button) { QRect desktopRect = QApplication::desktop()->screenGeometry(); PictureWidget *pictureWidget = new PictureWidget(this); + pictureWidget->setObjectName("PictureWidget"); pictureWidget->setWindowFlags(pictureWidget->windowFlags()^Qt::WindowContextHelpButtonHint); pictureWidget->setWindowTitle(this->windowTitle()); pictureWidget->setStyleSheet("QLabel#pictureLabel{background-color: black;}"); diff --git a/PictureExport.cpp b/PictureExport.cpp index d6cf1a6..f0cda66 100755 --- a/PictureExport.cpp +++ b/PictureExport.cpp @@ -16,13 +16,15 @@ * along with this program. If not, see . *****************************************************************************/ +#include "config.h" #include "PictureExport.h" #include "PictureDialog.h" +#include "StandardPaths.h" #include "SidebarGenerator.h" -#include "config.h" #include #include #include +#include PictureExport::PictureExport() { @@ -33,6 +35,7 @@ void PictureExport::exportPicture(QWidget *parent, SnapmaticPicture *picture) { QSettings settings(GTA5SYNC_APPVENDOR, GTA5SYNC_APPSTR); settings.beginGroup("FileDialogs"); + settings.beginGroup("ExportPicture"); fileDialogPreSave: QFileDialog fileDialog(parent); @@ -54,7 +57,8 @@ fileDialogPreSave: QList sidebarUrls = SidebarGenerator::generateSidebarUrls(fileDialog.sidebarUrls()); fileDialog.setSidebarUrls(sidebarUrls); - fileDialog.restoreState(settings.value("ExportPicture","").toByteArray()); + fileDialog.setDirectory(settings.value("Directory", StandardPaths::picturesLocation()).toString()); + fileDialog.restoreGeometry(settings.value(parent->objectName() + "+Geomtery", "").toByteArray()); if (picture != 0) { @@ -129,7 +133,9 @@ fileDialogPreSave: } } - settings.setValue("ExportPicture", fileDialog.saveState()); + settings.setValue(parent->objectName() + "+Geometry", fileDialog.saveGeometry()); + settings.setValue("Directory", fileDialog.directory().absolutePath()); + settings.endGroup(); settings.endGroup(); } diff --git a/ProfileInterface.cpp b/ProfileInterface.cpp index 7abf4ce..d4feac0 100755 --- a/ProfileInterface.cpp +++ b/ProfileInterface.cpp @@ -344,6 +344,7 @@ void ProfileInterface::on_cmdImport_clicked() { QSettings settings(GTA5SYNC_APPVENDOR, GTA5SYNC_APPSTR); settings.beginGroup("FileDialogs"); + settings.beginGroup("ImportCopy"); fileDialogPreOpen: QFileDialog fileDialog(this); @@ -365,7 +366,8 @@ fileDialogPreOpen: QList sidebarUrls = SidebarGenerator::generateSidebarUrls(fileDialog.sidebarUrls()); fileDialog.setSidebarUrls(sidebarUrls); - fileDialog.restoreState(settings.value("ImportCopy","").toByteArray()); + fileDialog.setDirectory(settings.value(profileName + "+Directory", StandardPaths::documentsLocation()).toString()); + fileDialog.restoreGeometry(settings.value(profileName + "+Geometry", "").toByteArray()); if (fileDialog.exec()) { @@ -403,7 +405,9 @@ fileDialogPreOpen: } } - settings.setValue("ImportCopy", fileDialog.saveState()); + settings.setValue(profileName + "+Geometry", fileDialog.saveGeometry()); + settings.setValue(profileName + "+Directory", fileDialog.directory().absolutePath()); + settings.endGroup(); settings.endGroup(); } @@ -599,9 +603,13 @@ void ProfileInterface::exportSelected() bool pictureCopyEnabled = false; bool pictureExportEnabled = false; - QString exportDirectory = QFileDialog::getExistingDirectory(this, tr("Export selected"), profileFolder); + QSettings settings(GTA5SYNC_APPVENDOR, GTA5SYNC_APPSTR); + settings.beginGroup("FileDialogs"); + settings.beginGroup("ExportDirectory"); + QString exportDirectory = QFileDialog::getExistingDirectory(this, tr("Export selected"), settings.value(profileName, profileFolder).toString()); if (exportDirectory != "") { + settings.setValue(profileName, exportDirectory); foreach (ProfileWidget *widget, widgets.keys()) { if (widget->isSelected()) @@ -730,6 +738,8 @@ void ProfileInterface::exportSelected() delete exportThread; } } + settings.endGroup(); + settings.endGroup(); } else { diff --git a/UserInterface.cpp b/UserInterface.cpp index f54b3c5..00de852 100755 --- a/UserInterface.cpp +++ b/UserInterface.cpp @@ -318,7 +318,8 @@ fileDialogPreOpen: QList sidebarUrls = SidebarGenerator::generateSidebarUrls(fileDialog.sidebarUrls()); fileDialog.setSidebarUrls(sidebarUrls); - fileDialog.restoreState(settings.value("OpenFile","").toByteArray()); + fileDialog.setDirectory(settings.value("OpenDialogDirectory", StandardPaths::documentsLocation()).toString()); + fileDialog.restoreGeometry(settings.value("OpenDialogGeometry","").toByteArray()); if (fileDialog.exec()) { @@ -329,6 +330,9 @@ fileDialogPreOpen: if (!openFile(selectedFile, true)) goto fileDialogPreOpen; } } + + settings.setValue("OpenDialogGeometry", fileDialog.saveGeometry()); + settings.setValue("OpenDialogDirectory", fileDialog.directory().absolutePath()); settings.endGroup(); }