From 654a7be834189ced04c26904026c2710438b23df Mon Sep 17 00:00:00 2001 From: "Robert C. Helling" Date: Fri, 11 Sep 2015 11:31:02 +0200 Subject: Add checkbox to force images to match dives Give the user the possibility to attach images to a dive even when the times do not match Signed-off-by: Robert C. Helling Signed-off-by: Dirk Hohndel --- qt-ui/divelistview.cpp | 2 +- qt-ui/shiftimagetimes.ui | 7 +++++++ qt-ui/simplewidgets.cpp | 11 +++++++++++ qt-ui/simplewidgets.h | 3 +++ 4 files changed, 22 insertions(+), 1 deletion(-) (limited to 'qt-ui') diff --git a/qt-ui/divelistview.cpp b/qt-ui/divelistview.cpp index c25bb17cb..2ee5f5dcd 100644 --- a/qt-ui/divelistview.cpp +++ b/qt-ui/divelistview.cpp @@ -925,7 +925,7 @@ void DiveListView::matchImagesToDives(QStringList fileNames) for_each_dive (j, dive) { if (!dive->selected) continue; - dive_create_picture(dive, copy_string(fileName.toUtf8().data()), shiftDialog.amount()); + dive_create_picture(dive, copy_string(fileName.toUtf8().data()), shiftDialog.amount(), shiftDialog.matchAll()); } } diff --git a/qt-ui/shiftimagetimes.ui b/qt-ui/shiftimagetimes.ui index 56a222856..0478a62b4 100644 --- a/qt-ui/shiftimagetimes.ui +++ b/qt-ui/shiftimagetimes.ui @@ -131,6 +131,13 @@ Not all images have timestamps in the range between + + + + Load images even if the time does not match the dive time + + + diff --git a/qt-ui/simplewidgets.cpp b/qt-ui/simplewidgets.cpp index 99b4b2be8..7e8bc40e4 100644 --- a/qt-ui/simplewidgets.cpp +++ b/qt-ui/simplewidgets.cpp @@ -312,12 +312,23 @@ void ShiftImageTimesDialog::dcDateTimeChanged(const QDateTime &newDateTime) setOffset(newDateTime.toTime_t() - dcImageEpoch); } +void ShiftImageTimesDialog::matchAllImagesToggled(bool state) +{ + matchAllImages = state; +} + +bool ShiftImageTimesDialog::matchAll() +{ + return matchAllImages; +} + ShiftImageTimesDialog::ShiftImageTimesDialog(QWidget *parent, QStringList fileNames) : QDialog(parent), fileNames(fileNames), m_amount(0) { ui.setupUi(this); connect(ui.buttonBox, SIGNAL(clicked(QAbstractButton *)), this, SLOT(buttonClicked(QAbstractButton *))); connect(ui.syncCamera, SIGNAL(clicked()), this, SLOT(syncCameraClicked())); connect(ui.timeEdit, SIGNAL(timeChanged(const QTime &)), this, SLOT(timeEditChanged(const QTime &))); + connect(ui.matchAllImages, SIGNAL(toggled(bool)), this, SLOT(matchAllImagesToggled(bool))); dcImageEpoch = (time_t)0; } diff --git a/qt-ui/simplewidgets.h b/qt-ui/simplewidgets.h index 17f628392..595c4cd4b 100644 --- a/qt-ui/simplewidgets.h +++ b/qt-ui/simplewidgets.h @@ -101,6 +101,7 @@ public: explicit ShiftImageTimesDialog(QWidget *parent, QStringList fileNames); time_t amount() const; void setOffset(time_t offset); + bool matchAll(); private slots: void buttonClicked(QAbstractButton *button); @@ -108,12 +109,14 @@ slots: void dcDateTimeChanged(const QDateTime &); void timeEditChanged(const QTime &time); void updateInvalid(); + void matchAllImagesToggled(bool); private: QStringList fileNames; Ui::ShiftImageTimesDialog ui; time_t m_amount; time_t dcImageEpoch; + bool matchAllImages; }; class URLDialog : public QDialog { -- cgit v1.2.3-70-g09d2