Store camera time offset in preferences

Signed-off-by: Robert C. Helling <helling@atdotde.de>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
Robert C. Helling 2014-02-12 16:46:17 +01:00 committed by Dirk Hohndel
parent dd24eaa377
commit fe2a264db3
4 changed files with 36 additions and 0 deletions

View file

@ -813,7 +813,9 @@ void DiveListView::loadImages()
updateLastUsedImageDir(QFileInfo(fileNames[0]).dir().path());
ShiftImageTimesDialog shiftDialog(this);
shiftDialog.setOffset(lastImageTimeOffset());
shiftDialog.exec();
updateLastImageTimeOffset(shiftDialog.amount());
for (int i = 0; i < fileNames.size(); ++i) {
struct tm tm;
@ -890,3 +892,21 @@ void DiveListView::updateLastUsedImageDir(const QString& dir)
s.beginGroup("FileDialog");
s.setValue("LastImageDir", dir);
}
int DiveListView::lastImageTimeOffset()
{
QSettings settings;
int offset = 0;
settings.beginGroup("MainWindow");
if (settings.contains("LastImageTimeOffset"))
offset = settings.value("LastImageTimeOffset").toInt();
return offset;
}
void DiveListView::updateLastImageTimeOffset(const int offset)
{
QSettings s;
s.beginGroup("MainWindow");
s.setValue("LastImageTimeOffset", offset);
}

View file

@ -75,6 +75,8 @@ private:
void selectTrip ( dive_trip_t* trip );
QString lastUsedImageDir();
void updateLastUsedImageDir(const QString& s);
void updateLastImageTimeOffset(int offset);
int lastImageTimeOffset();
};
#endif // DIVELISTVIEW_H

View file

@ -11,6 +11,7 @@
#include <QProcess>
#include <QStringList>
#include <QDebug>
#include <QTime>
#include "../dive.h"
#include "mainwindow.h"
@ -163,6 +164,7 @@ void ShiftImageTimesDialog::buttonClicked(QAbstractButton* button)
m_amount = ui.timeEdit->time().hour() * 3600 + ui.timeEdit->time().minute() * 60;
if (ui.backwards->isChecked())
m_amount *= -1;
}
}
@ -177,6 +179,17 @@ int ShiftImageTimesDialog::amount() const
return m_amount;
}
void ShiftImageTimesDialog::setOffset(int offset)
{
if (offset >= 0) {
ui.forward->setDown(TRUE);
} else {
ui.backwards->setDown(TRUE);
offset *= -1;
}
ui.timeEdit->setTime(QTime::QTime(offset / 3600, (offset % 3600) / 60, offset % 60));
}
bool isGnome3Session()
{
#if defined(QT_OS_WIW) || defined(QT_OS_MAC)

View file

@ -60,6 +60,7 @@ class ShiftImageTimesDialog : public QDialog {
public:
explicit ShiftImageTimesDialog(QWidget *parent);
int amount() const;
void setOffset(int offset);
private slots:
void buttonClicked(QAbstractButton *button);
private: