Remember last open directory as start point

This commit is contained in:
2019-11-19 06:52:40 +01:00
parent c1d25dd663
commit 7e815634bb
2 changed files with 17 additions and 27 deletions
+7 -16
View File
@@ -23,9 +23,7 @@
int MainWindow::socketPair[2] = {0, 0};
MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent),
loading(false),
queued(0)
MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent)
{
qRegisterMetaType<ImageInfoData>("ImageInfoData");
@@ -112,6 +110,10 @@ MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent),
QSettings settings;
restoreGeometry(settings.value("mainwindow/geometry").toByteArray());
restoreState(settings.value("mainwindow/state").toByteArray());
QStringList standardLocations = QStandardPaths::standardLocations(QStandardPaths::PicturesLocation);
if(standardLocations.size())
_lastDir = standardLocations.first();
}
MainWindow::~MainWindow()
@@ -120,8 +122,6 @@ MainWindow::~MainWindow()
void MainWindow::keyPressEvent(QKeyEvent *event)
{
if(!loading)
{
switch (event->key())
{
case Qt::Key_Left:
@@ -134,11 +134,6 @@ void MainWindow::keyPressEvent(QKeyEvent *event)
event->ignore();
break;
}
}
else
{
event->ignore();
}
if(event->isAccepted())
updateWindowTitle();
@@ -199,17 +194,13 @@ void MainWindow::pixmapLoaded(QPixmap pix)
void MainWindow::openFile()
{
QStringList standardLocations = QStandardPaths::standardLocations(QStandardPaths::PicturesLocation);
QString path;
if(standardLocations.size())
path = standardLocations.first();
QString file = QFileDialog::getOpenFileName(this, tr("Open file"), path, tr("Images (*.jpg *.png *.cr2 *.fit *.fits *.JPG *.PNG *.CR2 *.FIT *.FITS)"));
QString file = QFileDialog::getOpenFileName(this, tr("Open file"), _lastDir, tr("Images (*.jpg *.png *.cr2 *.fit *.fits *.JPG *.PNG *.CR2 *.FIT *.FITS)"));
if(!file.isEmpty())
{
QFileInfo info(file);
m_ringList->setFile(info.canonicalFilePath());
updateWindowTitle();
_lastDir = QFileInfo(file).absoluteDir().absolutePath();
}
}
+1 -2
View File
@@ -15,10 +15,9 @@ class MainWindow : public QMainWindow
ImageRingList *m_ringList;
Database *m_database;
ImageInfo *m_info;
bool loading;
int queued;
static int socketPair[2];
QSocketNotifier *socketNotifier;
QString _lastDir;
public:
MainWindow(QWidget *parent = 0);
~MainWindow();