mirror of
				https://github.com/subsurface/subsurface.git
				synced 2025-02-19 22:16:15 +00:00 
			
		
		
		
	Signed-off-by: Tomaz Canabrava <tomaz.canabrava@intel.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
		
			
				
	
	
		
			176 lines
		
	
	
	
		
			3.7 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			176 lines
		
	
	
	
		
			3.7 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
| #ifndef SIMPLEWIDGETS_H
 | |
| #define SIMPLEWIDGETS_H
 | |
| 
 | |
| class MinMaxAvgWidgetPrivate;
 | |
| class QAbstractButton;
 | |
| 
 | |
| #include <QWidget>
 | |
| #include <QDialog>
 | |
| #include <stdint.h>
 | |
| 
 | |
| #include "ui_renumber.h"
 | |
| #include "ui_shifttimes.h"
 | |
| #include "ui_shiftimagetimes.h"
 | |
| #include "ui_divecomponentselection.h"
 | |
| #include "ui_listfilter.h"
 | |
| #include "exif.h"
 | |
| 
 | |
| class MinMaxAvgWidget : public QWidget {
 | |
| 	Q_OBJECT
 | |
| 	Q_PROPERTY(double minimum READ minimum WRITE setMinimum)
 | |
| 	Q_PROPERTY(double maximum READ maximum WRITE setMaximum)
 | |
| 	Q_PROPERTY(double average READ average WRITE setAverage)
 | |
| public:
 | |
| 	MinMaxAvgWidget(QWidget *parent);
 | |
| 	~MinMaxAvgWidget();
 | |
| 	double minimum() const;
 | |
| 	double maximum() const;
 | |
| 	double average() const;
 | |
| 	void setMinimum(double minimum);
 | |
| 	void setMaximum(double maximum);
 | |
| 	void setAverage(double average);
 | |
| 	void setMinimum(const QString &minimum);
 | |
| 	void setMaximum(const QString &maximum);
 | |
| 	void setAverage(const QString &average);
 | |
| 	void overrideMinToolTipText(const QString &newTip);
 | |
| 	void overrideMaxToolTipText(const QString &newTip);
 | |
| 	void clear();
 | |
| 
 | |
| private:
 | |
| 	QScopedPointer<MinMaxAvgWidgetPrivate> d;
 | |
| };
 | |
| 
 | |
| class RenumberDialog : public QDialog {
 | |
| 	Q_OBJECT
 | |
| public:
 | |
| 	static RenumberDialog *instance();
 | |
| 	void renumberOnlySelected(bool selected = true);
 | |
| private
 | |
| slots:
 | |
| 	void buttonClicked(QAbstractButton *button);
 | |
| 
 | |
| private:
 | |
| 	explicit RenumberDialog(QWidget *parent);
 | |
| 	Ui::RenumberDialog ui;
 | |
| 	bool selectedOnly;
 | |
| };
 | |
| 
 | |
| class ShiftTimesDialog : public QDialog {
 | |
| 	Q_OBJECT
 | |
| public:
 | |
| 	static ShiftTimesDialog *instance();
 | |
| 	void showEvent(QShowEvent *event);
 | |
| private
 | |
| slots:
 | |
| 	void buttonClicked(QAbstractButton *button);
 | |
| 	void changeTime();
 | |
| 
 | |
| private:
 | |
| 	explicit ShiftTimesDialog(QWidget *parent);
 | |
| 	int64_t when;
 | |
| 	Ui::ShiftTimesDialog ui;
 | |
| };
 | |
| 
 | |
| class ShiftImageTimesDialog : public QDialog {
 | |
| 	Q_OBJECT
 | |
| public:
 | |
| 	explicit ShiftImageTimesDialog(QWidget *parent);
 | |
| 	time_t amount() const;
 | |
| 	void setOffset(time_t offset);
 | |
| private
 | |
| slots:
 | |
| 	void buttonClicked(QAbstractButton *button);
 | |
| 	void syncCameraClicked();
 | |
| 	void dcDateTimeChanged(const QDateTime &);
 | |
| 
 | |
| private:
 | |
| 	Ui::ShiftImageTimesDialog ui;
 | |
| 	time_t m_amount;
 | |
| 	time_t dcImageEpoch;
 | |
| };
 | |
| 
 | |
| class QCalendarWidget;
 | |
| 
 | |
| class DateWidget : public QWidget {
 | |
| 	Q_OBJECT
 | |
| public:
 | |
| 	DateWidget(QWidget *parent = 0);
 | |
| 	QDate date() const;
 | |
| public
 | |
| slots:
 | |
| 	void setDate(const QDate &date);
 | |
| 
 | |
| protected:
 | |
| 	void paintEvent(QPaintEvent *event);
 | |
| 	void mousePressEvent(QMouseEvent *event);
 | |
| 	void focusInEvent(QFocusEvent *);
 | |
| 	void focusOutEvent(QFocusEvent *);
 | |
| 	void keyPressEvent(QKeyEvent *);
 | |
| 	void changeEvent(QEvent *);
 | |
| 	bool eventFilter(QObject *, QEvent *);
 | |
| signals:
 | |
| 	void dateChanged(const QDate &date);
 | |
| 
 | |
| private:
 | |
| 	QDate mDate;
 | |
| 	QCalendarWidget *calendarWidget;
 | |
| };
 | |
| 
 | |
| class DiveComponentSelection : public QDialog {
 | |
| 	Q_OBJECT
 | |
| public:
 | |
| 	explicit DiveComponentSelection(QWidget *parent, struct dive *target, struct dive_components *_what);
 | |
| private
 | |
| slots:
 | |
| 	void buttonClicked(QAbstractButton *button);
 | |
| 
 | |
| private:
 | |
| 	Ui::DiveComponentSelectionDialog ui;
 | |
| 	struct dive *targetDive;
 | |
| 	struct dive_components *what;
 | |
| };
 | |
| 
 | |
| class MultiFilter : public QScrollArea {
 | |
| 	Q_OBJECT
 | |
| public:
 | |
| 	MultiFilter(QWidget *parent);
 | |
| };
 | |
| 
 | |
| class TagFilter : public QWidget {
 | |
| 	Q_OBJECT
 | |
| public:
 | |
| 	TagFilter(QWidget *parent = 0);
 | |
| 	virtual void showEvent(QShowEvent *);
 | |
| 	virtual void hideEvent(QHideEvent *);
 | |
| 
 | |
| private:
 | |
| 	Ui::FilterWidget ui;
 | |
| 	friend class MultiFilter;
 | |
| };
 | |
| 
 | |
| class BuddyFilter : public QWidget {
 | |
| 	Q_OBJECT
 | |
| public:
 | |
| 	BuddyFilter(QWidget *parent = 0);
 | |
| 	virtual void showEvent(QShowEvent *);
 | |
| 	virtual void hideEvent(QHideEvent *);
 | |
| 
 | |
| private:
 | |
| 	Ui::FilterWidget ui;
 | |
| };
 | |
| 
 | |
| class LocationFilter : public QWidget {
 | |
| 	Q_OBJECT
 | |
| public:
 | |
| 	LocationFilter(QWidget *parent = 0);
 | |
| 	virtual void showEvent(QShowEvent *);
 | |
| 	virtual void hideEvent(QHideEvent *);
 | |
| 
 | |
| private:
 | |
| 	Ui::FilterWidget ui;
 | |
| };
 | |
| 
 | |
| bool isGnome3Session();
 | |
| QImage grayImage(const QImage &coloredImg);
 | |
| 
 | |
| #endif // SIMPLEWIDGETS_H
 |