summaryrefslogtreecommitdiffstats
path: root/statisticsdialog.h
diff options
context:
space:
mode:
Diffstat (limited to 'statisticsdialog.h')
-rw-r--r--statisticsdialog.h35
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