subsurface/qt-ui/maintab.h
Tomaz Canabrava 5666f6573e Code Cleanup: Merged the three TableViews shared code
Merged the shared code for the three table views into
one code, this way less code is needed if we need to
construct another tableview in the future.
I still need to clean some of the models too.

Signed-off-by: Tomaz Canabrava <tcanabrava@kde.org>
2013-09-02 16:21:08 -03:00

78 lines
1.5 KiB
C++

/*
* maintab.h
*
* header file for the main tab of Subsurface
*
*/
#ifndef MAINTAB_H
#define MAINTAB_H
#include <QTabWidget>
#include <QDialog>
#include "models.h"
class QCompleter;
namespace Ui
{
class MainTab;
}
struct NotesBackup{
QString location;
QString notes;
QString buddy;
QString suit;
int rating;
int visibility;
QString divemaster;
};
struct Completers{
QCompleter *location;
QCompleter *divemaster;
QCompleter *buddy;
QCompleter *suit;
};
class MainTab : public QTabWidget
{
Q_OBJECT
public:
MainTab(QWidget *parent);
void clearStats();
void clearInfo();
void clearEquipment();
void reload();
bool eventFilter(QObject* , QEvent*);
void initialUiSetup();
void equipmentPlusUpdate();
public slots:
void addCylinder_clicked();
void addWeight_clicked();
void updateDiveInfo(int dive);
void on_editAccept_clicked(bool edit);
void on_editReset_clicked();
void on_location_textChanged(const QString& text);
void on_divemaster_textChanged(const QString& text);
void on_buddy_textChanged(const QString& text);
void on_suit_textChanged(const QString& text);
void on_notes_textChanged();
void on_rating_valueChanged(int value);
void on_visibility_valueChanged(int value);
void editCylinderWidget(const QModelIndex& index);
void editWeigthWidget(const QModelIndex& index);
private:
Ui::MainTab *ui;
WeightModel *weightModel;
CylindersModel *cylindersModel;
NotesBackup notesBackup;
struct dive* currentDive;
enum { NONE, DIVE, TRIP } editMode;
Completers completers;
void enableEdition();
};
#endif