subsurface/qt-ui/configuredivecomputerdialog.h
Joseph W. Joshua 20eb62a98a Polish up on classes
This patch polishes up on all classes added for dive computer
configuration to give a clean workflow. The classes can now
write and read data from the OSTC 3.

Signed-off-by: Joseph W. Joshua <joejoshw@gmail.com>
Signed-off-by: Thiago Macieira <thiago@macieira.org>
2014-08-13 10:48:11 -07:00

53 lines
1.2 KiB
C++

#ifndef CONFIGUREDIVECOMPUTERDIALOG_H
#define CONFIGUREDIVECOMPUTERDIALOG_H
#include <QDialog>
#include <QStringListModel>
#include "../libdivecomputer.h"
#include "configuredivecomputer.h"
namespace Ui {
class ConfigureDiveComputerDialog;
}
class ConfigureDiveComputerDialog : public QDialog
{
Q_OBJECT
public:
explicit ConfigureDiveComputerDialog(QWidget *parent = 0);
~ConfigureDiveComputerDialog();
private slots:
void on_vendor_currentIndexChanged(const QString &vendor);
void on_product_currentIndexChanged(const QString &product);
void readSettings();
void configMessage(QString msg);
void configError(QString err);
void on_cancel_clicked();
void deviceReadFinished();
void on_saveSettingsPushButton_clicked();
void deviceDetailsReceived(DeviceDetails *newDeviceDetails);
void reloadValues();
private:
Ui::ConfigureDiveComputerDialog *ui;
ConfigureDiveComputer *config;
device_data_t device_data;
void getDeviceData();
QStringList vendorList;
QHash<QString, QStringList> productList;
QHash<QString, dc_descriptor_t *> descriptorLookup;
QStringListModel *vendorModel;
QStringListModel *productModel;
void fill_computer_list();
void fill_device_list(int dc_type);
DeviceDetails *deviceDetails;
};
#endif // CONFIGUREDIVECOMPUTERDIALOG_H