#ifndef RICHRINGITEM_H_ #define RICHRINGITEM_H_ #include #include class VRichRingItem : public QObject, public QGraphicsItem { Q_OBJECT public: VRichRingItem(double xc, double yc, double r, double projX, double projY, double lineWidth, double hitSize); QRectF boundingRect() const; void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget); void AddHit(double x, double y); void SetVisibleStyle(bool isVisible); void SetLineWidth(double width){fLineWidth = width;} void SetHitSize(double size){fHitSize = size;} protected: void mousePressEvent(QGraphicsSceneMouseEvent *event); void mouseMoveEvent(QGraphicsSceneMouseEvent *event); void mouseDoubleClickEvent(QGraphicsSceneMouseEvent *event); bool sceneEvent ( QEvent * event ); //bool sceneEvent(QEvent* event); private: double fRadius; double fCenterX; double fCenterY; std::vector > fHitsAr; double fProjX; double fProjY; Qt::PenStyle fPenStyle; Qt::BrushStyle fBrushStyle; bool fVisibleStyle; double fHitSize; double fLineWidth; }; #endif