diff options
author | Gehad <gehadelrobey@gmail.com> | 2014-03-20 22:57:49 +0200 |
---|---|---|
committer | Dirk Hohndel <dirk@hohndel.org> | 2014-03-21 21:26:09 -0700 |
commit | 8ca4437624ad84b9bec934436cc42182e96f359a (patch) | |
tree | ff84eba5c3adc66307509904fb47071f5b828707 /qt-ui | |
parent | cc2369c5f9dbaebb8fae2e652e27f189d0454fc1 (diff) | |
download | subsurface-8ca4437624ad84b9bec934436cc42182e96f359a.tar.gz |
Add current time and adjusted time to gui when adjusting dive's timestamp
This patch adds the current dive time and the adjusted time to the time
shift window. I added a function to dive.c to get the timestamp of the
first selected dive.
This will view the time of the first selected dive only even when multi
dives are selected but it does change the times for multiple dives
properly.
Signed-off-by: Gehad elrobey <gehadelrobey@gmail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
Diffstat (limited to 'qt-ui')
-rw-r--r-- | qt-ui/shifttimes.ui | 46 | ||||
-rw-r--r-- | qt-ui/simplewidgets.cpp | 22 | ||||
-rw-r--r-- | qt-ui/simplewidgets.h | 3 |
3 files changed, 70 insertions, 1 deletions
diff --git a/qt-ui/shifttimes.ui b/qt-ui/shifttimes.ui index 55932a2d3..8aaa247ce 100644 --- a/qt-ui/shifttimes.ui +++ b/qt-ui/shifttimes.ui @@ -10,7 +10,7 @@ <x>0</x> <y>0</y> <width>343</width> - <height>177</height> + <height>224</height> </rect> </property> <property name="sizePolicy"> @@ -65,6 +65,38 @@ <number>9</number> </property> <item> + <layout class="QFormLayout" name="formLayout"> + <item row="2" column="0"> + <widget class="QLabel" name="shiftedTimeLabel"> + <property name="text"> + <string>Shifted time:</string> + </property> + </widget> + </item> + <item row="1" column="0"> + <widget class="QLabel" name="currentTimeLabel"> + <property name="text"> + <string>Current time:</string> + </property> + </widget> + </item> + <item row="1" column="1"> + <widget class="QLabel" name="currentTime"> + <property name="text"> + <string>0:0</string> + </property> + </widget> + </item> + <item row="2" column="1"> + <widget class="QLabel" name="shiftedTime"> + <property name="text"> + <string>0:0</string> + </property> + </widget> + </item> + </layout> + </item> + <item> <widget class="QTimeEdit" name="timeEdit"> <property name="date"> <date> @@ -166,5 +198,17 @@ </hint> </hints> </connection> + <connection> + <sender>timeEdit</sender> + <signal>timeChanged(const QTime)</signal> + <receiver>ShiftTimesDialog</receiver> + <slot>changeTime()</slot> + </connection> + <connection> + <sender>backwards</sender> + <signal>toggled(bool)</signal> + <receiver>ShiftTimesDialog</receiver> + <slot>changeTime()</slot> + </connection> </connections> </ui> diff --git a/qt-ui/simplewidgets.cpp b/qt-ui/simplewidgets.cpp index 2ec984b7a..be3add815 100644 --- a/qt-ui/simplewidgets.cpp +++ b/qt-ui/simplewidgets.cpp @@ -18,6 +18,7 @@ #include "../dive.h" #include "../file.h" #include "mainwindow.h" +#include "helpers.h" class MinMaxAvgWidgetPrivate { public: @@ -155,10 +156,31 @@ void ShiftTimesDialog::buttonClicked(QAbstractButton *button) } } +void ShiftTimesDialog::showEvent(QShowEvent * event) +{ + ui.timeEdit->setTime(QTime(0, 0, 0, 0)); + when = get_times();//get time of first selected dive + ui.currentTime->setText(get_dive_date_string(when)); + ui.shiftedTime->setText(get_dive_date_string(when)); +} + +void ShiftTimesDialog::changeTime() +{ + int amount; + + amount = ui.timeEdit->time().hour() * 3600 + ui.timeEdit->time().minute() * 60; + if (ui.backwards->isChecked()) + amount *= -1; + + ui.shiftedTime->setText (get_dive_date_string(amount+when)); +} + ShiftTimesDialog::ShiftTimesDialog(QWidget *parent) : QDialog(parent) { ui.setupUi(this); connect(ui.buttonBox, SIGNAL(clicked(QAbstractButton *)), this, SLOT(buttonClicked(QAbstractButton *))); + connect(ui.timeEdit, SIGNAL(timeChanged(const QTime)), this, SLOT(changeTime())); + connect(ui.backwards, SIGNAL(toggled(bool)), this, SLOT(changeTime())); } void ShiftImageTimesDialog::buttonClicked(QAbstractButton *button) diff --git a/qt-ui/simplewidgets.h b/qt-ui/simplewidgets.h index 6e4166f35..178dfece8 100644 --- a/qt-ui/simplewidgets.h +++ b/qt-ui/simplewidgets.h @@ -52,12 +52,15 @@ class ShiftTimesDialog : public QDialog { Q_OBJECT public: static ShiftTimesDialog *instance(); + void showEvent ( QShowEvent * event ); private slots: void buttonClicked(QAbstractButton *button); + void changeTime (); private: explicit ShiftTimesDialog(QWidget *parent); + int64_t when; Ui::ShiftTimesDialog ui; }; |