Berthold Stoeger cded7ef5fe selection: pass down selection to tab widgets
On selection change, pass down selection (including current
dive and dc) to the tab widgets. Ultimately, this should
remove access to global variables. A number of new accesses
are marked as TODO. They shall be removed in due course.

Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
2023-04-16 20:23:59 +02:00

44 lines
1.1 KiB
C++

// SPDX-License-Identifier: GPL-2.0
#ifndef TAB_DIVE_EQUIPMENT_H
#define TAB_DIVE_EQUIPMENT_H
#include "TabBase.h"
#include "ui_TabDiveEquipment.h"
#include "qt-models/completionmodels.h"
#include "desktop-widgets/divelistview.h"
namespace Ui {
class TabDiveEquipment;
};
class WeightModel;
class CylindersModel;
class TabDiveEquipment : public TabBase {
Q_OBJECT
public:
TabDiveEquipment(QWidget *parent = 0);
~TabDiveEquipment();
void updateData(const std::vector<dive *> &selection, dive *currentDive, int currentDC) override;
void clear() override;
void closeWarning();
private slots:
void divesChanged(const QVector<dive *> &dives, DiveField field);
void addCylinder_clicked();
void addWeight_clicked();
void toggleTriggeredColumn();
void editCylinderWidget(const QModelIndex &index);
void editWeightWidget(const QModelIndex &index);
void on_suit_editingFinished();
void divesEdited(int count);
private:
Ui::TabDiveEquipment ui;
SuitCompletionModel suitModel;
CylindersModel *cylindersModel;
WeightModel *weightModel;
};
#endif // TAB_DIVE_EQUIPMENT_H