1 #ifndef QSVGDIAL_H 2 #define QSVGDIAL_H 3 4 #include <QWidget> 5 #include <QDial> 6 #include <QtSvg/QSvgRenderer> 7 #include <QtSvg/QGraphicsSvgItem> 8 #include <QGraphicsView> 9 #include <QGraphicsScene> 10 11 class qSVGDial : public QDial 12 { 13 Q_OBJECT 14 15 public: 16 explicit qSVGDial(QWidget *parent = 0); 17 explicit qSVGDial(QString knobFile = "defaultKnob.svg", QString needleFile = "defaultNeedle.svg", QWidget *parent = 0); 18 ~qSVGDial(); 19 20 private slots: 21 void rotateNeedle(int p); 22 23 private: 24 void resizeEvent(QResizeEvent *re); 25 void paintEvent(QPaintEvent *pe); 26 float degPerPos; 27 float middle; 28 float mysize; 29 QGraphicsView view; 30 QGraphicsScene scene; 31 QGraphicsSvgItem *knob; 32 QGraphicsSvgItem *needle; 33 QSize k,n; 34 35 }; 36 37 #endif // QSVGDIAL_H 38