diff options
author | Tomaz Canabrava <tcanabrava@kde.org> | 2017-04-04 19:21:30 +0200 |
---|---|---|
committer | Dirk Hohndel <dirk@hohndel.org> | 2017-04-06 18:23:25 -0700 |
commit | 1fc4fba69fed8607d9b961086a88bcf362a482a5 (patch) | |
tree | d063efda90ddcd0324f648ab4be48d2282f5c1ff /desktop-widgets/tab-widgets/TabDiveExtraInfo.cpp | |
parent | 8a71196e4e58dfb3534fda5f00856a0223726689 (diff) | |
download | subsurface-1fc4fba69fed8607d9b961086a88bcf362a482a5.tar.gz |
Break down MainTab into smaller classes
Maintab is one of our most complex classes, and it's
something I'm not actually proud of. But it currently
works and the idea of splitting it was in my head for
quite a while.
This is the third or fourth tentative of splitting it,
and this time I let the most complex part of it untouched,
the Notes and Equipment tab are way too complex to untangle
right now on my limited time.
A new class 'TabBase' should be used for any new tab that
we may create, and added on the MainTab (see the new lines
on the MainTab constructor).
Also, Extra Info, Information, Photos and Statistics where
ported to this new way helping reduce the number of
lines and functions on the MainTab quite a bit.
Overall this is a step in the right direction for the future.
Signed-off-by: Tomaz Canabrava <tcanabrava@kde.org>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
Diffstat (limited to 'desktop-widgets/tab-widgets/TabDiveExtraInfo.cpp')
-rw-r--r-- | desktop-widgets/tab-widgets/TabDiveExtraInfo.cpp | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/desktop-widgets/tab-widgets/TabDiveExtraInfo.cpp b/desktop-widgets/tab-widgets/TabDiveExtraInfo.cpp new file mode 100644 index 000000000..0560da7b3 --- /dev/null +++ b/desktop-widgets/tab-widgets/TabDiveExtraInfo.cpp @@ -0,0 +1,29 @@ +#include "TabDiveExtraInfo.h" +#include "ui_TabDiveExtraInfo.h" + +#include <qt-models/divecomputerextradatamodel.h> + +TabDiveExtraInfo::TabDiveExtraInfo(QWidget *parent) : + TabBase(parent), + ui(new Ui::TabDiveExtraInfo()), + extraDataModel(new ExtraDataModel()) +{ + ui->setupUi(this); + ui->extraData->setModel(extraDataModel); +} + +TabDiveExtraInfo::~TabDiveExtraInfo() +{ + delete ui; +} + +void TabDiveExtraInfo::updateData() +{ + extraDataModel->updateDive(); +} + +void TabDiveExtraInfo::clear() +{ + extraDataModel->updateDive(); +} + |