| 
									
										
										
										
											2015-05-17 16:13:41 -03:00
										 |  |  | #ifndef LOCATIONINFORMATION_H
 | 
					
						
							|  |  |  | #define LOCATIONINFORMATION_H
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #include "ui_locationInformation.h"
 | 
					
						
							|  |  |  | #include <stdint.h>
 | 
					
						
							| 
									
										
										
										
											2015-05-17 16:33:23 -03:00
										 |  |  | #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; | 
					
						
							|  |  |  | }; | 
					
						
							| 
									
										
										
										
											2015-05-17 16:13:41 -03:00
										 |  |  | 
 | 
					
						
							|  |  |  | class LocationInformationWidget : public QGroupBox { | 
					
						
							|  |  |  | Q_OBJECT | 
					
						
							|  |  |  | public: | 
					
						
							|  |  |  | 	LocationInformationWidget(QWidget *parent = 0); | 
					
						
							| 
									
										
										
										
											2015-05-17 17:14:23 -03:00
										 |  |  | protected: | 
					
						
							|  |  |  | 	void showEvent(QShowEvent *); | 
					
						
							|  |  |  | \ | 
					
						
							| 
									
										
										
										
											2015-05-17 16:13:41 -03:00
										 |  |  | public slots: | 
					
						
							|  |  |  | 	void acceptChanges(); | 
					
						
							|  |  |  | 	void rejectChanges(); | 
					
						
							|  |  |  | 	void setLocationId(uint32_t uuid); | 
					
						
							|  |  |  | 	void updateGpsCoordinates(void); | 
					
						
							|  |  |  | 	void markChangedWidget(QWidget *w); | 
					
						
							|  |  |  | 	void enableEdition(); | 
					
						
							|  |  |  | 	void resetState(); | 
					
						
							|  |  |  | 	void resetPallete(); | 
					
						
							| 
									
										
										
										
											2015-05-17 17:14:23 -03:00
										 |  |  | 	void setCurrentDiveSite(int dive_nr); | 
					
						
							| 
									
										
										
										
											2015-05-17 16:13:41 -03:00
										 |  |  | 	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(); | 
					
						
							| 
									
										
										
										
											2015-05-22 12:15:53 -07:00
										 |  |  | 	void coordinatesChanged(); | 
					
						
							| 
									
										
										
										
											2015-05-17 16:13:41 -03:00
										 |  |  | 
 | 
					
						
							|  |  |  | private: | 
					
						
							|  |  |  | 	struct dive_site *currentDs; | 
					
						
							|  |  |  | 	Ui::LocationInformation ui; | 
					
						
							|  |  |  | 	bool modified; | 
					
						
							|  |  |  | 	QAction *closeAction, *acceptAction, *rejectAction; | 
					
						
							|  |  |  | }; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #endif
 |