aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--qt-ui/maintab.cpp23
-rw-r--r--qt-ui/maintab.h2
2 files changed, 18 insertions, 7 deletions
diff --git a/qt-ui/maintab.cpp b/qt-ui/maintab.cpp
index f559ff789..e9a8cd1c4 100644
--- a/qt-ui/maintab.cpp
+++ b/qt-ui/maintab.cpp
@@ -36,6 +36,7 @@ MainTab::MainTab(QWidget *parent) : QTabWidget(parent),
ui->suit->setReadOnly(true);
ui->notes->setReadOnly(true);
ui->rating->setReadOnly(true);
+ ui->visibility->setReadOnly(true);
ui->editAccept->hide();
ui->editReset->hide();
@@ -45,6 +46,7 @@ MainTab::MainTab(QWidget *parent) : QTabWidget(parent),
ui->suit->installEventFilter(this);
ui->notes->installEventFilter(this);
ui->rating->installEventFilter(this);
+ ui->visibility->installEventFilter(this);
/* example of where code is more concise than Qt designer */
QList<QObject *> infoTabWidgets = ui->infoTab->children();
@@ -90,16 +92,9 @@ void MainTab::clearInfo()
ui->surfaceIntervalText->clear();
ui->maximumDepthText->clear();
ui->averageDepthText->clear();
- ui->visibility->setCurrentStars(0);
ui->waterTemperatureText->clear();
ui->airTemperatureText->clear();
ui->airPressureText->clear();
- ui->location->setReadOnly(true);
- ui->divemaster->setReadOnly(true);
- ui->buddy->setReadOnly(true);
- ui->suit->setReadOnly(true);
- ui->notes->setReadOnly(true);
- ui->rating->setReadOnly(true);
}
void MainTab::clearStats()
@@ -160,6 +155,7 @@ void MainTab::updateDiveInfo(int dive)
ui->suit->setReadOnly(false);
ui->notes->setReadOnly(false);
ui->rating->setReadOnly(false);
+ ui->visibility->setReadOnly(false);
/* and fill them from the dive */
ui->rating->setCurrentStars(d->rating);
ui->maximumDepthText->setText(get_depth_string(d->maxdepth, TRUE));
@@ -214,6 +210,7 @@ void MainTab::updateDiveInfo(int dive)
ui->suit->setReadOnly(true);
ui->notes->setReadOnly(true);
ui->rating->setReadOnly(true);
+ ui->visibility->setReadOnly(true);
/* clear the fields */
ui->rating->setCurrentStars(0);
ui->sacText->clear();
@@ -306,6 +303,7 @@ void MainTab::on_editAccept_clicked(bool edit)
ui->suit->setReadOnly(!edit);
ui->notes->setReadOnly(!edit);
ui->rating->setReadOnly(!edit);
+ ui->visibility->setReadOnly(!edit);
mainWindow()->dive_list()->setEnabled(!edit);
@@ -318,6 +316,7 @@ void MainTab::on_editAccept_clicked(bool edit)
notesBackup.divemaster = ui->divemaster->text();
notesBackup.location = ui->location->text();
notesBackup.rating = ui->rating->currentStars();
+ notesBackup.visibility = ui->visibility->currentStars();
} else {
ui->diveNotesMessage->animatedHide();
ui->editAccept->hide();
@@ -328,6 +327,7 @@ void MainTab::on_editAccept_clicked(bool edit)
notesBackup.notes != ui->notes->toPlainText() ||
notesBackup.divemaster != ui->divemaster->text() ||
notesBackup.location != ui->location->text() ||
+ notesBackup.visibility != ui->visibility->currentStars() ||
notesBackup.rating != ui->rating->currentStars())
mark_divelist_changed(TRUE);
}
@@ -344,6 +344,7 @@ void MainTab::on_editReset_clicked()
ui->divemaster->setText(notesBackup.divemaster);
ui->location->setText(notesBackup.location);
ui->rating->setCurrentStars(notesBackup.rating);
+ ui->visibility->setCurrentStars(notesBackup.visibility);
ui->editAccept->setChecked(false);
ui->diveNotesMessage->animatedHide();
@@ -353,6 +354,7 @@ void MainTab::on_editReset_clicked()
ui->suit->setReadOnly(true);
ui->notes->setReadOnly(true);
ui->rating->setReadOnly(true);
+ ui->visibility->setReadOnly(true);
mainWindow()->dive_list()->setEnabled(true);
ui->editAccept->hide();
@@ -407,3 +409,10 @@ void MainTab::on_rating_valueChanged(int value)
return;
currentDive->rating = value;
}
+
+void MainTab::on_visibility_valueChanged(int value)
+{
+ if (!currentDive)
+ return;
+ currentDive->visibility = value;
+}
diff --git a/qt-ui/maintab.h b/qt-ui/maintab.h
index f48cdace5..c571df086 100644
--- a/qt-ui/maintab.h
+++ b/qt-ui/maintab.h
@@ -23,6 +23,7 @@ struct NotesBackup{
QString buddy;
QString suit;
int rating;
+ int visibility;
QString divemaster;
};
@@ -54,6 +55,7 @@ public Q_SLOTS:
void on_suit_textChanged(const QString& text);
void on_notes_textChanged();
void on_rating_valueChanged(int value);
+ void on_visibility_valueChanged(int value);
private:
Ui::MainTab *ui;