##// END OF EJS Templates
Added QChart::localizeNumbers...
Added QChart::localizeNumbers When this property is true, the default QLocale is used to convert various values to strings for series and axis labels instead of corresponding QString functions, which always use "C" locale. Task-number: QTRD-3231 Change-Id: I95a936ae6d49c2589a7c53a481fd850c90846ae4 Reviewed-by: Titta Heikkala <titta.heikkala@digia.com>

File last commit:

r2707:ef2ab40bd1b9
r2707:ef2ab40bd1b9
Show More
qvalueaxis.cpp
451 lines | 11.6 KiB | text/x-c | CppLexer
Michal Klocek
Adds new API classes...
r1540 /****************************************************************************
**
Titta Heikkala
Update copyright year...
r2688 ** Copyright (C) 2014 Digia Plc
Michal Klocek
Adds new API classes...
r1540 ** All rights reserved.
** For any questions to Digia, please use contact form at http://qt.digia.com
**
Miikka Heikkinen
Qt Commercial -> Qt Enterprise...
r2574 ** This file is part of the Qt Enterprise Charts Add-on.
Michal Klocek
Adds new API classes...
r1540 **
** $QT_BEGIN_LICENSE$
Miikka Heikkinen
Qt Commercial -> Qt Enterprise...
r2574 ** Licensees holding valid Qt Enterprise licenses may use this file in
** accordance with the Qt Enterprise License Agreement provided with the
Michal Klocek
Adds new API classes...
r1540 ** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and Digia.
**
** If you have questions regarding the use of this file, please use
** contact form at http://qt.digia.com
** $QT_END_LICENSE$
**
****************************************************************************/
Marek Rosa
renamed QValueAxis related files
r1805 #include "qvalueaxis.h"
#include "qvalueaxis_p.h"
#include "chartvalueaxisx_p.h"
#include "chartvalueaxisy_p.h"
Marek Rosa
Domains added
r2275 #include "abstractdomain_p.h"
Miikka Heikkinen
Add Polar chart support...
r2483 #include "polarchartvalueaxisangular_p.h"
#include "polarchartvalueaxisradial_p.h"
Michal Klocek
Implements qbarcategoriesaxis logic...
r1725 #include "chartdataset_p.h"
Michal Klocek
Refactors internals...
r2273 #include "chartpresenter_p.h"
#include "charttheme_p.h"
Michal Klocek
Implements qbarcategoriesaxis logic...
r1725
Michal Klocek
Adds new API classes...
r1540
QTCOMMERCIALCHART_BEGIN_NAMESPACE
Marek Rosa
Some docs to QValuesAxis
r1547 /*!
Marek Rosa
class QValuesAxis renamed to QValueAxis
r1804 \class QValueAxis
Titta Heikkala
Fix Charts documentation...
r2639 \inmodule Qt Charts
Marek Rosa
class QValuesAxis renamed to QValueAxis
r1804 \brief The QValueAxis class is used for manipulating chart's axis.
Marek Rosa
Some docs to QValuesAxis
r1547 \mainclass
Marek Rosa
Docs update after classes renaming
r1812 ValueAxis can be setup to show axis line with tick marks, grid lines and shades.
Marek Rosa
QValueAxis docs: added usage snippet
r1881 Values of axis are drawn to position of ticks.
Example code on how to use QValueAxis.
\code
QChartView *chartView = new QChartView;
QLineSeries *series = new QLineSeries;
// ...
Marek Rosa
QDateTimeAxis: added snippet on how to use it
r1882 chartView->chart()->addSeries(series);
Marek Rosa
QValueAxis docs: added usage snippet
r1881 QValueAxis *axisX = new QValueAxis;
axisX->setRange(10, 20.5);
axisX->setTickCount(10);
axisX->setLabelFormat("%.2f");
Marek Rosa
Docs fixes for axes code snippets
r2108 chartView->chart()->setAxisX(axisX, series);
Marek Rosa
QValueAxis docs: added usage snippet
r1881 \endcode
Marek Rosa
Some docs to QValuesAxis
r1547 */
Titta Heikkala
Fix Charts documentation...
r2639 #ifdef QDOC_QT5
/*!
\qmltype ValueAxis
\instantiates QValueAxis
\inqmlmodule QtCommercial.Chart
Marek Rosa
Some docs to QValuesAxis
r1547
Titta Heikkala
Fix documentation paths...
r2650 \include doc/src/valueaxis.qdocinc
Titta Heikkala
Fix Charts documentation...
r2639 */
#else
Marek Rosa
Some docs to QValuesAxis
r1547 /*!
Marek Rosa
Docs update after classes renaming
r1812 \qmlclass ValueAxis QValueAxis
Marek Rosa
Some docs to QValuesAxis
r1547
Titta Heikkala
Fix Charts documentation...
r2639 \include ../doc/src/valueaxis.qdocinc
Marek Rosa
Some docs to QValuesAxis
r1547 */
Titta Heikkala
Fix Charts documentation...
r2639 #endif
Marek Rosa
Some docs to QValuesAxis
r1547
/*!
Marek Rosa
class QValuesAxis renamed to QValueAxis
r1804 \property QValueAxis::min
Marek Rosa
Some docs to QValuesAxis
r1547 Defines the minimum value on the axis.
Marek Rosa
Updated min, max properties of values and datetime axes descriptions with information about maintaining the range validity
r1730 When setting this property the max is adjusted if necessary, to ensure that the range remains valid.
Marek Rosa
Some docs to QValuesAxis
r1547 */
/*!
Marek Rosa
Docs update after classes renaming
r1812 \qmlproperty real ValueAxis::min
Marek Rosa
Some docs to QValuesAxis
r1547 Defines the minimum value on the axis.
Marek Rosa
Updated min, max properties of values and datetime axes descriptions with information about maintaining the range validity
r1730 When setting this property the max is adjusted if necessary, to ensure that the range remains valid.
Marek Rosa
Some docs to QValuesAxis
r1547 */
/*!
Marek Rosa
class QValuesAxis renamed to QValueAxis
r1804 \property QValueAxis::max
Marek Rosa
Some docs to QValuesAxis
r1547 Defines the maximum value on the axis.
Marek Rosa
Updated min, max properties of values and datetime axes descriptions with information about maintaining the range validity
r1730 When setting this property the min is adjusted if necessary, to ensure that the range remains valid.
Marek Rosa
Some docs to QValuesAxis
r1547 */
/*!
Marek Rosa
Docs update after classes renaming
r1812 \qmlproperty real ValueAxis::max
Marek Rosa
Some docs to QValuesAxis
r1547 Defines the maximum value on the axis.
Marek Rosa
Updated min, max properties of values and datetime axes descriptions with information about maintaining the range validity
r1730 When setting this property the min is adjusted if necessary, to ensure that the range remains valid.
Marek Rosa
Some docs to QValuesAxis
r1547 */
Michal Klocek
Adds proper docs for tickCount on valueaxis
r2308 /*!
\property QValueAxis::tickCount
Defines the number of ticks on the axis. This indicates how many grid lines are draw on the chart.
The default value is 5, and it can not be below 2.
*/
/*!
\qmlproperty real ValueAxis::tickCount
Defines the number of ticks on the axis. This indicates how many grid lines are draw on the chart.
Miikka Heikkinen
Documentation updates...
r2494 The default value is 5, and it can not be below 2.
Michal Klocek
Adds proper docs for tickCount on valueaxis
r2308 */
Marek Rosa
Added docs for labelFormat in QValueAxis
r1855 /*!
\property QValueAxis::labelFormat
Marek Rosa
Few axes docs fixes
r2339 Defines the label format of the axis.
Miikka Heikkinen
Added QChart::localizeNumbers...
r2707 Supported specifiers are: d, i, o, x, X, f, F, e, E, g, G, and c.
Marek Rosa
setLabelFormat bug fixed in QValueAxis
r2268 See QString::sprintf() for additional details.
Miikka Heikkinen
Added QChart::localizeNumbers...
r2707
If the QChart::localizeNumbers is \c{true}, the supported specifiers are limited to: d, e, E, f,
g, and G. Also, only the precision modifier is supported. The rest of the formatting comes from
the default QLocale of the application.
Marek Rosa
Added docs for labelFormat in QValueAxis
r1855 */
/*!
\qmlproperty real ValueAxis::labelFormat
Marek Rosa
Few axes docs fixes
r2339 Defines the label format of the axis.
Miikka Heikkinen
Added QChart::localizeNumbers...
r2707 Supported specifiers are: d, i, o, x, X, f, F, e, E, g, G, and c.
Marek Rosa
setLabelFormat bug fixed in QValueAxis
r2268 See QString::sprintf() for additional details.
Miikka Heikkinen
Added QChart::localizeNumbers...
r2707
If the ChartView::localizeNumbers is \c{true}, the supported specifiers are limited to: d, e, E, f,
g, and G. Also, only the precision modifier is supported. The rest of the formatting comes from
the default QLocale of the application.
Marek Rosa
Added docs for labelFormat in QValueAxis
r1855 */
Marek Rosa
Some docs to QValuesAxis
r1547 /*!
Marek Rosa
class QValuesAxis renamed to QValueAxis
r1804 \fn void QValueAxis::minChanged(qreal min)
Marek Rosa
Some docs to QValuesAxis
r1547 Axis emits signal when \a min of axis has changed.
*/
sauimone
abstract axis qml documentation. bug fix to setArrowVisible
r1654 /*!
Marek Rosa
Docs update after classes renaming
r1812 \qmlsignal ValueAxis::onMinChanged(real min)
sauimone
abstract axis qml documentation. bug fix to setArrowVisible
r1654 Axis emits signal when \a min of axis has changed.
*/
Marek Rosa
Some docs to QValuesAxis
r1547
/*!
Marek Rosa
class QValuesAxis renamed to QValueAxis
r1804 \fn void QValueAxis::maxChanged(qreal max)
Marek Rosa
Some docs to QValuesAxis
r1547 Axis emits signal when \a max of axis has changed.
*/
sauimone
abstract axis qml documentation. bug fix to setArrowVisible
r1654 /*!
Marek Rosa
Docs update after classes renaming
r1812 \qmlsignal ValueAxis::onMaxChanged(real max)
sauimone
abstract axis qml documentation. bug fix to setArrowVisible
r1654 Axis emits signal when \a max of axis has changed.
*/
Marek Rosa
Some docs to QValuesAxis
r1547
/*!
Michal Klocek
Adds proper docs for tickCount on valueaxis
r2308 \fn void QValueAxis::tickCountChanged(int tickCount)
Miikka Heikkinen
Documentation updates...
r2494 Axis emits signal when \a tickCount of axis has changed.
Marek Rosa
Some docs to QValuesAxis
r1547 */
sauimone
fixed documentation errors
r1575 /*!
Michal Klocek
Adds proper docs for tickCount on valueaxis
r2308 \qmlsignal ValueAxis::tickCountChanged(int tickCount)
Miikka Heikkinen
Documentation updates...
r2494 Axis emits signal when \a tickCount of axis has changed.
sauimone
fixed documentation errors
r1575 */
/*!
Michal Klocek
Adds proper docs for tickCount on valueaxis
r2308 \fn void QValueAxis::rangeChanged(qreal min, qreal max)
Axis emits signal when \a min or \a max of axis has changed.
sauimone
fixed documentation errors
r1575 */
Marek Rosa
Few axes docs fixes
r2339 /*!
\fn void QValueAxis::labelFormatChanged(const QString &format)
Axis emits signal when \a format of axis labels has changed.
*/
/*!
\qmlsignal ValueAxis::labelFormatChanged(const QString &format)
Miikka Heikkinen
Documentation updates...
r2494 Axis emits signal when \a format of axis labels has changed.
Marek Rosa
Few axes docs fixes
r2339 */
sauimone
fixed documentation errors
r1575 /*!
Marek Rosa
class QValuesAxis renamed to QValueAxis
r1804 \property QValueAxis::niceNumbersEnabled
Michal Klocek
Add docs for nice number algorithm
r2325 \obsolete
Using this function can lead to unexpected behavior. Use applyNiceNumbers() instead.
sauimone
fixed documentation errors
r1575 */
/*!
Marek Rosa
Docs update after classes renaming
r1812 \qmlproperty bool ValueAxis::niceNumbersEnabled
Titta Heikkala
Fix value axis documentation...
r2636 Deprecated; Using this function can lead to unexpected behavior. Use applyNiceNumbers() instead.
sauimone
fixed documentation errors
r1575 */
Marek Rosa
Axes docs update
r1636 /*!
Constructs an axis object which is a child of \a parent.
*/
Marek Rosa
class QValuesAxis renamed to QValueAxis
r1804 QValueAxis::QValueAxis(QObject *parent) :
Jani Honkonen
astyle and manual coding style fixes for src-folder
r2097 QAbstractAxis(*new QValueAxisPrivate(this), parent)
Michal Klocek
Adds new API classes...
r1540 {
}
Marek Rosa
Various docs fixes
r1638 /*!
\internal
*/
Jani Honkonen
astyle and manual coding style fixes for src-folder
r2097 QValueAxis::QValueAxis(QValueAxisPrivate &d, QObject *parent)
: QAbstractAxis(d, parent)
Michal Klocek
Adds new API classes...
r1540 {
}
Marek Rosa
Various docs fixes
r1638 /*!
Destroys the object
*/
Marek Rosa
class QValuesAxis renamed to QValueAxis
r1804 QValueAxis::~QValueAxis()
Michal Klocek
Adds new API classes...
r1540 {
Marek Rosa
class QValuesAxis renamed to QValueAxis
r1804 Q_D(QValueAxis);
Michal Klocek
Refactors internals...
r2273 if (d->m_chart)
d->m_chart->removeAxis(this);
Michal Klocek
Adds new API classes...
r1540 }
Marek Rosa
class QValuesAxis renamed to QValueAxis
r1804 void QValueAxis::setMin(qreal min)
Michal Klocek
Adds new API classes...
r1540 {
Marek Rosa
class QValuesAxis renamed to QValueAxis
r1804 Q_D(QValueAxis);
Marek Rosa
Ranges on values, intervals and datatime axes cannot be set to be invalid
r1728 setRange(min, qMax(d->m_max, min));
Michal Klocek
Adds new API classes...
r1540 }
Marek Rosa
class QValuesAxis renamed to QValueAxis
r1804 qreal QValueAxis::min() const
Michal Klocek
Adds new API classes...
r1540 {
Marek Rosa
class QValuesAxis renamed to QValueAxis
r1804 Q_D(const QValueAxis);
Michal Klocek
Adds new API classes...
r1540 return d->m_min;
}
Marek Rosa
class QValuesAxis renamed to QValueAxis
r1804 void QValueAxis::setMax(qreal max)
Michal Klocek
Adds new API classes...
r1540 {
Marek Rosa
class QValuesAxis renamed to QValueAxis
r1804 Q_D(QValueAxis);
Marek Rosa
Ranges on values, intervals and datatime axes cannot be set to be invalid
r1728 setRange(qMin(d->m_min, max), max);
Michal Klocek
Adds new API classes...
r1540 }
Marek Rosa
class QValuesAxis renamed to QValueAxis
r1804 qreal QValueAxis::max() const
Michal Klocek
Adds new API classes...
r1540 {
Marek Rosa
class QValuesAxis renamed to QValueAxis
r1804 Q_D(const QValueAxis);
Michal Klocek
Adds new API classes...
r1540 return d->m_max;
}
/*!
Sets range from \a min to \a max on the axis.
Marek Rosa
Updated min, max properties of values and datetime axes descriptions with information about maintaining the range validity
r1730 If min is greater than max then this function returns without making any changes.
Michal Klocek
Adds new API classes...
r1540 */
Marek Rosa
class QValuesAxis renamed to QValueAxis
r1804 void QValueAxis::setRange(qreal min, qreal max)
Michal Klocek
Adds new API classes...
r1540 {
Marek Rosa
class QValuesAxis renamed to QValueAxis
r1804 Q_D(QValueAxis);
Michal Klocek
Refactors internals...
r2273 d->setRange(min,max);
Michal Klocek
Adds new API classes...
r1540 }
Marek Rosa
QValueAxis ticksCount to tickCount
r1807 void QValueAxis::setTickCount(int count)
Michal Klocek
Adds new API classes...
r1540 {
Marek Rosa
class QValuesAxis renamed to QValueAxis
r1804 Q_D(QValueAxis);
Jani Honkonen
astyle and manual coding style fixes for src-folder
r2097 if (d->m_tickCount != count && count >= 2) {
Michal Klocek
Refactors Domain and Axis...
r1698 d->m_tickCount = count;
Michal Klocek
Refactors internals...
r2273 emit tickCountChanged(count);
Michal Klocek
Adds new API classes...
r1540 }
}
Marek Rosa
QValueAxis ticksCount to tickCount
r1807 int QValueAxis::tickCount() const
Michal Klocek
Adds new API classes...
r1540 {
Marek Rosa
class QValuesAxis renamed to QValueAxis
r1804 Q_D(const QValueAxis);
Michal Klocek
Refactors Domain and Axis...
r1698 return d->m_tickCount;
Michal Klocek
Adds new API classes...
r1540 }
Marek Rosa
class QValuesAxis renamed to QValueAxis
r1804 void QValueAxis::setNiceNumbersEnabled(bool enable)
Michal Klocek
Adds new API classes...
r1540 {
Michal Klocek
Fix niceNumbers legacy support
r2314 Q_D(QValueAxis);
Titta Heikkala
Fix value axis documentation...
r2636 qWarning() << "Deprecated; Using this function can lead to unexpected behavior. " \
"Use applyNiceNumbers() instead.";
Michal Klocek
Fix niceNumbers legacy support
r2314 if(enable) {
QObject::connect(this,SIGNAL(rangeChanged(qreal,qreal)),this,SLOT(applyNiceNumbers()));
QObject::connect(this,SIGNAL(tickCountChanged(int)),this,SLOT(applyNiceNumbers()));
applyNiceNumbers();
}
else {
QObject::disconnect(this,SIGNAL(rangeChanged(qreal,qreal)),this,SLOT(applyNiceNumbers()));
QObject::disconnect(this,SIGNAL(tickCountChanged(int)),this,SLOT(applyNiceNumbers()));
}
Michal Klocek
bugfxi minor. wrong return value for niceNumberEnabled
r2315 d->m_niceNumbersEnabled=enable;
Michal Klocek
Adds new API classes...
r1540 }
Michal Klocek
Refactors internals...
r2273 bool QValueAxis::niceNumbersEnabled() const
Michal Klocek
Adds new API classes...
r1540 {
Michal Klocek
Fix niceNumbers legacy support
r2314 Q_D(const QValueAxis);
Titta Heikkala
Fix value axis documentation...
r2636 qWarning() << "Deprecated; Using this function can lead to unexpected behavior. " \
"Use applyNiceNumbers() instead.";
Michal Klocek
Fix niceNumbers legacy support
r2314 return d->m_niceNumbersEnabled;
Michal Klocek
Adds new API classes...
r1540 }
Marek Rosa
QValueAxis: added posibility to specify label format
r1854 void QValueAxis::setLabelFormat(const QString &format)
{
Q_D(QValueAxis);
d->m_format = format;
Marek Rosa
Added missing properties and NOTIFY's to logvalue and value axes
r2319 emit labelFormatChanged(format);
Marek Rosa
QValueAxis: added posibility to specify label format
r1854 }
QString QValueAxis::labelFormat() const
{
Q_D(const QValueAxis);
return d->m_format;
}
Marek Rosa
Few more axes docs updates
r1637 /*!
Returns the type of the axis
*/
Marek Rosa
class QValuesAxis renamed to QValueAxis
r1804 QAbstractAxis::AxisType QValueAxis::type() const
Michal Klocek
Adds new API classes...
r1540 {
Marek Rosa
updated AxisType names
r1818 return AxisTypeValue;
Michal Klocek
Adds new API classes...
r1540 }
Michal Klocek
Add docs for nice number algorithm
r2325 /*!
This method modifies range and number of ticks on the axis to look "nice". Algorithm considers numbers that
can be expressed as form of 1*10^n, 2* 10^n or 5*10^n as a nice numbers. These numbers are used for spacing the ticks.
This method will modify the current range and number of ticks.
Marek Rosa
Few axes docs fixes
r2339 \sa setRange(), setTickCount()
Michal Klocek
Add docs for nice number algorithm
r2325 */
Michal Klocek
Refactors internals...
r2273 void QValueAxis::applyNiceNumbers()
{
Q_D(QValueAxis);
Michal Klocek
Fix niceNumbers legacy support
r2314 if(d->m_applying) return;
Michal Klocek
Refactors internals...
r2273 qreal min = d->m_min;
qreal max = d->m_max;
int ticks = d->m_tickCount;
Marek Rosa
Domains added
r2275 AbstractDomain::looseNiceNumbers(min,max,ticks);
Michal Klocek
Fix niceNumbers legacy support
r2314 d->m_applying=true;
Michal Klocek
Refactors internals...
r2273 d->setRange(min,max);
setTickCount(ticks);
Michal Klocek
Fix niceNumbers legacy support
r2314 d->m_applying=false;
Michal Klocek
Refactors internals...
r2273 }
Michal Klocek
Adds new API classes...
r1540 /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
Jani Honkonen
more coding style fixes for src-folder...
r2104 QValueAxisPrivate::QValueAxisPrivate(QValueAxis *q)
: QAbstractAxisPrivate(q),
m_min(0),
m_max(0),
m_tickCount(5),
Michal Klocek
Fix niceNumbers legacy support
r2314 m_format(QString::null),
m_applying(false),
m_niceNumbersEnabled(false)
Michal Klocek
Adds new API classes...
r1540 {
}
Marek Rosa
class QValuesAxis renamed to QValueAxis
r1804 QValueAxisPrivate::~QValueAxisPrivate()
Michal Klocek
Adds new API classes...
r1540 {
}
Marek Rosa
class QValuesAxis renamed to QValueAxis
r1804 void QValueAxisPrivate::setMin(const QVariant &min)
Michal Klocek
Refactors setMin setMax setRange to be pure viritual on private implementation
r1544 {
Marek Rosa
class QValuesAxis renamed to QValueAxis
r1804 Q_Q(QValueAxis);
sauimone
QAbstractAxis: variants strike back.
r1578 bool ok;
qreal value = min.toReal(&ok);
Jani Honkonen
astyle and manual coding style fixes for src-folder
r2097 if (ok)
q->setMin(value);
Michal Klocek
Refactors setMin setMax setRange to be pure viritual on private implementation
r1544 }
Marek Rosa
class QValuesAxis renamed to QValueAxis
r1804 void QValueAxisPrivate::setMax(const QVariant &max)
Michal Klocek
Refactors setMin setMax setRange to be pure viritual on private implementation
r1544 {
Marek Rosa
class QValuesAxis renamed to QValueAxis
r1804 Q_Q(QValueAxis);
sauimone
QAbstractAxis: variants strike back.
r1578 bool ok;
qreal value = max.toReal(&ok);
Jani Honkonen
astyle and manual coding style fixes for src-folder
r2097 if (ok)
q->setMax(value);
Michal Klocek
Refactors setMin setMax setRange to be pure viritual on private implementation
r1544 }
Marek Rosa
class QValuesAxis renamed to QValueAxis
r1804 void QValueAxisPrivate::setRange(const QVariant &min, const QVariant &max)
Michal Klocek
Refactors setMin setMax setRange to be pure viritual on private implementation
r1544 {
Marek Rosa
class QValuesAxis renamed to QValueAxis
r1804 Q_Q(QValueAxis);
sauimone
QAbstractAxis: variants strike back.
r1578 bool ok1;
bool ok2;
qreal value1 = min.toReal(&ok1);
qreal value2 = max.toReal(&ok2);
Jani Honkonen
astyle and manual coding style fixes for src-folder
r2097 if (ok1 && ok2)
q->setRange(value1, value2);
Michal Klocek
Refactors setMin setMax setRange to be pure viritual on private implementation
r1544 }
Michal Klocek
Refactors internals...
r2273 void QValueAxisPrivate::setRange(qreal min, qreal max)
Michal Klocek
Refactors core to support mulitpile axis and domains...
r1556 {
Michal Klocek
Refactors internals...
r2273 Q_Q(QValueAxis);
bool changed = false;
Michal Klocek
Refactors core to support mulitpile axis and domains...
r1556
Michal Klocek
Refactors internals...
r2273 if (min > max)
return;
Titta Heikkala
Fix QValueAxis range setting...
r2699 bool changeMin = false;
if (m_min == 0 || min == 0)
changeMin = !qFuzzyCompare(1 + m_min, 1 + min);
else
changeMin = !qFuzzyCompare(m_min, min);
bool changeMax = false;
if (m_max == 0 || max == 0)
changeMax = !qFuzzyCompare(1 + m_max, 1 + max);
else
changeMax = !qFuzzyCompare(m_max, max);
if (changeMin) {
Michal Klocek
Refactors internals...
r2273 m_min = min;
changed = true;
emit q->minChanged(min);
}
Titta Heikkala
Fix QValueAxis range setting...
r2699 if (changeMax) {
Michal Klocek
Refactors internals...
r2273 m_max = max;
changed = true;
emit q->maxChanged(max);
Michal Klocek
Creates default initalization of axes
r1661 }
Michal Klocek
Refactors internals...
r2273 if (changed) {
emit rangeChanged(min,max);
Michal Klocek
Fix niceNumbers legacy support
r2314 emit q->rangeChanged(min, max);
Michal Klocek
Refactors internals...
r2273 }
}
Michal Klocek
Refactors Domain and Axis...
r1698
Miikka Heikkinen
Add Polar chart support...
r2483 void QValueAxisPrivate::initializeGraphics(QGraphicsItem *parent)
Michal Klocek
Refactors Domain and Axis...
r1698 {
Michal Klocek
Refactors internals...
r2273 Q_Q(QValueAxis);
Miikka Heikkinen
Add Polar chart support...
r2483 ChartAxisElement *axis(0);
if (m_chart->chartType() == QChart::ChartTypeCartesian) {
if (orientation() == Qt::Vertical)
axis = new ChartValueAxisY(q,parent);
if (orientation() == Qt::Horizontal)
axis = new ChartValueAxisX(q,parent);
}
if (m_chart->chartType() == QChart::ChartTypePolar) {
if (orientation() == Qt::Vertical)
axis = new PolarChartValueAxisRadial(q, parent);
if (orientation() == Qt::Horizontal)
axis = new PolarChartValueAxisAngular(q, parent);
}
Michal Klocek
Refactors internals...
r2273
m_item.reset(axis);
QAbstractAxisPrivate::initializeGraphics(parent);
Michal Klocek
Refactors Domain and Axis...
r1698 }
Marek Rosa
Domains added
r2275 void QValueAxisPrivate::initializeDomain(AbstractDomain *domain)
Michal Klocek
Refactors Domain and Axis...
r1698 {
Michal Klocek
Refactors internals...
r2273 if (orientation() == Qt::Vertical) {
Miikka Heikkinen
Add Polar chart support...
r2483 if (!qFuzzyIsNull(m_max - m_min))
Michal Klocek
Refactors internals...
r2273 domain->setRangeY(m_min, m_max);
Miikka Heikkinen
Add Polar chart support...
r2483 else
Michal Klocek
Refactors internals...
r2273 setRange(domain->minY(), domain->maxY());
}
if (orientation() == Qt::Horizontal) {
Miikka Heikkinen
Add Polar chart support...
r2483 if (!qFuzzyIsNull(m_max - m_min))
Michal Klocek
Refactors internals...
r2273 domain->setRangeX(m_min, m_max);
Miikka Heikkinen
Add Polar chart support...
r2483 else
Michal Klocek
Refactors internals...
r2273 setRange(domain->minX(), domain->maxX());
Michal Klocek
Refactors Domain and Axis...
r1698 }
}
Marek Rosa
renamed QValueAxis related files
r1805 #include "moc_qvalueaxis.cpp"
#include "moc_qvalueaxis_p.cpp"
Michal Klocek
Adds new API classes...
r1540
QTCOMMERCIALCHART_END_NAMESPACE