diff options
Diffstat (limited to 'statisticsdialog.h')
-rw-r--r-- | statisticsdialog.h | 35 |
1 files changed, 33 insertions, 2 deletions
diff --git a/statisticsdialog.h b/statisticsdialog.h index 70f2e55..4e7107a 100644 --- a/statisticsdialog.h +++ b/statisticsdialog.h @@ -11,6 +11,11 @@ #include <QDialog> #include <QList> #include <QVariant> +#include <QSize> +#include <QFont> +#include <QTextDocument> + +class QPaintEvent; class StatisticsDialog : public QDialog { Q_OBJECT @@ -19,11 +24,37 @@ class StatisticsDialog : public QDialog { ~StatisticsDialog() {} private: - QString table(const QList<QList<QVariant> > &data, int max) const; QList<QList<QVariant> > queryData(const QString &query) const; - int max(const QList<QList<QVariant> > &data) const; QString generalStatistics() const; }; +class GraphWidget : public QWidget { + Q_OBJECT + public: + GraphWidget(const QList<QList<QVariant> > data, const QString header, QWidget *parent = 0); + GraphWidget(const QString &text, const QString header, QWidget *parent = 0); + virtual ~GraphWidget() {} + virtual QSize sizeHint() const; + + protected: + virtual void paintEvent(QPaintEvent *event); + + private: + QList<QList<QVariant> > mData; + int mDescWidth; + const int mBarHeight; + const int mMargin; + const QString mHeader; + QSize mHeaderSize; + QFont mHeaderFont; + QFont mDataFont; + int mMaxValue; + int mPercentageWidth; + int mTotal; + const QString mText; + bool mIsText; + QTextDocument mDoc; +}; + #endif |