##// END OF EJS Templates
Fix crash with empty BarSet values...
Fix crash with empty BarSet values Change-Id: I6c82ad2985f7efc501ed0df34b8205875a369fd0 Task-number: QTBUG-51287 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@theqtcompany.com>

File last commit:

r2845:ae12522d475c
r2869:8f454d1f8b44
Show More
qarealegendmarker.cpp
126 lines | 3.2 KiB | text/x-c | CppLexer
/ src / charts / legend / qarealegendmarker.cpp
Titta Heikkala
Updated license headers...
r2845 /******************************************************************************
sauimone
added QAreaLegendMarker
r2176 **
Titta Heikkala
Updated license headers...
r2845 ** Copyright (C) 2015 The Qt Company Ltd.
** Contact: http://www.qt.io/licensing/
sauimone
added QAreaLegendMarker
r2176 **
Titta Heikkala
Updated license headers...
r2740 ** This file is part of the Qt Charts module.
sauimone
added QAreaLegendMarker
r2176 **
Titta Heikkala
Updated license headers...
r2845 ** $QT_BEGIN_LICENSE:COMM$
sauimone
added QAreaLegendMarker
r2176 **
Titta Heikkala
Updated license headers...
r2845 ** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see http://www.qt.io/terms-conditions. For further
** information use the contact form at http://www.qt.io/contact-us.
sauimone
added QAreaLegendMarker
r2176 **
Titta Heikkala
Updated license headers...
r2845 ** $QT_END_LICENSE$
**
******************************************************************************/
sauimone
added QAreaLegendMarker
r2176
Titta Heikkala
Fix include syntax...
r2714 #include <QtCharts/QAreaLegendMarker>
#include <private/qarealegendmarker_p.h>
#include <private/qareaseries_p.h>
#include <QtCharts/QAreaSeries>
sauimone
added QAreaLegendMarker
r2176
Titta Heikkala
Qt Charts project file structure change...
r2712 QT_CHARTS_BEGIN_NAMESPACE
sauimone
added QAreaLegendMarker
r2176
sauimone
documentation of legendmarkers
r2216 /*!
\class QAreaLegendMarker
Titta Heikkala
Fix Charts documentation...
r2639 \inmodule Qt Charts
Titta Heikkala
Qt Charts project file structure change...
r2712 \brief QLegendMarker subclass for area series.
sauimone
documentation of legendmarkers
r2216
QAreaLegendMarker is related to QAreaSeries. One QAreaSeries results in one marker.
Titta Heikkala
Fix Charts documentation...
r2639 \sa QLegend, QAreaSeries
sauimone
documentation of legendmarkers
r2216 */
/*!
\fn virtual LegendMarkerType QAreaLegendMarker::type()
Returns QLegendMarker::LegendMarkerTypeArea
*/
/*!
Tero Ahola
Fixed several documentation issues
r2265 \internal
sauimone
documentation of legendmarkers
r2216 */
sauimone
optional series parameter to markers function. code style fixes
r2193 QAreaLegendMarker::QAreaLegendMarker(QAreaSeries *series, QLegend *legend, QObject *parent) :
sauimone
added QAreaLegendMarker
r2176 QLegendMarker(*new QAreaLegendMarkerPrivate(this,series,legend), parent)
{
sauimone
fixed crash in legendmarker when calling update from private constructor
r2227 d_ptr->updated();
sauimone
added QAreaLegendMarker
r2176 }
sauimone
documentation of legendmarkers
r2216 /*!
Destructor
*/
sauimone
added QAreaLegendMarker
r2176 QAreaLegendMarker::~QAreaLegendMarker()
{
}
/*!
\internal
*/
QAreaLegendMarker::QAreaLegendMarker(QAreaLegendMarkerPrivate &d, QObject *parent) :
QLegendMarker(d, parent)
{
}
sauimone
documentation of legendmarkers
r2216 /*!
Returns related series of marker
*/
sauimone
added QAreaLegendMarker
r2176 QAreaSeries* QAreaLegendMarker::series()
{
Q_D(QAreaLegendMarker);
return d->m_series;
}
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
QAreaLegendMarkerPrivate::QAreaLegendMarkerPrivate(QAreaLegendMarker *q, QAreaSeries *series, QLegend *legend) :
QLegendMarkerPrivate(q,legend),
sauimone
fixed crash in legendmarker when calling update from private constructor
r2227 q_ptr(q),
sauimone
added QAreaLegendMarker
r2176 m_series(series)
{
QObject::connect(m_series->d_func(),SIGNAL(updated()), this, SLOT(updated()));
QObject::connect(m_series, SIGNAL(nameChanged()), this, SLOT(updated()));
}
QAreaLegendMarkerPrivate::~QAreaLegendMarkerPrivate()
{
}
sauimone
Better handling for new or removed markers
r2182 QAreaSeries* QAreaLegendMarkerPrivate::series()
{
return m_series;
}
QObject* QAreaLegendMarkerPrivate::relatedObject()
{
return m_series;
}
sauimone
added QAreaLegendMarker
r2176 void QAreaLegendMarkerPrivate::updated()
{
sauimone
signals for properties in legendmarker
r2225 bool labelChanged = false;
bool brushChanged = false;
Mika Salmela
Fix for not overriding user settings for legend markers....
r2429 if (!m_customBrush && (m_item->brush() != m_series->brush())) {
sauimone
signals for properties in legendmarker
r2225 m_item->setBrush(m_series->brush());
brushChanged = true;
}
Mika Salmela
Fix for not overriding user settings for legend markers....
r2429 if (!m_customLabel && (m_item->label() != m_series->name())) {
sauimone
signals for properties in legendmarker
r2225 m_item->setLabel(m_series->name());
labelChanged = true;
}
sauimone
fix to QTRD-1674: layout is not calculated correctly after the change in the text of legend marker
r2194 invalidateLegend();
sauimone
signals for properties in legendmarker
r2225
if (labelChanged)
emit q_ptr->labelChanged();
if (brushChanged)
emit q_ptr->brushChanged();
sauimone
added QAreaLegendMarker
r2176 }
#include "moc_qarealegendmarker.cpp"
#include "moc_qarealegendmarker_p.cpp"
Titta Heikkala
Qt Charts project file structure change...
r2712 QT_CHARTS_END_NAMESPACE