subsurface/desktop-widgets/tab-widgets/maintab.h
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

41 lines
840 B
C++

// SPDX-License-Identifier: GPL-2.0
/*
* maintab.h
*
* header file for the main tab of Subsurface
*
*/
#ifndef MAINTAB_H
#define MAINTAB_H
#include <QTabWidget>
#include "core/dive.h"
#include "core/subsurface-qt/divelistnotifier.h"
class TabBase;
class MainTab : public QTabWidget {
Q_OBJECT
public:
MainTab(QWidget *parent = 0);
void clearTabs();
void nextInputField(QKeyEvent *event);
void stealFocus();
public
slots:
// Always called with non-null currentDive
void updateDiveInfo(const std::vector<dive *> &selection, dive *currentDive, int currentDC);
void settingsChanged();
void escDetected();
void colorsChanged();
private:
bool lastSelectedDive;
int lastTabSelectedDive;
int lastTabSelectedDiveTrip;
QList<TabBase*> extraWidgets;
void changeEvent(QEvent *ev) override;
bool isDark;
};
#endif // MAINTAB_H