#ifndef ANGLESCUSTOMPLOT_H #define ANGLESCUSTOMPLOT_H #include #include namespace Ui { class AnglesCustomPlot; } class AnglesCustomPlot : public QCustomPlot { Q_OBJECT public: explicit AnglesCustomPlot(const QVector& data, const QString& xLabel, int nbBins, QWidget *parent = nullptr); ~AnglesCustomPlot(); bool computeHistogram(const QVector& data); void createQCPBars(const QString &xLabel); void rescale(); QSharedPointer dataContainer(){return m_bars->data();} void emitCloseTab(){emit closeTab();} void mouseDoubleClickEvent(QMouseEvent* event) override; void mousePressEvent(QMouseEvent* event) override; signals: void closeTab(); private: Ui::AnglesCustomPlot *ui; QVector m_axis; QVector m_histogram; QString m_label; QCPBars* m_bars; int m_nbBins; }; #endif // ANGLESCUSTOMPLOT_H