subsurface/qt-ui/configuredivecomputerdialog.h
Joseph W. Joshua a9b55d7f0d Change Dive Computer Configuration dialog
Changes the layout of the ConfigureDiveComputer dialog to use a
list of supported computers on the left, with a stacked widget
showing the configurable details.

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

60 lines
1.3 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 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();
void on_backupButton_clicked();
void on_restoreBackupButton_clicked();
void on_updateFirmwareButton_clicked();
void on_DiveComputerList_currentRowChanged(int currentRow);
private:
Ui::ConfigureDiveComputerDialog *ui;
QStringList vendorList;
QHash<QString, QStringList> productList;
ConfigureDiveComputer *config;
device_data_t device_data;
void getDeviceData();
QHash<QString, dc_descriptor_t *> descriptorLookup;
void fill_device_list(int dc_type);
void fill_computer_list();
DeviceDetails *deviceDetails;
void populateDeviceDetails();
QString selected_vendor;
QString selected_product;
};
#endif // CONFIGUREDIVECOMPUTERDIALOG_H