diff --git a/src/legendmarker.cpp b/src/legendmarker.cpp index f1fb086..c7fc874 100644 --- a/src/legendmarker.cpp +++ b/src/legendmarker.cpp @@ -82,31 +82,15 @@ void LegendMarker::mousePressEvent(QGraphicsSceneMouseEvent *event) switch (mType) { case LegendMarkerTypeSeries: { - - if (event->button() == Qt::LeftButton) { - emit clicked(mSeries); - } else if (event->button() == Qt::RightButton) { - emit rightClicked(mSeries); - } + emit clicked(mSeries,event->button()); break; } case LegendMarkerTypeBarset: { - - if (event->button() == Qt::LeftButton) { - emit clicked(mBarset); - } else if (event->button() == Qt::RightButton) { - emit rightClicked(mBarset); - } + emit clicked(mBarset,event->button()); break; } - case LegendMarkerTypePieslice: { - - if (event->button() == Qt::LeftButton) { - emit clicked(mPieslice); - } else if (event->button() == Qt::RightButton) { - emit rightClicked(mPieslice); - } + emit clicked(mPieslice,event->button()); break; } default: { diff --git a/src/legendmarker_p.h b/src/legendmarker_p.h index 79ebd24..906e24c 100644 --- a/src/legendmarker_p.h +++ b/src/legendmarker_p.h @@ -43,12 +43,9 @@ public: void mousePressEvent(QGraphicsSceneMouseEvent *event); Q_SIGNALS: - void clicked(QSeries* series); - void rightClicked(QSeries* series); - void clicked(QBarSet* barset); - void rightClicked(QBarSet* barset); - void clicked(QPieSlice* pieslice); - void rightClicked(QPieSlice* pieslice); + void clicked(QSeries* series, Qt::MouseButton button); + void clicked(QBarSet* barset, Qt::MouseButton button); + void clicked(QPieSlice* pieslice, Qt::MouseButton button); private: QRectF mBoundingRect; diff --git a/src/qlegend.cpp b/src/qlegend.cpp index 32e631e..ca8e71d 100644 --- a/src/qlegend.cpp +++ b/src/qlegend.cpp @@ -141,8 +141,7 @@ void QLegend::createMarker(QXYSeries* series) LegendMarker* marker = new LegendMarker(series,this); marker->setName(series->name()); marker->setBrush(series->brush()); - connect(marker,SIGNAL(clicked(QSeries*)),this,SIGNAL(markerClicked(QSeries*))); - connect(marker,SIGNAL(rightClicked(QSeries*)),this,SIGNAL(markerRightClicked(QSeries*))); + connect(marker,SIGNAL(clicked(QSeries*,Qt::MouseButton)),this,SIGNAL(clicked(QSeries*,Qt::MouseButton))); mMarkers.append(marker); childItems().append(marker); } @@ -153,8 +152,7 @@ void QLegend::createMarkers(QBarSeries *series) LegendMarker* marker = new LegendMarker(series,this); marker->setName(s->name()); marker->setBrush(s->brush()); - connect(marker,SIGNAL(clicked(QBarSet*)),this,SIGNAL(markerClicked(QBarSet*))); - connect(marker,SIGNAL(rightClicked(QBarSet*)),this,SIGNAL(markerRightClicked(QBarSet*))); + connect(marker,SIGNAL(clicked(QBarSet*,Qt::MouseButton)),this,SIGNAL(clicked(QBarSet*,Qt::MouseButton))); mMarkers.append(marker); childItems().append(marker); } @@ -166,8 +164,7 @@ void QLegend::createMarkers(QPieSeries *series) LegendMarker* marker = new LegendMarker(series,this); marker->setName(s->label()); marker->setBrush(s->sliceBrush()); - connect(marker,SIGNAL(clicked(QPieSlice*)),this,SIGNAL(markerClicked(QPieSlice*))); - connect(marker,SIGNAL(rightClicked(QPieSlice*)),this,SIGNAL(markerRightClicked(QPieSlice*))); + connect(marker,SIGNAL(clicked(QPieSlice*,Qt::MouseButton)),this,SIGNAL(clicked(QPieSlice*,Qt::MouseButton))); mMarkers.append(marker); childItems().append(marker); } diff --git a/src/qlegend.h b/src/qlegend.h index af39c53..fec29ee 100644 --- a/src/qlegend.h +++ b/src/qlegend.h @@ -30,12 +30,9 @@ public: signals: // for interactions. - void clicked(QSeries* series); - void rightClicked(QSeries* series); - void clicked(QBarSet* barset); - void rightClicked(QBarSet* series); - void clicked(QPieSlice* slice); - void rightClicked(QPieSlice* series); + void clicked(QSeries* series, Qt::MouseButton button); + void clicked(QBarSet* barset, Qt::MouseButton button); + void clicked(QPieSlice* slice, Qt::MouseButton button); public slots: void handleSeriesAdded(QSeries* series,Domain* domain);