From 58d6674897c90a69aea7bc370e429fbc9d73bcca Mon Sep 17 00:00:00 2001 From: Joshua Drake Date: Tue, 20 Jun 2023 10:15:47 -0500 Subject: Initial Commit --- gauge.h | 51 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 gauge.h (limited to 'gauge.h') diff --git a/gauge.h b/gauge.h new file mode 100644 index 0000000..7bb9133 --- /dev/null +++ b/gauge.h @@ -0,0 +1,51 @@ +/* + * JD 12/9/2022 +*/ +#ifndef GAUGE_H +#define GAUGE_H + +#include +#include +#include +#include +#include +#include +#include + +#define DEFUALT_IMAGE_ANGLE 90 + +class Gauge : public QWidget +{ + Q_OBJECT +public: + explicit Gauge(QWidget *parent = nullptr); + void paintEvent(QPaintEvent *); + +signals: + +public slots: + void setNeedleImage(QPixmap p) {m_needle = p; update();} + void setNeedleImage(QString path); + //void obtainLength(); + void setOrigin(int x,int y); + void setOrigin(QPoint o); + void setHorizontalOffset(int o) {m_needle_horizontal_offset = o; update();} + void setStartAngle(qreal a); + void setEndAngle(qreal a); + void setGaugePercentage(qreal p) {m_gauge_percentage = p; update();} + + +protected: + +private: + //double m_needle_length; + double m_gauge_percentage; + int m_needle_horizontal_offset; //Use if needle isn't centered within the image. + QPoint m_needle_origin; + QPoint m_draw_point; + QPixmap m_needle; + qreal m_start_angle; + qreal m_end_angle; +}; + +#endif // GAUGE_H -- cgit v1.2.3