##// END OF EJS Templates
Fixes customchart, barcategoryaxisy
Michal Klocek -
r1655:f1c3fb22a206
parent child
Show More
@@ -63,8 +63,8 int main(int argc, char *argv[])
63 //![2]
63 //![2]
64
64
65 //![3]
65 //![3]
66 QBarCategoriesAxis* axisX = new QBarCategoriesAxis;
66 QBarCategoriesAxis* axisX = new QBarCategoriesAxis();
67 QBarCategoriesAxis* axisY = new QBarCategoriesAxis;
67 QBarCategoriesAxis* axisY = new QBarCategoriesAxis();
68
68
69 // Customize axis label font
69 // Customize axis label font
70 QFont labelsFont;
70 QFont labelsFont;
@@ -94,14 +94,14 int main(int argc, char *argv[])
94 //![4]
94 //![4]
95 axisX->append("low");
95 axisX->append("low");
96 axisX->append("optimal");
96 axisX->append("optimal");
97 axisX->append("high");
97 axisX->append("high");
98
99 axisX->setRange("low","high");
98 axisX->setRange("low","high");
99
100 axisY->append("slow");
100 axisY->append("slow");
101 axisY->append("medium");
101 axisY->append("med");
102 axisY->append("fast");
102 axisY->append("fast");
103 axisY->setRange("slow","fast");
103 axisY->setRange("slow","fast");
104 // axisY->setTicksCount(4);
104
105 chart->setAxisX(axisX, series);
105 chart->setAxisX(axisX, series);
106 chart->setAxisY(axisY, series);
106 chart->setAxisY(axisY, series);
107 //![4]
107 //![4]
@@ -19,13 +19,11
19 ****************************************************************************/
19 ****************************************************************************/
20
20
21 #include "chartcategoriesaxisx_p.h"
21 #include "chartcategoriesaxisx_p.h"
22 #include "qabstractaxis.h"
23 #include "chartpresenter_p.h"
22 #include "chartpresenter_p.h"
24 #include "chartanimator_p.h"
23 #include "chartanimator_p.h"
24 #include "qbarcategoriesaxis.h"
25 #include <QGraphicsLayout>
25 #include <QGraphicsLayout>
26 #include <QDebug>
27 #include <QFontMetrics>
26 #include <QFontMetrics>
28 #include <QBarCategoriesAxis>
29
27
30 static int label_padding = 5;
28 static int label_padding = 5;
31
29
@@ -19,11 +19,10
19 ****************************************************************************/
19 ****************************************************************************/
20
20
21 #include "chartcategoriesaxisy_p.h"
21 #include "chartcategoriesaxisy_p.h"
22 #include "qabstractaxis.h"
23 #include "chartpresenter_p.h"
22 #include "chartpresenter_p.h"
24 #include "chartanimator_p.h"
23 #include "chartanimator_p.h"
24 #include "qbarcategoriesaxis.h"
25 #include <QGraphicsLayout>
25 #include <QGraphicsLayout>
26 #include <QDebug>
27 #include <QFontMetrics>
26 #include <QFontMetrics>
28 #include <QBarCategoriesAxis>
27 #include <QBarCategoriesAxis>
29
28
@@ -31,7 +30,8 static int label_padding = 5;
31
30
32 QTCOMMERCIALCHART_BEGIN_NAMESPACE
31 QTCOMMERCIALCHART_BEGIN_NAMESPACE
33
32
34 ChartCategoriesAxisY::ChartCategoriesAxisY(QAbstractAxis *axis,ChartPresenter *presenter) : ChartAxis(axis,presenter)
33 ChartCategoriesAxisY::ChartCategoriesAxisY(QBarCategoriesAxis *axis,ChartPresenter *presenter) : ChartAxis(axis,presenter),
34 m_categoriesAxis(axis)
35 {
35 {
36 }
36 }
37
37
@@ -77,7 +77,7 void ChartCategoriesAxisY::updateGeometry()
77 Q_ASSERT(layout.size() == ticksList.size());
77 Q_ASSERT(layout.size() == ticksList.size());
78
78
79 QGraphicsLineItem *lineItem = static_cast<QGraphicsLineItem*>(axis.at(0));
79 QGraphicsLineItem *lineItem = static_cast<QGraphicsLineItem*>(axis.at(0));
80 lineItem->setLine(m_rect.left(), m_rect.bottom(), m_rect.right(), m_rect.bottom());
80 lineItem->setLine(m_rect.left() , m_rect.top(), m_rect.left(), m_rect.bottom());
81
81
82 for (int i = 0; i < layout.size(); ++i) {
82 for (int i = 0; i < layout.size(); ++i) {
83 QGraphicsLineItem *lineItem = static_cast<QGraphicsLineItem*>(lines.at(i));
83 QGraphicsLineItem *lineItem = static_cast<QGraphicsLineItem*>(lines.at(i));
@@ -88,7 +88,7 void ChartCategoriesAxisY::updateGeometry()
88 const QRectF& rect = labelItem->boundingRect();
88 const QRectF& rect = labelItem->boundingRect();
89 QPointF center = rect.center();
89 QPointF center = rect.center();
90 labelItem->setTransformOriginPoint(center.x(), center.y());
90 labelItem->setTransformOriginPoint(center.x(), center.y());
91 labelItem->setPos(layout[i] - (layout[i] - layout[i-1])/2 - center.x(), m_rect.bottom() + label_padding);
91 labelItem->setPos(m_rect.left() - rect.width() - label_padding , layout[i] - (layout[i] - layout[i-1])/2 -center.y());
92 m_minWidth+=rect.width();
92 m_minWidth+=rect.width();
93 m_minHeight=qMax(rect.height()+label_padding,m_minHeight);
93 m_minHeight=qMax(rect.height()+label_padding,m_minHeight);
94 }else{
94 }else{
@@ -98,10 +98,10 void ChartCategoriesAxisY::updateGeometry()
98
98
99 if ((i+1)%2 && i>1) {
99 if ((i+1)%2 && i>1) {
100 QGraphicsRectItem *rectItem = static_cast<QGraphicsRectItem*>(shades.at(i/2-1));
100 QGraphicsRectItem *rectItem = static_cast<QGraphicsRectItem*>(shades.at(i/2-1));
101 rectItem->setRect(layout[i-1],m_rect.top(),layout[i]-layout[i-1],m_rect.height());
101 rectItem->setRect(m_rect.left(),layout[i],m_rect.width(),layout[i-1]-layout[i]);
102 }
102 }
103 lineItem = static_cast<QGraphicsLineItem*>(axis.at(i+1));
103 lineItem = static_cast<QGraphicsLineItem*>(axis.at(i+1));
104 lineItem->setLine(layout[i],m_rect.bottom(),layout[i],m_rect.bottom()+5);
104 lineItem->setLine(m_rect.left()-5,layout[i],m_rect.left(),layout[i]);
105 }
105 }
106 }
106 }
107
107
@@ -41,7 +41,7 class ChartPresenter;
41 class ChartCategoriesAxisY : public ChartAxis
41 class ChartCategoriesAxisY : public ChartAxis
42 {
42 {
43 public:
43 public:
44 ChartCategoriesAxisY(QAbstractAxis *axis, ChartPresenter *presenter);
44 ChartCategoriesAxisY(QBarCategoriesAxis *axis, ChartPresenter *presenter);
45 ~ChartCategoriesAxisY();
45 ~ChartCategoriesAxisY();
46
46
47 AxisType axisType() const { return Y_AXIS;}
47 AxisType axisType() const { return Y_AXIS;}
General Comments 0
You need to be logged in to leave comments. Login now