Allow many places to load and save the last directory used for that functionality so it can easily be used again.

All frame file I/O uses the same directory load/save location but DBC files store separately as do filter files, graphing definitions, and stored text files from the various reverse engineering windows.
This commit is contained in:
Collin Kidder
2019-06-17 20:58:56 -04:00
parent f7aa796e79
commit d4a735a710
12 changed files with 77 additions and 5 deletions
+1 -1
View File
@@ -1,7 +1,7 @@
#ifndef CONFIG #ifndef CONFIG
#define CONFIG #define CONFIG
#define VERSION 198 #define VERSION 199
//try to keep this in sync. //try to keep this in sync.
//SavvyCAN will complain if you connect a GVRET board with a revision //SavvyCAN will complain if you connect a GVRET board with a revision
+8 -1
View File
@@ -7,6 +7,7 @@
#include <QFileDialog> #include <QFileDialog>
#include <QApplication> #include <QApplication>
#include <QPalette> #include <QPalette>
#include <QSettings>
#include "utility.h" #include "utility.h"
#include "connections/canconmanager.h" #include "connections/canconmanager.h"
@@ -1339,6 +1340,8 @@ void DBCFile::saveFile(QString fileName)
void DBCHandler::saveDBCFile(int idx) void DBCHandler::saveDBCFile(int idx)
{ {
QSettings settings;
if (loadedFiles.count() == 0) return; if (loadedFiles.count() == 0) return;
if (idx < 0) return; if (idx < 0) return;
if (idx >= loadedFiles.count()) return; if (idx >= loadedFiles.count()) return;
@@ -1349,6 +1352,7 @@ void DBCHandler::saveDBCFile(int idx)
QStringList filters; QStringList filters;
filters.append(QString(tr("DBC File (*.dbc)"))); filters.append(QString(tr("DBC File (*.dbc)")));
dialog.setDirectory(settings.value("DBC/LoadSaveDirectory", dialog.directory().path()).toString());
dialog.setFileMode(QFileDialog::AnyFile); dialog.setFileMode(QFileDialog::AnyFile);
dialog.setNameFilters(filters); dialog.setNameFilters(filters);
dialog.setViewMode(QFileDialog::Detail); dialog.setViewMode(QFileDialog::Detail);
@@ -1360,6 +1364,7 @@ void DBCHandler::saveDBCFile(int idx)
filename = dialog.selectedFiles()[0]; filename = dialog.selectedFiles()[0];
if (!filename.contains('.')) filename += ".dbc"; if (!filename.contains('.')) filename += ".dbc";
loadedFiles[idx].saveFile(filename); loadedFiles[idx].saveFile(filename);
settings.setValue("DBC/LoadSaveDirectory", dialog.directory().path());
} }
} }
@@ -1411,10 +1416,12 @@ DBCFile* DBCHandler::loadDBCFile(int idx)
QString filename; QString filename;
QFileDialog dialog; QFileDialog dialog;
QSettings settings;
QStringList filters; QStringList filters;
filters.append(QString(tr("DBC File (*.dbc)"))); filters.append(QString(tr("DBC File (*.dbc)")));
dialog.setDirectory(settings.value("DBC/LoadSaveDirectory", dialog.directory().path()).toString());
dialog.setFileMode(QFileDialog::ExistingFile); dialog.setFileMode(QFileDialog::ExistingFile);
dialog.setNameFilters(filters); dialog.setNameFilters(filters);
dialog.setViewMode(QFileDialog::Detail); dialog.setViewMode(QFileDialog::Detail);
@@ -1426,7 +1433,7 @@ DBCFile* DBCHandler::loadDBCFile(int idx)
DBCFile newFile; DBCFile newFile;
newFile.loadFile(filename); newFile.loadFile(filename);
loadedFiles.append(newFile); loadedFiles.append(newFile);
settings.setValue("DBC/LoadSaveDirectory", dialog.directory().path());
return &loadedFiles.last(); return &loadedFiles.last();
} }
+10
View File
@@ -4,6 +4,7 @@
#include <QProgressDialog> #include <QProgressDialog>
#include <QDateTime> #include <QDateTime>
#include <QtEndian> #include <QtEndian>
#include <QSettings>
#include <iostream> #include <iostream>
#include "utility.h" #include "utility.h"
@@ -19,6 +20,7 @@ bool FrameFileIO::saveFrameFile(QString &fileName, const QVector<CANFrame>* fram
{ {
QString filename; QString filename;
QFileDialog dialog(qApp->activeWindow()); QFileDialog dialog(qApp->activeWindow());
QSettings settings;
bool result = false; bool result = false;
QStringList filters; QStringList filters;
@@ -35,6 +37,7 @@ bool FrameFileIO::saveFrameFile(QString &fileName, const QVector<CANFrame>* fram
filters.append(QString(tr("Cabana Log(*.csv *.CSV)"))); filters.append(QString(tr("Cabana Log(*.csv *.CSV)")));
filters.append(QString(tr("CANalyzer Ascii Log (*.asc *.ASC)"))); filters.append(QString(tr("CANalyzer Ascii Log (*.asc *.ASC)")));
dialog.setDirectory(settings.value("FileIO/LoadSaveDirectory", dialog.directory().path()).toString());
dialog.setFileMode(QFileDialog::AnyFile); dialog.setFileMode(QFileDialog::AnyFile);
dialog.setNameFilters(filters); dialog.setNameFilters(filters);
dialog.setViewMode(QFileDialog::Detail); dialog.setViewMode(QFileDialog::Detail);
@@ -125,6 +128,7 @@ bool FrameFileIO::saveFrameFile(QString &fileName, const QVector<CANFrame>* fram
{ {
QStringList fileList = filename.split('/'); QStringList fileList = filename.split('/');
fileName = fileList[fileList.length() - 1]; fileName = fileList[fileList.length() - 1];
settings.setValue("FileIO/LoadSaveDirectory", dialog.directory().path());
return true; return true;
} }
return false; return false;
@@ -136,6 +140,7 @@ bool FrameFileIO::loadFrameFile(QString &fileName, QVector<CANFrame>* frameCache
{ {
QString filename; QString filename;
QFileDialog dialog; QFileDialog dialog;
QSettings settings;
bool result = false; bool result = false;
QStringList filters; QStringList filters;
@@ -159,6 +164,7 @@ bool FrameFileIO::loadFrameFile(QString &fileName, QVector<CANFrame>* frameCache
filters.append(QString(tr("Cabana Log (*.csv *.CSV)"))); filters.append(QString(tr("Cabana Log (*.csv *.CSV)")));
filters.append(QString(tr("CANOpen Magic (*.csv *.CSV)"))); filters.append(QString(tr("CANOpen Magic (*.csv *.CSV)")));
dialog.setDirectory(settings.value("FileIO/LoadSaveDirectory", dialog.directory().path()).toString());
dialog.setFileMode(QFileDialog::ExistingFile); dialog.setFileMode(QFileDialog::ExistingFile);
dialog.setNameFilters(filters); dialog.setNameFilters(filters);
dialog.setViewMode(QFileDialog::Detail); dialog.setViewMode(QFileDialog::Detail);
@@ -203,6 +209,7 @@ bool FrameFileIO::loadFrameFile(QString &fileName, QVector<CANFrame>* frameCache
{ {
QStringList fileList = filename.split('/'); QStringList fileList = filename.split('/');
fileName = fileList[fileList.length() - 1]; fileName = fileList[fileList.length() - 1];
settings.setValue("FileIO/LoadSaveDirectory", dialog.directory().path());
return true; return true;
} }
else else
@@ -1575,10 +1582,12 @@ bool FrameFileIO::openContinuousNative()
{ {
QString filename; QString filename;
QFileDialog dialog(qApp->activeWindow()); QFileDialog dialog(qApp->activeWindow());
QSettings settings;
QStringList filters; QStringList filters;
filters.append(QString(tr("GVRET Logs (*.csv *.CSV)"))); filters.append(QString(tr("GVRET Logs (*.csv *.CSV)")));
dialog.setDirectory(settings.value("FileIO/LoadSaveDirectory", dialog.directory().path()).toString());
dialog.setFileMode(QFileDialog::AnyFile); dialog.setFileMode(QFileDialog::AnyFile);
dialog.setNameFilters(filters); dialog.setNameFilters(filters);
dialog.setViewMode(QFileDialog::Detail); dialog.setViewMode(QFileDialog::Detail);
@@ -1595,6 +1604,7 @@ bool FrameFileIO::openContinuousNative()
} }
continuousFile.write("Time Stamp,ID,Extended,Dir,Bus,LEN,D1,D2,D3,D4,D5,D6,D7,D8"); continuousFile.write("Time Stamp,ID,Extended,Dir,Bus,LEN,D1,D2,D3,D4,D5,D6,D7,D8");
continuousFile.write("\n"); continuousFile.write("\n");
settings.setValue("FileIO/LoadSaveDirectory", dialog.directory().path());
return true; return true;
} }
return false; return false;
+6
View File
@@ -173,10 +173,12 @@ void FramePlaybackWindow::saveFilters()
{ {
QString filename; QString filename;
QFileDialog dialog(this); QFileDialog dialog(this);
QSettings settings;
QStringList filters; QStringList filters;
filters.append(QString(tr("Filter list (*.ftl)"))); filters.append(QString(tr("Filter list (*.ftl)")));
dialog.setDirectory(settings.value("Filters/LoadSaveDirectory", dialog.directory().path()).toString());
dialog.setFileMode(QFileDialog::AnyFile); dialog.setFileMode(QFileDialog::AnyFile);
dialog.setNameFilters(filters); dialog.setNameFilters(filters);
dialog.setViewMode(QFileDialog::Detail); dialog.setViewMode(QFileDialog::Detail);
@@ -203,6 +205,7 @@ void FramePlaybackWindow::saveFilters()
} }
outFile->close(); outFile->close();
dialog.setDirectory(settings.value("Filters/LoadSaveDirectory", dialog.directory().path()).toString());
} }
} }
@@ -212,10 +215,12 @@ void FramePlaybackWindow::loadFilters()
{ {
QString filename; QString filename;
QFileDialog dialog(this); QFileDialog dialog(this);
QSettings settings;
QStringList filters; QStringList filters;
filters.append(QString(tr("Filter List (*.ftl)"))); filters.append(QString(tr("Filter List (*.ftl)")));
dialog.setDirectory(settings.value("Filters/LoadSaveDirectory", dialog.directory().path()).toString());
dialog.setFileMode(QFileDialog::ExistingFile); dialog.setFileMode(QFileDialog::ExistingFile);
dialog.setNameFilters(filters); dialog.setNameFilters(filters);
dialog.setViewMode(QFileDialog::Detail); dialog.setViewMode(QFileDialog::Detail);
@@ -264,6 +269,7 @@ void FramePlaybackWindow::loadFilters()
} }
} }
inFile->close(); inFile->close();
dialog.setDirectory(settings.value("Filters/LoadSaveDirectory", dialog.directory().path()).toString());
} }
} }
+6 -1
View File
@@ -241,10 +241,12 @@ void FrameSenderWindow::saveGrid()
{ {
QString filename; QString filename;
QFileDialog dialog(this); QFileDialog dialog(this);
QSettings settings;
QStringList filters; QStringList filters;
filters.append(QString(tr("Frame Sender Definition (*.fsd)"))); filters.append(QString(tr("Frame Sender Definition (*.fsd)")));
dialog.setDirectory(settings.value("FrameSender/LoadSaveDirectory", dialog.directory().path()).toString());
dialog.setFileMode(QFileDialog::AnyFile); dialog.setFileMode(QFileDialog::AnyFile);
dialog.setNameFilters(filters); dialog.setNameFilters(filters);
dialog.setViewMode(QFileDialog::Detail); dialog.setViewMode(QFileDialog::Detail);
@@ -258,6 +260,7 @@ void FrameSenderWindow::saveGrid()
{ {
if (!filename.contains('.')) filename += ".fsd"; if (!filename.contains('.')) filename += ".fsd";
saveSenderFile(filename); saveSenderFile(filename);
settings.setValue("FrameSender/LoadSaveDirectory", dialog.directory().path());
} }
} }
} }
@@ -266,10 +269,12 @@ void FrameSenderWindow::loadGrid()
{ {
QString filename; QString filename;
QFileDialog dialog(this); QFileDialog dialog(this);
QSettings settings;
QStringList filters; QStringList filters;
filters.append(QString(tr("Frame Sender Definition (*.fsd)"))); filters.append(QString(tr("Frame Sender Definition (*.fsd)")));
dialog.setDirectory(settings.value("FrameSender/LoadSaveDirectory", dialog.directory().path()).toString());
dialog.setFileMode(QFileDialog::ExistingFile); dialog.setFileMode(QFileDialog::ExistingFile);
dialog.setNameFilters(filters); dialog.setNameFilters(filters);
dialog.setViewMode(QFileDialog::Detail); dialog.setViewMode(QFileDialog::Detail);
@@ -281,6 +286,7 @@ void FrameSenderWindow::loadGrid()
if (dialog.selectedNameFilter() == filters[0]) if (dialog.selectedNameFilter() == filters[0])
{ {
loadSenderFile(filename); loadSenderFile(filename);
settings.setValue("FrameSender/LoadSaveDirectory", dialog.directory().path());
} }
} }
@@ -325,7 +331,6 @@ void FrameSenderWindow::saveSenderFile(QString filename)
outFile->close(); outFile->close();
delete outFile; delete outFile;
} }
void FrameSenderWindow::loadSenderFile(QString filename) void FrameSenderWindow::loadSenderFile(QString filename)
+9 -2
View File
@@ -650,10 +650,12 @@ void MainWindow::handleSaveFilters()
{ {
QString filename; QString filename;
QFileDialog dialog(this); QFileDialog dialog(this);
QSettings settings;
QStringList filters; QStringList filters;
filters.append(QString(tr("Filter list (*.ftl)"))); filters.append(QString(tr("Filter list (*.ftl)")));
dialog.setDirectory(settings.value("Filters/LoadSaveDirectory", dialog.directory().path()).toString());
dialog.setFileMode(QFileDialog::AnyFile); dialog.setFileMode(QFileDialog::AnyFile);
dialog.setNameFilters(filters); dialog.setNameFilters(filters);
dialog.setViewMode(QFileDialog::Detail); dialog.setViewMode(QFileDialog::Detail);
@@ -664,6 +666,7 @@ void MainWindow::handleSaveFilters()
filename = dialog.selectedFiles()[0]; filename = dialog.selectedFiles()[0];
if (!filename.contains('.')) filename += ".ftl"; if (!filename.contains('.')) filename += ".ftl";
if (dialog.selectedNameFilter() == filters[0]) model->saveFilterFile(filename); if (dialog.selectedNameFilter() == filters[0]) model->saveFilterFile(filename);
settings.setValue("Filters/LoadSaveDirectory", dialog.directory().path());
} }
} }
@@ -671,10 +674,12 @@ void MainWindow::handleLoadFilters()
{ {
QString filename; QString filename;
QFileDialog dialog(this); QFileDialog dialog(this);
QSettings settings;
QStringList filters; QStringList filters;
filters.append(QString(tr("Filter List (*.ftl)"))); filters.append(QString(tr("Filter List (*.ftl)")));
dialog.setDirectory(settings.value("Filters/LoadSaveDirectory", dialog.directory().path()).toString());
dialog.setFileMode(QFileDialog::ExistingFile); dialog.setFileMode(QFileDialog::ExistingFile);
dialog.setNameFilters(filters); dialog.setNameFilters(filters);
dialog.setViewMode(QFileDialog::Detail); dialog.setViewMode(QFileDialog::Detail);
@@ -684,19 +689,20 @@ void MainWindow::handleLoadFilters()
filename = dialog.selectedFiles()[0]; filename = dialog.selectedFiles()[0];
//right now there is only one file type that can be loaded here so just do it. //right now there is only one file type that can be loaded here so just do it.
model->loadFilterFile(filename); model->loadFilterFile(filename);
settings.setValue("Filters/LoadSaveDirectory", dialog.directory().path());
} }
} }
//lbStatusDatabase.setText(fileList[fileList.length() - 1] + tr(" loaded."));
void MainWindow::handleSaveDecoded() void MainWindow::handleSaveDecoded()
{ {
QString filename; QString filename;
QFileDialog dialog(this); QFileDialog dialog(this);
QSettings settings;
QStringList filters; QStringList filters;
filters.append(QString(tr("Text File (*.txt)"))); filters.append(QString(tr("Text File (*.txt)")));
dialog.setDirectory(settings.value("FileIO/LoadSaveDirectory", dialog.directory().path()).toString());
dialog.setFileMode(QFileDialog::AnyFile); dialog.setFileMode(QFileDialog::AnyFile);
dialog.setNameFilters(filters); dialog.setNameFilters(filters);
dialog.setViewMode(QFileDialog::Detail); dialog.setViewMode(QFileDialog::Detail);
@@ -707,6 +713,7 @@ void MainWindow::handleSaveDecoded()
filename = dialog.selectedFiles()[0]; filename = dialog.selectedFiles()[0];
if (!filename.contains('.')) filename += ".txt"; if (!filename.contains('.')) filename += ".txt";
saveDecodedTextFile(filename); saveDecodedTextFile(filename);
settings.setValue("FileIO/LoadSaveDirectory", dialog.directory().path());
} }
} }
+3
View File
@@ -367,6 +367,7 @@ void FileComparatorWindow::saveDetails()
{ {
QString filename; QString filename;
QFileDialog dialog(this); QFileDialog dialog(this);
QSettings settings;
QStringList filters; QStringList filters;
filters.append(QString(tr("Text File (*.txt)"))); filters.append(QString(tr("Text File (*.txt)")));
@@ -375,10 +376,12 @@ void FileComparatorWindow::saveDetails()
dialog.setNameFilters(filters); dialog.setNameFilters(filters);
dialog.setViewMode(QFileDialog::Detail); dialog.setViewMode(QFileDialog::Detail);
dialog.setAcceptMode(QFileDialog::AcceptSave); dialog.setAcceptMode(QFileDialog::AcceptSave);
dialog.setDirectory(settings.value("FileComparator/LoadSaveDirectory", dialog.directory().path()).toString());
if (dialog.exec() == QDialog::Accepted) if (dialog.exec() == QDialog::Accepted)
{ {
filename = dialog.selectedFiles()[0]; filename = dialog.selectedFiles()[0];
settings.setValue("FileComparator/LoadSaveDirectory", dialog.directory().path());
if (!filename.contains('.')) filename += ".txt"; if (!filename.contains('.')) filename += ".txt";
QFile *outFile = new QFile(filename); QFile *outFile = new QFile(filename);
+6
View File
@@ -297,6 +297,7 @@ void FlowViewWindow::saveFileGraph()
{ {
QString filename; QString filename;
QFileDialog dialog(this); QFileDialog dialog(this);
QSettings settings;
QStringList filters; QStringList filters;
filters.append(QString(tr("PDF Files (*.pdf)"))); filters.append(QString(tr("PDF Files (*.pdf)")));
@@ -307,6 +308,7 @@ void FlowViewWindow::saveFileGraph()
dialog.setNameFilters(filters); dialog.setNameFilters(filters);
dialog.setViewMode(QFileDialog::Detail); dialog.setViewMode(QFileDialog::Detail);
dialog.setAcceptMode(QFileDialog::AcceptSave); dialog.setAcceptMode(QFileDialog::AcceptSave);
dialog.setDirectory(settings.value("FlowView/LoadSaveDirectory", dialog.directory().path()).toString());
if (dialog.exec() == QDialog::Accepted) if (dialog.exec() == QDialog::Accepted)
{ {
@@ -327,6 +329,7 @@ void FlowViewWindow::saveFileGraph()
if (!filename.contains('.')) filename += ".jpg"; if (!filename.contains('.')) filename += ".jpg";
ui->graphView->saveJpg(filename, 1024, 768); ui->graphView->saveJpg(filename, 1024, 768);
} }
settings.setValue("FlowView/LoadSaveDirectory", dialog.directory().path());
} }
} }
@@ -334,6 +337,7 @@ void FlowViewWindow::saveFileFlow()
{ {
QString filename; QString filename;
QFileDialog dialog(this); QFileDialog dialog(this);
QSettings settings;
QStringList filters; QStringList filters;
filters.append(QString(tr("PNG Files (*.png)"))); filters.append(QString(tr("PNG Files (*.png)")));
@@ -343,6 +347,7 @@ void FlowViewWindow::saveFileFlow()
dialog.setNameFilters(filters); dialog.setNameFilters(filters);
dialog.setViewMode(QFileDialog::Detail); dialog.setViewMode(QFileDialog::Detail);
dialog.setAcceptMode(QFileDialog::AcceptSave); dialog.setAcceptMode(QFileDialog::AcceptSave);
dialog.setDirectory(settings.value("FlowView/LoadSaveDirectory", dialog.directory().path()).toString());
if (dialog.exec() == QDialog::Accepted) if (dialog.exec() == QDialog::Accepted)
{ {
@@ -358,6 +363,7 @@ void FlowViewWindow::saveFileFlow()
if (!filename.contains('.')) filename += ".jpg"; if (!filename.contains('.')) filename += ".jpg";
ui->flowView->saveImage(filename, 1024, 768); ui->flowView->saveImage(filename, 1024, 768);
} }
settings.setValue("FlowView/LoadSaveDirectory", dialog.directory().path());
} }
} }
+3
View File
@@ -477,6 +477,7 @@ void FrameInfoWindow::saveDetails()
{ {
QString filename; QString filename;
QFileDialog dialog(this); QFileDialog dialog(this);
QSettings settings;
QStringList filters; QStringList filters;
filters.append(QString(tr("Text File (*.txt)"))); filters.append(QString(tr("Text File (*.txt)")));
@@ -485,9 +486,11 @@ void FrameInfoWindow::saveDetails()
dialog.setNameFilters(filters); dialog.setNameFilters(filters);
dialog.setViewMode(QFileDialog::Detail); dialog.setViewMode(QFileDialog::Detail);
dialog.setAcceptMode(QFileDialog::AcceptSave); dialog.setAcceptMode(QFileDialog::AcceptSave);
dialog.setDirectory(settings.value("FrameInfo/LoadSaveDirectory", dialog.directory().path()).toString());
if (dialog.exec() == QDialog::Accepted) if (dialog.exec() == QDialog::Accepted)
{ {
settings.setValue("FrameInfo/LoadSaveDirectory", dialog.directory().path());
filename = dialog.selectedFiles()[0]; filename = dialog.selectedFiles()[0];
if (!filename.contains('.')) filename += ".txt"; if (!filename.contains('.')) filename += ".txt";
if (dialog.selectedNameFilter() == filters[0]) if (dialog.selectedNameFilter() == filters[0])
+15
View File
@@ -633,6 +633,7 @@ void GraphingWindow::saveGraphs()
{ {
QString filename; QString filename;
QFileDialog dialog(this); QFileDialog dialog(this);
QSettings settings;
QStringList filters; QStringList filters;
filters.append(QString(tr("PDF Files (*.pdf)"))); filters.append(QString(tr("PDF Files (*.pdf)")));
@@ -643,10 +644,12 @@ void GraphingWindow::saveGraphs()
dialog.setNameFilters(filters); dialog.setNameFilters(filters);
dialog.setViewMode(QFileDialog::Detail); dialog.setViewMode(QFileDialog::Detail);
dialog.setAcceptMode(QFileDialog::AcceptSave); dialog.setAcceptMode(QFileDialog::AcceptSave);
dialog.setDirectory(settings.value("Graphing/LoadSaveDirectory", dialog.directory().path()).toString());
if (dialog.exec() == QDialog::Accepted) if (dialog.exec() == QDialog::Accepted)
{ {
filename = dialog.selectedFiles()[0]; filename = dialog.selectedFiles()[0];
settings.setValue("Graphing/LoadSaveDirectory", dialog.directory().path());
if (dialog.selectedNameFilter() == filters[0]) if (dialog.selectedNameFilter() == filters[0])
{ {
@@ -670,6 +673,7 @@ void GraphingWindow::saveSpreadsheet()
{ {
QString filename; QString filename;
QFileDialog dialog(this); QFileDialog dialog(this);
QSettings settings;
QStringList filters; QStringList filters;
filters.append(QString(tr("Spreadsheet (*.csv)"))); filters.append(QString(tr("Spreadsheet (*.csv)")));
@@ -678,10 +682,13 @@ void GraphingWindow::saveSpreadsheet()
dialog.setNameFilters(filters); dialog.setNameFilters(filters);
dialog.setViewMode(QFileDialog::Detail); dialog.setViewMode(QFileDialog::Detail);
dialog.setAcceptMode(QFileDialog::AcceptSave); dialog.setAcceptMode(QFileDialog::AcceptSave);
dialog.setDirectory(settings.value("Graphing/LoadSaveDirectory", dialog.directory().path()).toString());
if (dialog.exec() == QDialog::Accepted) if (dialog.exec() == QDialog::Accepted)
{ {
filename = dialog.selectedFiles()[0]; filename = dialog.selectedFiles()[0];
settings.setValue("Graphing/LoadSaveDirectory", dialog.directory().path());
if (!filename.contains('.')) filename += ".csv"; if (!filename.contains('.')) filename += ".csv";
QFile *outFile = new QFile(filename); QFile *outFile = new QFile(filename);
@@ -789,6 +796,7 @@ void GraphingWindow::saveDefinitions()
{ {
QString filename; QString filename;
QFileDialog dialog(this); QFileDialog dialog(this);
QSettings settings;
QStringList filters; QStringList filters;
filters.append(QString(tr("Graph definition (*.gdf)"))); filters.append(QString(tr("Graph definition (*.gdf)")));
@@ -797,10 +805,13 @@ void GraphingWindow::saveDefinitions()
dialog.setNameFilters(filters); dialog.setNameFilters(filters);
dialog.setViewMode(QFileDialog::Detail); dialog.setViewMode(QFileDialog::Detail);
dialog.setAcceptMode(QFileDialog::AcceptSave); dialog.setAcceptMode(QFileDialog::AcceptSave);
dialog.setDirectory(settings.value("Graphing/LoadSaveDirectory", dialog.directory().path()).toString());
if (dialog.exec() == QDialog::Accepted) if (dialog.exec() == QDialog::Accepted)
{ {
filename = dialog.selectedFiles()[0]; filename = dialog.selectedFiles()[0];
settings.setValue("Graphing/LoadSaveDirectory", dialog.directory().path());
if (!filename.contains('.')) filename += ".gdf"; if (!filename.contains('.')) filename += ".gdf";
QFile *outFile = new QFile(filename); QFile *outFile = new QFile(filename);
@@ -847,6 +858,7 @@ void GraphingWindow::loadDefinitions()
{ {
QString filename; QString filename;
QFileDialog dialog; QFileDialog dialog;
QSettings settings;
QStringList filters; QStringList filters;
filters.append(QString(tr("Graph definition (*.gdf)"))); filters.append(QString(tr("Graph definition (*.gdf)")));
@@ -857,10 +869,13 @@ void GraphingWindow::loadDefinitions()
dialog.setFileMode(QFileDialog::ExistingFile); dialog.setFileMode(QFileDialog::ExistingFile);
dialog.setNameFilters(filters); dialog.setNameFilters(filters);
dialog.setViewMode(QFileDialog::Detail); dialog.setViewMode(QFileDialog::Detail);
dialog.setDirectory(settings.value("Graphing/LoadSaveDirectory", dialog.directory().path()).toString());
if (dialog.exec() == QDialog::Accepted) if (dialog.exec() == QDialog::Accepted)
{ {
filename = dialog.selectedFiles()[0]; filename = dialog.selectedFiles()[0];
settings.setValue("Graphing/LoadSaveDirectory", dialog.directory().path());
QFile *inFile = new QFile(filename); QFile *inFile = new QFile(filename);
QByteArray line; QByteArray line;
+4
View File
@@ -145,6 +145,7 @@ void UDSScanWindow::saveResults()
{ {
QString filename; QString filename;
QFileDialog dialog(this); QFileDialog dialog(this);
QSettings settings;
QStringList filters; QStringList filters;
filters.append(QString(tr("Text File (*.txt)"))); filters.append(QString(tr("Text File (*.txt)")));
@@ -153,10 +154,13 @@ void UDSScanWindow::saveResults()
dialog.setNameFilters(filters); dialog.setNameFilters(filters);
dialog.setViewMode(QFileDialog::Detail); dialog.setViewMode(QFileDialog::Detail);
dialog.setAcceptMode(QFileDialog::AcceptSave); dialog.setAcceptMode(QFileDialog::AcceptSave);
dialog.setDirectory(settings.value("UDSScan/LoadSaveDirectory", dialog.directory().path()).toString());
if (dialog.exec() == QDialog::Accepted) if (dialog.exec() == QDialog::Accepted)
{ {
filename = dialog.selectedFiles()[0]; filename = dialog.selectedFiles()[0];
settings.setValue("UDSScan/LoadSaveDirectory", dialog.directory().path());
if (!filename.contains('.')) filename += ".txt"; if (!filename.contains('.')) filename += ".txt";
if (dialog.selectedNameFilter() == filters[0]) if (dialog.selectedNameFilter() == filters[0])
{ {
+6
View File
@@ -180,11 +180,13 @@ void ScriptingWindow::loadNewScript()
{ {
QString filename; QString filename;
QFileDialog dialog; QFileDialog dialog;
QSettings settings;
ScriptContainer *container; ScriptContainer *container;
QStringList filters; QStringList filters;
filters.append(QString(tr("Javascript File (*.js)"))); filters.append(QString(tr("Javascript File (*.js)")));
dialog.setDirectory(settings.value("ScriptingWindow/LoadSaveDirectory", dialog.directory().path()).toString());
dialog.setFileMode(QFileDialog::ExistingFile); dialog.setFileMode(QFileDialog::ExistingFile);
dialog.setNameFilters(filters); dialog.setNameFilters(filters);
dialog.setViewMode(QFileDialog::Detail); dialog.setViewMode(QFileDialog::Detail);
@@ -215,6 +217,7 @@ void ScriptingWindow::loadNewScript()
ui->listLoadedScripts->setCurrentRow(ui->listLoadedScripts->count() - 1); ui->listLoadedScripts->setCurrentRow(ui->listLoadedScripts->count() - 1);
changeCurrentScript(); changeCurrentScript();
settings.setValue("ScriptingWindow/LoadSaveDirectory", dialog.directory().path());
} }
} }
} }
@@ -287,10 +290,12 @@ void ScriptingWindow::saveScript()
{ {
QString filename; QString filename;
QFileDialog dialog(this); QFileDialog dialog(this);
QSettings settings;
QStringList filters; QStringList filters;
filters.append(QString(tr("Javascript File (*.js)"))); filters.append(QString(tr("Javascript File (*.js)")));
dialog.setDirectory(settings.value("ScriptingWindow/LoadSaveDirectory", dialog.directory().path()).toString());
dialog.setFileMode(QFileDialog::AnyFile); dialog.setFileMode(QFileDialog::AnyFile);
dialog.setNameFilters(filters); dialog.setNameFilters(filters);
dialog.setViewMode(QFileDialog::Detail); dialog.setViewMode(QFileDialog::Detail);
@@ -312,6 +317,7 @@ void ScriptingWindow::saveScript()
outFile->write(editor->toPlainText().toUtf8()); outFile->write(editor->toPlainText().toUtf8());
outFile->close(); outFile->close();
delete outFile; delete outFile;
settings.setValue("ScriptingWindow/LoadSaveDirectory", dialog.directory().path());
} }
} }
} }