summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--desktop-widgets/tab-widgets/TabDiveInformation.cpp20
-rw-r--r--desktop-widgets/tab-widgets/TabDiveInformation.h1
-rw-r--r--desktop-widgets/tab-widgets/TabDiveInformation.ui196
3 files changed, 217 insertions, 0 deletions
diff --git a/desktop-widgets/tab-widgets/TabDiveInformation.cpp b/desktop-widgets/tab-widgets/TabDiveInformation.cpp
index 34aa159e6..a00913086 100644
--- a/desktop-widgets/tab-widgets/TabDiveInformation.cpp
+++ b/desktop-widgets/tab-widgets/TabDiveInformation.cpp
@@ -36,6 +36,12 @@ TabDiveInformation::TabDiveInformation(QWidget *parent) : TabBase(parent), ui(ne
ui->gasHeadingLabel->setStyleSheet(CSS_SET_HEADING_BLUE);
ui->environmentHeadingLabel->setStyleSheet(CSS_SET_HEADING_BLUE);
ui->groupBox_visibility->setStyleSheet(CSSSetSmallLabel);
+ ui->groupBox_current->setStyleSheet(CSSSetSmallLabel);
+ ui->groupBox_wavesize->setStyleSheet(CSSSetSmallLabel);
+ ui->groupBox_surge->setStyleSheet(CSSSetSmallLabel);
+ ui->groupBox_chill->setStyleSheet(CSSSetSmallLabel);
+ if (!prefs.extraEnvironmentalDefault) // if extraEnvironmental preference is turned off
+ showCurrentWidget(false, 0); // Show current star widget at lefthand side
QAction *action = new QAction(tr("OK"), this);
connect(action, &QAction::triggered, this, &TabDiveInformation::closeWarning);
ui->multiDiveWarningMessage->addAction(action);
@@ -160,6 +166,16 @@ void TabDiveInformation::updateSalinity()
}
}
+void TabDiveInformation::showCurrentWidget(bool show, int position)
+{
+ ui->groupBox_wavesize->setVisible(show);
+ ui->groupBox_surge->setVisible(show);
+ ui->groupBox_chill->setVisible(show);
+ int layoutPosition = ui->diveInfoScrollAreaLayout->indexOf(ui->groupBox_current);
+ ui->diveInfoScrollAreaLayout->takeAt(layoutPosition);
+ ui->diveInfoScrollAreaLayout->addWidget(ui->groupBox_current, 6, position, 1, 1);
+}
+
void TabDiveInformation::updateData()
{
if (!current_dive) {
@@ -176,6 +192,10 @@ void TabDiveInformation::updateData()
updateMode(current_dive);
updateSalinity();
ui->visibility->setCurrentStars(current_dive->visibility);
+ if (prefs.extraEnvironmentalDefault)
+ showCurrentWidget(true, 2); // Show current star widget at 3rd position
+ else
+ showCurrentWidget(false, 0); // Show current star widget at lefthand side
}
// This function gets called if a field gets updated by an undo command.
diff --git a/desktop-widgets/tab-widgets/TabDiveInformation.h b/desktop-widgets/tab-widgets/TabDiveInformation.h
index 96b2896e9..51ec2381a 100644
--- a/desktop-widgets/tab-widgets/TabDiveInformation.h
+++ b/desktop-widgets/tab-widgets/TabDiveInformation.h
@@ -34,6 +34,7 @@ private:
void updateMode(struct dive *d);
void divesEdited(int);
void closeWarning();
+ void showCurrentWidget(bool show, int position);
};
#endif
diff --git a/desktop-widgets/tab-widgets/TabDiveInformation.ui b/desktop-widgets/tab-widgets/TabDiveInformation.ui
index 82f78ee4a..5a81d7395 100644
--- a/desktop-widgets/tab-widgets/TabDiveInformation.ui
+++ b/desktop-widgets/tab-widgets/TabDiveInformation.ui
@@ -499,6 +499,55 @@
</layout>
</item>
+ <item row="6" column="0">
+ <widget class="QGroupBox" name="groupBox_wavesize">
+ <property name="title">
+ <string>Surface waves</string>
+ </property>
+ <property name="alignment">
+ <set>Qt::AlignHCenter</set>
+ </property>
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Ignored" vsizetype="Preferred">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <layout class="QGridLayout" name="surfaceWavesLayout">
+ <property name="verticalSpacing">
+ <number>0</number>
+ </property>
+ <item row="0" column="0" colspan="2" alignment="Qt::AlignHCenter">
+ <widget class="StarWidget" name="wavesize" native="true">
+ <property name="focusPolicy">
+ <enum>Qt::StrongFocus</enum>
+ </property>
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Maximum" vsizetype="Preferred">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="0" alignment="Qt::AlignLeft">
+ <widget class="QLabel" name="waveLabel1">
+ <property name="text">
+ <string>Large</string>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="1" alignment="Qt::AlignRight">
+ <widget class="QLabel" name="waveLabel2">
+ <property name="text">
+ <string>Small</string>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ </item>
+
<item row="6" column="1" alignment="Qt::AlignVCenter">
<widget class="QGroupBox" name="groupBox_visibility">
<property name="title">
@@ -548,6 +597,153 @@
</widget>
</item>
+ <item row="6" column="2" alignment="Qt::AlignVCenter">
+ <widget class="QGroupBox" name="groupBox_current">
+ <property name="title">
+ <string>Current</string>
+ </property>
+ <property name="alignment">
+ <set>Qt::AlignHCenter</set>
+ </property>
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Preferred" vsizetype="Maximum">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <layout class="QGridLayout" name="currentLayout">
+ <property name="verticalSpacing">
+ <number>0</number>
+ </property>
+ <item row="0" column="0" colspan="2" alignment="Qt::AlignHCenter">
+ <widget class="StarWidget" name="current" native="true">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Maximum" vsizetype="Preferred">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="focusPolicy">
+ <enum>Qt::StrongFocus</enum>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="0" alignment="Qt::AlignLeft">
+ <widget class="QLabel" name="curLabel1">
+ <property name="text">
+ <string>Strong</string>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="1" alignment="Qt::AlignRight">
+ <widget class="QLabel" name="curLabel2">
+ <property name="text">
+ <string>Weak</string>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ </item>
+
+ <item row="6" column="3" alignment="Qt::AlignVCenter">
+ <widget class="QGroupBox" name="groupBox_surge">
+ <property name="title">
+ <string>Surge</string>
+ </property>
+ <property name="alignment">
+ <set>Qt::AlignHCenter</set>
+ </property>
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Preferred" vsizetype="Maximum">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <layout class="QGridLayout" name="surgeLayout">
+ <property name="verticalSpacing">
+ <number>0</number>
+ </property>
+ <item row="0" column="0" colspan="2" alignment="Qt::AlignHCenter">
+ <widget class="StarWidget" name="surge" native="true">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Maximum" vsizetype="Preferred">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="focusPolicy">
+ <enum>Qt::StrongFocus</enum>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="0" alignment="Qt::AlignLeft">
+ <widget class="QLabel" name="surgeLabel1">
+ <property name="text">
+ <string>Strong</string>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="1" alignment="Qt::AlignRight">
+ <widget class="QLabel" name="surgeLabel2">
+ <property name="text">
+ <string>Weak</string>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ </item>
+
+ <item row="6" column="4" alignment="Qt::AlignVCenter">
+ <widget class="QGroupBox" name="groupBox_chill">
+ <property name="title">
+ <string>Chill</string>
+ </property>
+ <property name="alignment">
+ <set>Qt::AlignHCenter</set>
+ </property>
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Preferred" vsizetype="Maximum">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <layout class="QGridLayout" name="cLayout">
+ <property name="verticalSpacing">
+ <number>0</number>
+ </property>
+ <item row="0" column="0" colspan="2" alignment="Qt::AlignHCenter">
+ <widget class="StarWidget" name="chill" native="true">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Maximum" vsizetype="Preferred">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="focusPolicy">
+ <enum>Qt::StrongFocus</enum>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="0" alignment="Qt::AlignLeft">
+ <widget class="QLabel" name="chillLabel1">
+ <property name="text">
+ <string>Freezing</string>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="1" alignment="Qt::AlignRight">
+ <widget class="QLabel" name="chillLabel2">
+ <property name="text">
+ <string>Comfy</string>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ </item>
+
<item row="7" column="0">
<spacer>
<property name="orientation">