subsurface/qt-ui/locationinformation.h
Dirk Hohndel d4b5854f82 Location management: reflect changes to the coordinates on the map
This is a bit aggressive as it changes the globe with every single
character that's entered, but it's better than what we had before.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-05-22 12:29:39 -07:00

51 lines
1.3 KiB
C++

#ifndef LOCATIONINFORMATION_H
#define LOCATIONINFORMATION_H
#include "ui_locationInformation.h"
#include <stdint.h>
#include <QAbstractListModel>
class LocationInformationModel : public QAbstractListModel {
Q_OBJECT
public:
LocationInformationModel(QObject *obj = 0);
int rowCount(const QModelIndex &parent = QModelIndex()) const;
QVariant data(const QModelIndex &index = QModelIndex(), int role = Qt::DisplayRole) const;
void update();
private:
int internalRowCount;
};
class LocationInformationWidget : public QGroupBox {
Q_OBJECT
public:
LocationInformationWidget(QWidget *parent = 0);
protected:
void showEvent(QShowEvent *);
\
public slots:
void acceptChanges();
void rejectChanges();
void setLocationId(uint32_t uuid);
void updateGpsCoordinates(void);
void markChangedWidget(QWidget *w);
void enableEdition();
void resetState();
void resetPallete();
void setCurrentDiveSite(int dive_nr);
void on_diveSiteCoordinates_textChanged(const QString& text);
void on_diveSiteDescription_textChanged(const QString& text);
void on_diveSiteName_textChanged(const QString& text);
void on_diveSiteNotes_textChanged();
signals:
void informationManagementEnded();
void coordinatesChanged();
private:
struct dive_site *currentDs;
Ui::LocationInformation ui;
bool modified;
QAction *closeAction, *acceptAction, *rejectAction;
};
#endif