From df57b657fdcc1ac4ff9cf7bdb81e0c7a575f7b3b Mon Sep 17 00:00:00 2001 From: Tomaz Canabrava Date: Wed, 22 May 2013 09:17:18 -0300 Subject: [PATCH] Rework on the Equipment tab to make it look more Modern. Note that this is a WIP and it does break functionality - ie, not possible to add Equipments, but this will be fixed in the next commit. Removed add / edit / remove buttons, only a single '+' icon appears on the widget now. the edit / delete will be done in place. Signed-off-by: Tomaz Canabrava --- plus.png | Bin 0 -> 7356 bytes qt-ui/maintab.cpp | 30 ++++++++ qt-ui/maintab.h | 4 ++ qt-ui/maintab.ui | 180 +++++++++------------------------------------- subsurface.qrc | 1 + 5 files changed, 69 insertions(+), 146 deletions(-) create mode 100644 plus.png diff --git a/plus.png b/plus.png new file mode 100644 index 0000000000000000000000000000000000000000..1008f31cebe49df25c150af5b34752277fa180b9 GIT binary patch literal 7356 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 d6>jZT1!NwZK<`setAlignment(Qt::AlignHCenter); } + + /*Thid couldn't be done on the ui file because element + is floating, instead of being fixed on the layout. */ + QIcon plusIcon(":plus"); + addCylinder = new QPushButton(plusIcon, QString(), ui->cylindersGroup); + addCylinder->setFlat(true); + addCylinder->setToolTip(tr("Add Cylinder")); + addWeight = new QPushButton(plusIcon, QString(), ui->weightGroup); + addWeight->setFlat(true); + addWeight->setToolTip(tr("Add Weight System")); } +// We need to manually position the 'plus' on cylinder and weight. +void MainTab::resizeEvent(QResizeEvent* event) +{ + if (ui->cylindersGroup->isVisible()) + addCylinder->setGeometry( ui->cylindersGroup->contentsRect().width() - 30, 2, 24,24); + + if (ui->weightGroup->isVisible()) + addWeight->setGeometry( ui->weightGroup->contentsRect().width() - 30, 2, 24,24); + + QTabWidget::resizeEvent(event); +} + +void MainTab::showEvent(QShowEvent* event) +{ + QTabWidget::showEvent(event); + addCylinder->setGeometry( ui->cylindersGroup->contentsRect().width() - 30, 2, 24,24); + addWeight->setGeometry( ui->weightGroup->contentsRect().width() - 30, 2, 24,24); +} + + bool MainTab::eventFilter(QObject* object, QEvent* event) { if (event->type() == QEvent::FocusIn) { diff --git a/qt-ui/maintab.h b/qt-ui/maintab.h index c571df086..2bdb63fbc 100644 --- a/qt-ui/maintab.h +++ b/qt-ui/maintab.h @@ -38,6 +38,8 @@ public: void reload(); bool eventFilter(QObject* , QEvent*); + virtual void resizeEvent(QResizeEvent* ); + virtual void showEvent(QShowEvent* ); public Q_SLOTS: void on_addCylinder_clicked(); @@ -63,6 +65,8 @@ private: CylindersModel *cylindersModel; NotesBackup notesBackup; struct dive* currentDive; + QPushButton *addCylinder; + QPushButton *addWeight; }; #endif diff --git a/qt-ui/maintab.ui b/qt-ui/maintab.ui index 0a31897a4..0784980eb 100644 --- a/qt-ui/maintab.ui +++ b/qt-ui/maintab.ui @@ -14,7 +14,7 @@ TabWidget - 0 + 1 @@ -78,22 +78,22 @@ - - - - - Rating - - - - - - - Visibility - - - - + + + + + Rating + + + + + + + Visibility + + + + @@ -110,14 +110,14 @@ - - - - - - - - + + + + + + + + @@ -151,55 +151,17 @@ Qt::Vertical - + Cylinders - + - - - - - - Edit - - - - - - - Add - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - Delete - - - - - - + Weight @@ -207,44 +169,6 @@ - - - - - - Edit - - - - - - - Add - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - Delete - - - - - @@ -271,24 +195,15 @@ - - 10 - - - 10 - - - 10 - - - 10 - 10 15 + + 10 + @@ -386,16 +301,7 @@ - - 10 - - - 10 - - - 10 - - + 10 @@ -598,16 +504,7 @@ - - 10 - - - 10 - - - 10 - - + 10 @@ -750,16 +647,7 @@ - - 10 - - - 10 - - - 10 - - + 10 diff --git a/subsurface.qrc b/subsurface.qrc index e1939f28e..6ec97071f 100644 --- a/subsurface.qrc +++ b/subsurface.qrc @@ -2,5 +2,6 @@ star.svg subsurface-icon.png + plus.png