diff options
Diffstat (limited to 'src/charts/axis/chartaxiselement.cpp')
-rw-r--r-- | src/charts/axis/chartaxiselement.cpp | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/src/charts/axis/chartaxiselement.cpp b/src/charts/axis/chartaxiselement.cpp index 90cce21b..1667f0c7 100644 --- a/src/charts/axis/chartaxiselement.cpp +++ b/src/charts/axis/chartaxiselement.cpp @@ -48,6 +48,8 @@ ChartAxisElement::ChartAxisElement(QAbstractAxis *axis, QGraphicsItem *item, boo m_animation(0), m_grid(new QGraphicsItemGroup(item)), m_arrow(new QGraphicsItemGroup(item)), + m_minorGrid(new QGraphicsItemGroup(item)), + m_minorArrow(new QGraphicsItemGroup(item)), m_shades(new QGraphicsItemGroup(item)), m_labels(new QGraphicsItemGroup(item)), m_title(new QGraphicsTextItem(item)), @@ -57,9 +59,12 @@ ChartAxisElement::ChartAxisElement(QAbstractAxis *axis, QGraphicsItem *item, boo //initial initialization m_arrow->setHandlesChildEvents(false); m_arrow->setZValue(ChartPresenter::AxisZValue); + m_minorArrow->setHandlesChildEvents(false); + m_minorArrow->setZValue(ChartPresenter::AxisZValue); m_labels->setZValue(ChartPresenter::AxisZValue); m_shades->setZValue(ChartPresenter::ShadesZValue); m_grid->setZValue(ChartPresenter::GridZValue); + m_minorGrid->setZValue(ChartPresenter::GridZValue); m_title->setZValue(ChartPresenter::GridZValue); m_title->document()->setDocumentMargin(ChartPresenter::textMargin()); handleVisibleChanged(axis->isVisible()); @@ -92,6 +97,14 @@ void ChartAxisElement::connectSlots() QObject::connect(axis(), SIGNAL(titleVisibleChanged(bool)), this, SLOT(handleTitleVisibleChanged(bool))); QObject::connect(axis()->d_ptr.data(), SIGNAL(rangeChanged(qreal, qreal)), this, SLOT(handleRangeChanged(qreal, qreal))); QObject::connect(axis(), SIGNAL(reverseChanged(bool)), this, SLOT(handleReverseChanged(bool))); + QObject::connect(axis(), SIGNAL(lineVisibleChanged(bool)), + this, SLOT(handleMinorArrowVisibleChanged(bool))); + QObject::connect(axis(), SIGNAL(linePenChanged(const QPen&)), this, + SLOT(handleMinorArrowPenChanged(const QPen&))); + QObject::connect(axis(), SIGNAL(minorGridVisibleChanged(bool)), + this, SLOT(handleMinorGridVisibleChanged(bool))); + QObject::connect(axis(), SIGNAL(minorGridLinePenChanged(const QPen&)), + this, SLOT(handleMinorGridPenChanged(const QPen&))); } void ChartAxisElement::handleArrowVisibleChanged(bool visible) @@ -99,11 +112,21 @@ void ChartAxisElement::handleArrowVisibleChanged(bool visible) m_arrow->setVisible(visible); } +void ChartAxisElement::handleMinorArrowVisibleChanged(bool visible) +{ + m_minorArrow->setVisible(visible); +} + void ChartAxisElement::handleGridVisibleChanged(bool visible) { m_grid->setVisible(visible); } +void ChartAxisElement::handleMinorGridVisibleChanged(bool visible) +{ + m_minorGrid->setVisible(visible); +} + void ChartAxisElement::handleLabelsVisibleChanged(bool visible) { QGraphicsLayoutItem::updateGeometry(); @@ -174,12 +197,16 @@ void ChartAxisElement::handleVisibleChanged(bool visible) if (!visible) { m_grid->setVisible(visible); m_arrow->setVisible(visible); + m_minorGrid->setVisible(visible); + m_minorArrow->setVisible(visible); m_shades->setVisible(visible); m_labels->setVisible(visible); m_title->setVisible(visible); } else { m_grid->setVisible(axis()->isGridLineVisible()); m_arrow->setVisible(axis()->isLineVisible()); + m_minorGrid->setVisible(axis()->isMinorGridLineVisible()); + m_minorArrow->setVisible(axis()->isLineVisible()); m_shades->setVisible(axis()->shadesVisible()); m_labels->setVisible(axis()->labelsVisible()); m_title->setVisible(axis()->isTitleVisible()); |