Remember last folder
This commit is contained in:
parent
10365239a5
commit
8469e2a6b6
@ -90,6 +90,7 @@ MainWindow::MainWindow(QWidget *parent) :
|
|||||||
extruderFeedrate = settings.value("extruderfeedrate", 200).toInt();
|
extruderFeedrate = settings.value("extruderfeedrate", 200).toInt();
|
||||||
trayIconEnabled = settings.value("core/trayiconenabled", 1).toBool();
|
trayIconEnabled = settings.value("core/trayiconenabled", 1).toBool();
|
||||||
supressWait = settings.value("user/supresswait", 0).toBool();
|
supressWait = settings.value("user/supresswait", 0).toBool();
|
||||||
|
lastDir.append(settings.value("user/lastdir", "").toString());
|
||||||
int size = settings.beginReadArray("user/recentfiles");
|
int size = settings.beginReadArray("user/recentfiles");
|
||||||
for(int i = 0; i < size; ++i)
|
for(int i = 0; i < size; ++i)
|
||||||
{
|
{
|
||||||
@ -186,6 +187,7 @@ MainWindow::~MainWindow()
|
|||||||
settings.setValue("user/bedtemp", ui->btmpspin->value());
|
settings.setValue("user/bedtemp", ui->btmpspin->value());
|
||||||
settings.setValue("user/step", ui->stepspin->value());
|
settings.setValue("user/step", ui->stepspin->value());
|
||||||
settings.setValue("user/estep", ui->estepspin->value());
|
settings.setValue("user/estep", ui->estepspin->value());
|
||||||
|
settings.setValue("user/lastdir", lastDir);
|
||||||
settings.beginWriteArray("user/recentfiles");
|
settings.beginWriteArray("user/recentfiles");
|
||||||
for(int i = 0; i < recentFiles.size(); ++i)
|
for(int i = 0; i < recentFiles.size(); ++i)
|
||||||
{
|
{
|
||||||
@ -212,11 +214,30 @@ void MainWindow::open()
|
|||||||
sdprinting = false;
|
sdprinting = false;
|
||||||
QString filename;
|
QString filename;
|
||||||
QDir home;
|
QDir home;
|
||||||
filename = QFileDialog::getOpenFileName(this,
|
if(lastDir == "")
|
||||||
tr("Open GCODE"),
|
{
|
||||||
home.home().absolutePath(),
|
filename = QFileDialog::getOpenFileName(this,
|
||||||
"GCODE (*.g *.gco *.gcode *.nc)");
|
tr("Open GCODE"),
|
||||||
|
home.home().absolutePath(),
|
||||||
|
"GCODE (*.g *.gco *.gcode *.nc)");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
filename = QFileDialog::getOpenFileName(this,
|
||||||
|
tr("Open GCODE"),
|
||||||
|
lastDir,
|
||||||
|
"GCODE (*.g *.gco *.gcode *.nc)");
|
||||||
|
}
|
||||||
if(filename.isEmpty() || filename.isNull()) return;
|
if(filename.isEmpty() || filename.isNull()) return;
|
||||||
|
//Remember the last folder
|
||||||
|
lastDir.clear();
|
||||||
|
lastDir.append(filename);
|
||||||
|
int filenameChars = 0;
|
||||||
|
for(int i = filename.count()-1; filename.at(i) != QDir::separator(); i--)
|
||||||
|
{
|
||||||
|
filenameChars++; //Count how many characters are in the filename
|
||||||
|
}
|
||||||
|
lastDir.remove(lastDir.count()-filenameChars, filenameChars);//remove filename
|
||||||
gfile.setFileName(filename);
|
gfile.setFileName(filename);
|
||||||
if(!recentFiles.contains(filename))
|
if(!recentFiles.contains(filename))
|
||||||
{
|
{
|
||||||
|
|||||||
@ -66,6 +66,7 @@ protected:
|
|||||||
private:
|
private:
|
||||||
Ui::MainWindow *ui;
|
Ui::MainWindow *ui;
|
||||||
|
|
||||||
|
QString lastDir;
|
||||||
bool opened;
|
bool opened;
|
||||||
bool firstrun;
|
bool firstrun;
|
||||||
bool autolock;
|
bool autolock;
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user