diff options
author | Miikka Heikkinen <miikka.heikkinen@digia.com> | 2013-05-16 12:31:38 +0300 |
---|---|---|
committer | Miikka Heikkinen <miikka.heikkinen@digia.com> | 2013-05-16 14:33:19 +0300 |
commit | 567bb809192837ce64ca3f6f490e241b164485a3 (patch) | |
tree | 984624e7d3199202af6f70dc37612f8436baa1fd /src/barchart | |
parent | 58f023bc109e4a597301f6dff552072dec4670b5 (diff) |
Fix explicitly set default pen/brush/font getting overridden by theme
Now we use default pen/brush/font that is unlikely to be ever
explicitly set by user, so checks for default in theme initialization
work more reliably.
Task-number: QTRD-1926
Task-number: QTRD-2023
Task-number: QTRD-2039
Change-Id: Id46b978ee49132e486e06968af00ef60559ede0f
Reviewed-by: Mika Salmela <mika.salmela@digia.com>
Diffstat (limited to 'src/barchart')
-rw-r--r-- | src/barchart/qabstractbarseries.cpp | 10 | ||||
-rw-r--r-- | src/barchart/qbarset.cpp | 6 |
2 files changed, 9 insertions, 7 deletions
diff --git a/src/barchart/qabstractbarseries.cpp b/src/barchart/qabstractbarseries.cpp index 51be5de4..b9b026e4 100644 --- a/src/barchart/qabstractbarseries.cpp +++ b/src/barchart/qabstractbarseries.cpp @@ -30,6 +30,7 @@ #include "qbarlegendmarker.h" #include "baranimation_p.h" #include "abstractbarchartitem_p.h" +#include "qchart_p.h" QTCOMMERCIALCHART_BEGIN_NAMESPACE @@ -842,9 +843,6 @@ void QAbstractBarSeriesPrivate::initializeTheme(int index, ChartTheme* theme, bo { const QList<QGradient> gradients = theme->seriesGradients(); - QBrush brush; - QPen pen; - qreal takeAtPos = 0.5; qreal step = 0.2; if (m_barSets.count() > 1) { @@ -864,19 +862,19 @@ void QAbstractBarSeriesPrivate::initializeTheme(int index, ChartTheme* theme, bo takeAtPos += step; takeAtPos -= (int) takeAtPos; } - if (forced || brush == m_barSets.at(i)->brush()) + if (forced || QChartPrivate::defaultBrush() == m_barSets.at(i)->brush()) m_barSets.at(i)->setBrush(ChartThemeManager::colorAt(gradients.at(colorIndex), takeAtPos)); // Pick label color from the opposite end of the gradient. // 0.3 as a boundary seems to work well. - if (forced || brush == m_barSets.at(i)->labelBrush()) { + if (forced || QChartPrivate::defaultBrush() == m_barSets.at(i)->labelBrush()) { if (takeAtPos < 0.3) m_barSets.at(i)->setLabelBrush(ChartThemeManager::colorAt(gradients.at(index % gradients.size()), 1)); else m_barSets.at(i)->setLabelBrush(ChartThemeManager::colorAt(gradients.at(index % gradients.size()), 0)); } - if (forced || pen == m_barSets.at(i)->pen()) { + if (forced || QChartPrivate::defaultPen() == m_barSets.at(i)->pen()) { QColor c = ChartThemeManager::colorAt(gradients.at(index % gradients.size()), 0.0); m_barSets.at(i)->setPen(c); } diff --git a/src/barchart/qbarset.cpp b/src/barchart/qbarset.cpp index ef5b337c..1ddd8898 100644 --- a/src/barchart/qbarset.cpp +++ b/src/barchart/qbarset.cpp @@ -21,6 +21,7 @@ #include "qbarset.h" #include "qbarset_p.h" #include "charthelpers_p.h" +#include "qchart_p.h" QTCOMMERCIALCHART_BEGIN_NAMESPACE @@ -546,7 +547,10 @@ void QBarSet::setLabelColor(QColor color) QBarSetPrivate::QBarSetPrivate(const QString label, QBarSet *parent) : QObject(parent), q_ptr(parent), - m_label(label) + m_label(label), + m_pen(QChartPrivate::defaultPen()), + m_brush(QChartPrivate::defaultBrush()), + m_labelBrush(QChartPrivate::defaultBrush()) { } |