Update to newest version of QCustomPlot (2.1.1)

This commit is contained in:
Collin Kidder
2023-02-14 20:23:45 -05:00
parent 329f1162ac
commit 4fa638a2f3
2 changed files with 244 additions and 167 deletions
+107 -79
View File
@@ -1,7 +1,7 @@
/***************************************************************************
** **
** QCustomPlot, an easy to use, modern plotting widget for Qt **
** Copyright (C) 2011-2021 Emanuel Eichhammer **
** Copyright (C) 2011-2022 Emanuel Eichhammer **
** **
** This program is free software: you can redistribute it and/or modify **
** it under the terms of the GNU General Public License as published by **
@@ -18,16 +18,16 @@
** **
****************************************************************************
** Author: Emanuel Eichhammer **
** Website/Contact: http://www.qcustomplot.com/ **
** Date: 29.03.21 **
** Version: 2.1.0 **
** Website/Contact: https://www.qcustomplot.com/ **
** Date: 06.11.22 **
** Version: 2.1.1 **
****************************************************************************/
#include "qcustomplot.h"
/* including file 'src/vector2d.cpp' */
/* modified 2021-03-29T02:30:44, size 7973 */
/* modified 2022-11-06T12:45:56, size 7973 */
////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////// QCPVector2D
@@ -272,7 +272,7 @@ QCPVector2D &QCPVector2D::operator-=(const QCPVector2D &vector)
/* including file 'src/painter.cpp' */
/* modified 2021-03-29T02:30:44, size 8656 */
/* modified 2022-11-06T12:45:56, size 8656 */
////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////// QCPPainter
@@ -489,7 +489,7 @@ void QCPPainter::makeNonCosmetic()
/* including file 'src/paintbuffer.cpp' */
/* modified 2021-03-29T02:30:44, size 18915 */
/* modified 2022-11-06T12:45:56, size 18915 */
////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////// QCPAbstractPaintBuffer
@@ -908,11 +908,6 @@ void QCPPaintBufferGlFbo::draw(QCPPainter *painter) const
qDebug() << Q_FUNC_INFO << "OpenGL frame buffer object doesn't exist, reallocateBuffer was not called?";
return;
}
QOpenGLContext *cont = mGlContext.toStrongRef().data();
if (cont != QOpenGLContext::currentContext())
cont->makeCurrent(cont->surface());
painter->drawImage(0, 0, mGlFrameBuffer->toImage());
}
@@ -981,7 +976,7 @@ void QCPPaintBufferGlFbo::reallocateBuffer()
/* including file 'src/layer.cpp' */
/* modified 2021-03-29T02:30:44, size 37615 */
/* modified 2022-11-06T12:45:56, size 37615 */
////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////// QCPLayer
@@ -1841,7 +1836,7 @@ void QCPLayerable::wheelEvent(QWheelEvent *event)
/* including file 'src/axis/range.cpp' */
/* modified 2021-03-29T02:30:44, size 12221 */
/* modified 2022-11-06T12:45:56, size 12221 */
////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////// QCPRange
@@ -2163,7 +2158,7 @@ bool QCPRange::validRange(const QCPRange &range)
/* including file 'src/selection.cpp' */
/* modified 2021-03-29T02:30:44, size 21837 */
/* modified 2022-11-06T12:45:56, size 21837 */
////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////// QCPDataRange
@@ -2764,7 +2759,7 @@ QCPDataSelection QCPDataSelection::inverse(const QCPDataRange &outerRange) const
/* including file 'src/selectionrect.cpp' */
/* modified 2021-03-29T02:30:44, size 9215 */
/* modified 2022-11-06T12:45:56, size 9215 */
////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////// QCPSelectionRect
@@ -2993,7 +2988,7 @@ void QCPSelectionRect::draw(QCPPainter *painter)
/* including file 'src/layout.cpp' */
/* modified 2021-03-29T02:30:44, size 78863 */
/* modified 2022-11-06T12:45:56, size 78863 */
////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////// QCPMarginGroup
@@ -5166,7 +5161,7 @@ void QCPLayoutInset::addElement(QCPLayoutElement *element, const QRectF &rect)
/* including file 'src/lineending.cpp' */
/* modified 2021-03-29T02:30:44, size 11189 */
/* modified 2022-11-06T12:45:56, size 11189 */
////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////// QCPLineEnding
@@ -5460,7 +5455,7 @@ void QCPLineEnding::draw(QCPPainter *painter, const QCPVector2D &pos, double ang
/* including file 'src/axis/labelpainter.cpp' */
/* modified 2021-03-29T02:30:44, size 27296 */
/* modified 2022-11-06T12:45:56, size 27519 */
////////////////////////////////////////////////////////////////////////////////////////////////////
@@ -5658,8 +5653,8 @@ QByteArray QCPLabelPainterPrivate::generateLabelParameterHash() const
QByteArray result;
result.append(QByteArray::number(mParentPlot->bufferDevicePixelRatio()));
result.append(QByteArray::number(mRotation));
//result.append(QByteArray::number((int)tickLabelSide)); TODO: check whether this is really a cache-invalidating property
result.append(QByteArray::number((int)mSubstituteExponent));
//result.append(QByteArray::number(int(tickLabelSide))); TODO: check whether this is really a cache-invalidating property
result.append(QByteArray::number(int(mSubstituteExponent)));
result.append(QString(mMultiplicationSymbol).toUtf8());
result.append(mColor.name().toLatin1()+QByteArray::number(mColor.alpha(), 16));
result.append(mFont.toString().toLatin1());
@@ -5762,9 +5757,12 @@ QPointF QCPLabelPainterPrivate::getAnchorPos(const QPointF &tickPos)
case asTopRight: return tickPos+QPointF(-mPadding*M_SQRT1_2, mPadding*M_SQRT1_2);
case asBottomRight: return tickPos+QPointF(-mPadding*M_SQRT1_2, -mPadding*M_SQRT1_2);
case asBottomLeft: return tickPos+QPointF(mPadding*M_SQRT1_2, -mPadding*M_SQRT1_2);
default: qDebug() << Q_FUNC_INFO << "invalid mode for anchor side: " << mAnchorSide; break;
}
break;
}
case amSkewedUpright:
// fall through
case amSkewedRotated:
{
QCPVector2D anchorNormal(tickPos-mAnchorReference);
@@ -5773,6 +5771,7 @@ QPointF QCPLabelPainterPrivate::getAnchorPos(const QPointF &tickPos)
anchorNormal.normalize();
return tickPos+(anchorNormal*mPadding).toPointF();
}
default: qDebug() << Q_FUNC_INFO << "invalid mode for anchor mode: " << mAnchorMode; break;
}
return tickPos;
}
@@ -5990,8 +5989,8 @@ QByteArray QCPLabelPainterPrivate::cacheKey(const QString &text, const QColor &c
{
return text.toUtf8()+
QByteArray::number(color.red()+256*color.green()+65536*color.blue(), 36)+
QByteArray::number(color.alpha()+256*(int)side, 36)+
QByteArray::number((int)(rotation*100)%36000, 36);
QByteArray::number(color.alpha()+256*int(side), 36)+
QByteArray::number(int(rotation*100), 36);
}
QCPLabelPainterPrivate::AnchorSide QCPLabelPainterPrivate::skewedAnchorSide(const QPointF &tickPos, double sideExpandHorz, double sideExpandVert) const
@@ -6059,7 +6058,7 @@ void QCPLabelPainterPrivate::analyzeFontMetrics()
/* including file 'src/axis/axisticker.cpp' */
/* modified 2021-03-29T02:30:44, size 18688 */
/* modified 2022-11-06T12:45:56, size 18693 */
////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////// QCPAxisTicker
@@ -6443,7 +6442,7 @@ double QCPAxisTicker::pickClosest(double target, const QVector<double> &candidat
*/
double QCPAxisTicker::getMantissa(double input, double *magnitude) const
{
const double mag = qPow(10.0, qFloor(qLn(input)/qLn(10.0)));
const double mag = std::pow(10.0, std::floor(std::log10(input)));
if (magnitude) *magnitude = mag;
return input/mag;
}
@@ -6479,7 +6478,7 @@ double QCPAxisTicker::cleanMantissa(double input) const
/* including file 'src/axis/axistickerdatetime.cpp' */
/* modified 2021-03-29T02:30:44, size 18829 */
/* modified 2022-11-06T12:45:56, size 18829 */
////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////// QCPAxisTickerDateTime
@@ -6836,7 +6835,7 @@ double QCPAxisTickerDateTime::dateTimeToKey(const QDate &date, Qt::TimeSpec time
/* including file 'src/axis/axistickertime.cpp' */
/* modified 2021-03-29T02:30:44, size 11745 */
/* modified 2022-11-06T12:45:56, size 11745 */
////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////// QCPAxisTickerTime
@@ -7085,7 +7084,7 @@ void QCPAxisTickerTime::replaceUnit(QString &text, QCPAxisTickerTime::TimeUnit u
/* including file 'src/axis/axistickerfixed.cpp' */
/* modified 2021-03-29T02:30:44, size 5575 */
/* modified 2022-11-06T12:45:56, size 5575 */
////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////// QCPAxisTickerFixed
@@ -7187,7 +7186,7 @@ double QCPAxisTickerFixed::getTickStep(const QCPRange &range)
/* including file 'src/axis/axistickertext.cpp' */
/* modified 2021-03-29T02:30:44, size 8742 */
/* modified 2022-11-06T12:45:56, size 8742 */
////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////// QCPAxisTickerText
@@ -7404,7 +7403,7 @@ QVector<double> QCPAxisTickerText::createTickVector(double tickStep, const QCPRa
/* including file 'src/axis/axistickerpi.cpp' */
/* modified 2021-03-29T02:30:44, size 11177 */
/* modified 2022-11-06T12:45:56, size 11177 */
////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////// QCPAxisTickerPi
@@ -7691,7 +7690,7 @@ QString QCPAxisTickerPi::unicodeSubscript(int number) const
/* including file 'src/axis/axistickerlog.cpp' */
/* modified 2021-03-29T02:30:44, size 7890 */
/* modified 2022-11-06T12:45:56, size 7890 */
////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////// QCPAxisTickerLog
@@ -7832,7 +7831,7 @@ QVector<double> QCPAxisTickerLog::createTickVector(double tickStep, const QCPRan
/* including file 'src/axis/axis.cpp' */
/* modified 2021-03-29T02:30:44, size 99883 */
/* modified 2022-11-06T12:45:56, size 99911 */
////////////////////////////////////////////////////////////////////////////////////////////////////
@@ -10353,7 +10352,7 @@ QCPAxisPainterPrivate::TickLabelData QCPAxisPainterPrivate::getTickLabelData(con
int eLast = -1; // last index of exponent part, rest of text after this will be suffixPart
if (substituteExponent)
{
ePos = text.indexOf(QLatin1Char('e'));
ePos = text.indexOf(QString(mParentPlot->locale().exponential()));
if (ePos > 0 && text.at(ePos-1).isDigit())
{
eLast = ePos;
@@ -10550,7 +10549,7 @@ void QCPAxisPainterPrivate::getMaxTickLabelSize(const QFont &font, const QString
/* including file 'src/scatterstyle.cpp' */
/* modified 2021-03-29T02:30:44, size 17466 */
/* modified 2022-11-06T12:45:56, size 17466 */
////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////// QCPScatterStyle
@@ -11023,7 +11022,7 @@ void QCPScatterStyle::drawShape(QCPPainter *painter, double x, double y) const
/* including file 'src/plottable.cpp' */
/* modified 2021-03-29T02:30:44, size 38818 */
/* modified 2022-11-06T12:45:56, size 38818 */
////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////// QCPSelectionDecorator
@@ -11994,7 +11993,7 @@ void QCPAbstractPlottable::deselectEvent(bool *selectionStateChanged)
/* including file 'src/item.cpp' */
/* modified 2021-03-29T02:30:44, size 49486 */
/* modified 2022-11-06T12:45:56, size 49486 */
////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////// QCPItemAnchor
@@ -13266,7 +13265,7 @@ QCP::Interaction QCPAbstractItem::selectionCategory() const
/* including file 'src/core.cpp' */
/* modified 2021-03-29T02:30:44, size 127198 */
/* modified 2022-11-06T12:45:56, size 127625 */
////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////// QCustomPlot
@@ -13278,7 +13277,7 @@ QCP::Interaction QCPAbstractItem::selectionCategory() const
interacts with the user.
For tutorials on how to use QCustomPlot, see the website\n
http://www.qcustomplot.com/
https://www.qcustomplot.com/
*/
/* start of documentation of inline functions */
@@ -13602,7 +13601,7 @@ QCustomPlot::QCustomPlot(QWidget *parent) :
xAxis2(nullptr),
yAxis2(nullptr),
legend(nullptr),
mBufferDevicePixelRatio(1.0), // will be adapted to primary screen below
mBufferDevicePixelRatio(1.0), // will be adapted to true value below
mPlotLayout(nullptr),
mAutoAddPlottableToLegend(true),
mAntialiasedElements(QCP::aeNone),
@@ -13631,7 +13630,6 @@ QCustomPlot::QCustomPlot(QWidget *parent) :
mOpenGlCacheLabelsBackup(true)
{
setAttribute(Qt::WA_NoMousePropagation);
setAttribute(Qt::WA_OpaquePaintEvent);
setFocusPolicy(Qt::ClickFocus);
setMouseTracking(true);
QLocale currentLocale = locale();
@@ -15471,6 +15469,22 @@ QSize QCustomPlot::sizeHint() const
void QCustomPlot::paintEvent(QPaintEvent *event)
{
Q_UNUSED(event)
// detect if the device pixel ratio has changed (e.g. moving window between different DPI screens), and adapt buffers if necessary:
#ifdef QCP_DEVICEPIXELRATIO_SUPPORTED
# ifdef QCP_DEVICEPIXELRATIO_FLOAT
double newDpr = devicePixelRatioF();
# else
double newDpr = devicePixelRatio();
# endif
if (!qFuzzyCompare(mBufferDevicePixelRatio, newDpr))
{
setBufferDevicePixelRatio(newDpr);
replot(QCustomPlot::rpQueuedRefresh);
return;
}
#endif
QCPPainter painter(this);
if (painter.isActive())
{
@@ -16485,7 +16499,7 @@ void QCustomPlot::toPainter(QCPPainter *painter, int width, int height)
/* including file 'src/colorgradient.cpp' */
/* modified 2021-03-29T02:30:44, size 25278 */
/* modified 2022-11-06T12:45:56, size 25408 */
////////////////////////////////////////////////////////////////////////////////////////////////////
@@ -16715,10 +16729,10 @@ void QCPColorGradient::colorize(const double *data, const QCPRange &range, QRgb
const double value = data[dataIndexFactor*i];
if (skipNanCheck || !std::isnan(value))
{
int index = int((!logarithmic ? value-range.lower : qLn(value/range.lower)) * posToIndexFactor);
qint64 index = qint64((!logarithmic ? value-range.lower : qLn(value/range.lower)) * posToIndexFactor);
if (!mPeriodic)
{
index = qBound(0, index, mLevelCount-1);
index = qBound(qint64(0), index, qint64(mLevelCount-1));
} else
{
index %= mLevelCount;
@@ -16776,10 +16790,10 @@ void QCPColorGradient::colorize(const double *data, const unsigned char *alpha,
const double value = data[dataIndexFactor*i];
if (skipNanCheck || !std::isnan(value))
{
int index = int((!logarithmic ? value-range.lower : qLn(value/range.lower)) * posToIndexFactor);
qint64 index = qint64((!logarithmic ? value-range.lower : qLn(value/range.lower)) * posToIndexFactor);
if (!mPeriodic)
{
index = qBound(0, index, mLevelCount-1);
index = qBound(qint64(0), index, qint64(mLevelCount-1));
} else
{
index %= mLevelCount;
@@ -17022,7 +17036,7 @@ void QCPColorGradient::updateColorBuffer()
for (int i=0; i<mLevelCount; ++i)
{
double position = i*indexToPosFactor;
QMap<double, QColor>::const_iterator it = mColorStops.lowerBound(position);
QMap<double, QColor>::const_iterator it = const_cast<const QMap<double, QColor>*>(&mColorStops)->lowerBound(position); // force using the const lowerBound method
if (it == mColorStops.constEnd()) // position is on or after last stop, use color of last stop
{
if (useAlpha)
@@ -17120,7 +17134,7 @@ void QCPColorGradient::updateColorBuffer()
/* including file 'src/selectiondecorator-bracket.cpp' */
/* modified 2021-03-29T02:30:44, size 12308 */
/* modified 2022-11-06T12:45:56, size 12308 */
////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////// QCPSelectionDecoratorBracket
@@ -17406,7 +17420,7 @@ QPointF QCPSelectionDecoratorBracket::getPixelCoordinates(const QCPPlottableInte
/* including file 'src/layoutelements/layoutelement-axisrect.cpp' */
/* modified 2021-03-29T02:30:44, size 47193 */
/* modified 2022-11-06T12:45:56, size 47193 */
////////////////////////////////////////////////////////////////////////////////////////////////////
@@ -18691,7 +18705,7 @@ void QCPAxisRect::wheelEvent(QWheelEvent *event)
/* including file 'src/layoutelements/layoutelement-legend.cpp' */
/* modified 2021-03-29T02:30:44, size 31762 */
/* modified 2022-11-06T12:45:56, size 31762 */
////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////// QCPAbstractLegendItem
@@ -19615,7 +19629,7 @@ void QCPLegend::parentPlotInitialized(QCustomPlot *parentPlot)
/* including file 'src/layoutelements/layoutelement-textelement.cpp' */
/* modified 2021-03-29T02:30:44, size 12925 */
/* modified 2022-11-06T12:45:56, size 12925 */
////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////// QCPTextElement
@@ -20021,7 +20035,7 @@ QColor QCPTextElement::mainTextColor() const
/* including file 'src/layoutelements/layoutelement-colorscale.cpp' */
/* modified 2021-03-29T02:30:44, size 26531 */
/* modified 2022-11-06T12:45:56, size 26531 */
////////////////////////////////////////////////////////////////////////////////////////////////////
@@ -20705,7 +20719,7 @@ void QCPColorScaleAxisRectPrivate::axisSelectableChanged(QCPAxis::SelectablePart
/* including file 'src/plottables/plottable-graph.cpp' */
/* modified 2021-03-29T02:30:44, size 74518 */
/* modified 2022-11-06T12:45:57, size 74926 */
////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////// QCPGraphData
@@ -21535,21 +21549,37 @@ QVector<QPointF> QCPGraph::dataToImpulseLines(const QVector<QCPGraphData> &data)
{
for (int i=0; i<data.size(); ++i)
{
const double key = keyAxis->coordToPixel(data.at(i).key);
const QCPGraphData &current = data.at(i);
if (!qIsNaN(current.value))
{
const double key = keyAxis->coordToPixel(current.key);
result[i*2+0].setX(valueAxis->coordToPixel(0));
result[i*2+0].setY(key);
result[i*2+1].setX(valueAxis->coordToPixel(data.at(i).value));
result[i*2+1].setX(valueAxis->coordToPixel(current.value));
result[i*2+1].setY(key);
} else
{
result[i*2+0] = QPointF(0, 0);
result[i*2+1] = QPointF(0, 0);
}
}
} else // key axis is horizontal
{
for (int i=0; i<data.size(); ++i)
{
const QCPGraphData &current = data.at(i);
if (!qIsNaN(current.value))
{
const double key = keyAxis->coordToPixel(data.at(i).key);
result[i*2+0].setX(key);
result[i*2+0].setY(valueAxis->coordToPixel(0));
result[i*2+1].setX(key);
result[i*2+1].setY(valueAxis->coordToPixel(data.at(i).value));
} else
{
result[i*2+0] = QPointF(0, 0);
result[i*2+1] = QPointF(0, 0);
}
}
}
return result;
@@ -22463,7 +22493,7 @@ int QCPGraph::findIndexBelowY(const QVector<QPointF> *data, double y) const
/* including file 'src/plottables/plottable-curve.cpp' */
/* modified 2021-03-29T02:30:44, size 63851 */
/* modified 2022-11-06T12:45:56, size 63851 */
////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////// QCPCurveData
@@ -23921,7 +23951,7 @@ double QCPCurve::pointDistance(const QPointF &pixelPoint, QCPCurveDataContainer:
/* including file 'src/plottables/plottable-bars.cpp' */
/* modified 2021-03-29T02:30:44, size 43907 */
/* modified 2022-11-06T12:45:56, size 43907 */
////////////////////////////////////////////////////////////////////////////////////////////////////
@@ -25097,7 +25127,7 @@ void QCPBars::connectBars(QCPBars *lower, QCPBars *upper)
/* including file 'src/plottables/plottable-statisticalbox.cpp' */
/* modified 2021-03-29T02:30:44, size 28951 */
/* modified 2022-11-06T12:45:57, size 28951 */
////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////// QCPStatisticalBoxData
@@ -25759,7 +25789,7 @@ QVector<QLineF> QCPStatisticalBox::getWhiskerBarLines(QCPStatisticalBoxDataConta
/* including file 'src/plottables/plottable-colormap.cpp' */
/* modified 2021-03-29T02:30:44, size 48149 */
/* modified 2022-11-06T12:45:56, size 48189 */
////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////// QCPColorMapData
@@ -26129,8 +26159,8 @@ void QCPColorMapData::recalculateDataBounds()
{
if (mKeySize > 0 && mValueSize > 0)
{
double minHeight = mData[0];
double maxHeight = mData[0];
double minHeight = std::numeric_limits<double>::max();
double maxHeight = -std::numeric_limits<double>::max();
const int dataCount = mValueSize*mKeySize;
for (int i=0; i<dataCount; ++i)
{
@@ -26173,8 +26203,7 @@ void QCPColorMapData::clearAlpha()
void QCPColorMapData::fill(double z)
{
const int dataCount = mValueSize*mKeySize;
for (int i=0; i<dataCount; ++i)
mData[i] = z;
memset(mData, z, dataCount*sizeof(*mData));
mDataBounds = QCPRange(z, z);
mDataModified = true;
}
@@ -26193,8 +26222,7 @@ void QCPColorMapData::fillAlpha(unsigned char alpha)
if (mAlpha || createAlpha(false))
{
const int dataCount = mValueSize*mKeySize;
for (int i=0; i<dataCount; ++i)
mAlpha[i] = alpha;
memset(mAlpha, alpha, dataCount*sizeof(*mAlpha));
mDataModified = true;
}
}
@@ -26892,7 +26920,7 @@ void QCPColorMap::drawLegendIcon(QCPPainter *painter, const QRectF &rect) const
/* including file 'src/plottables/plottable-financial.cpp' */
/* modified 2021-03-29T02:30:44, size 42914 */
/* modified 2022-11-06T12:45:57, size 42914 */
////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////// QCPFinancialData
@@ -27854,7 +27882,7 @@ QRectF QCPFinancial::selectionHitBox(QCPFinancialDataContainer::const_iterator i
/* including file 'src/plottables/plottable-errorbar.cpp' */
/* modified 2021-03-29T02:30:44, size 37679 */
/* modified 2022-11-06T12:45:56, size 37679 */
////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////// QCPErrorBarsData
@@ -28822,7 +28850,7 @@ bool QCPErrorBars::rectIntersectsLine(const QRectF &pixelRect, const QLineF &lin
/* including file 'src/items/item-straightline.cpp' */
/* modified 2021-03-29T02:30:44, size 7596 */
/* modified 2022-11-06T12:45:56, size 7596 */
////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////// QCPItemStraightLine
@@ -29003,7 +29031,7 @@ QPen QCPItemStraightLine::mainPen() const
/* including file 'src/items/item-line.cpp' */
/* modified 2021-03-29T02:30:44, size 8525 */
/* modified 2022-11-06T12:45:56, size 8525 */
////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////// QCPItemLine
@@ -29234,7 +29262,7 @@ QPen QCPItemLine::mainPen() const
/* including file 'src/items/item-curve.cpp' */
/* modified 2021-03-29T02:30:44, size 7273 */
/* modified 2022-11-06T12:45:56, size 7273 */
////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////// QCPItemCurve
@@ -29403,7 +29431,7 @@ QPen QCPItemCurve::mainPen() const
/* including file 'src/items/item-rect.cpp' */
/* modified 2021-03-29T02:30:44, size 6472 */
/* modified 2022-11-06T12:45:56, size 6472 */
////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////// QCPItemRect
@@ -29560,7 +29588,7 @@ QBrush QCPItemRect::mainBrush() const
/* including file 'src/items/item-text.cpp' */
/* modified 2021-03-29T02:30:44, size 13335 */
/* modified 2022-11-06T12:45:56, size 13335 */
////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////// QCPItemText
@@ -29908,7 +29936,7 @@ QBrush QCPItemText::mainBrush() const
/* including file 'src/items/item-ellipse.cpp' */
/* modified 2021-03-29T02:30:44, size 7881 */
/* modified 2022-11-06T12:45:56, size 7881 */
////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////// QCPItemEllipse
@@ -30097,7 +30125,7 @@ QBrush QCPItemEllipse::mainBrush() const
/* including file 'src/items/item-pixmap.cpp' */
/* modified 2021-03-29T02:30:44, size 10622 */
/* modified 2022-11-06T12:45:56, size 10622 */
////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////// QCPItemPixmap
@@ -30367,7 +30395,7 @@ QPen QCPItemPixmap::mainPen() const
/* including file 'src/items/item-tracer.cpp' */
/* modified 2021-03-29T02:30:44, size 14645 */
/* modified 2022-11-06T12:45:56, size 14645 */
////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////// QCPItemTracer
@@ -30737,7 +30765,7 @@ QBrush QCPItemTracer::mainBrush() const
/* including file 'src/items/item-bracket.cpp' */
/* modified 2021-03-29T02:30:44, size 10705 */
/* modified 2022-11-06T12:45:56, size 10705 */
////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////// QCPItemBracket
@@ -30978,7 +31006,7 @@ QPen QCPItemBracket::mainPen() const
/* including file 'src/polar/radialaxis.cpp' */
/* modified 2021-03-29T02:30:44, size 49415 */
/* modified 2022-11-06T12:45:57, size 49415 */
@@ -32439,7 +32467,7 @@ QCP::Interaction QCPPolarAxisRadial::selectionCategory() const
/* including file 'src/polar/layoutelement-angularaxis.cpp' */
/* modified 2021-03-29T02:30:44, size 57266 */
/* modified 2022-11-06T12:45:57, size 57266 */
////////////////////////////////////////////////////////////////////////////////////////////////////
@@ -34130,7 +34158,7 @@ bool QCPPolarAxisAngular::registerPolarGraph(QCPPolarGraph *graph)
/* including file 'src/polar/polargrid.cpp' */
/* modified 2021-03-29T02:30:44, size 7493 */
/* modified 2022-11-06T12:45:57, size 7493 */
////////////////////////////////////////////////////////////////////////////////////////////////////
@@ -34318,7 +34346,7 @@ void QCPPolarGrid::drawAngularGrid(QCPPainter *painter, const QPointF &center, d
/* including file 'src/polar/polargraph.cpp' */
/* modified 2021-03-29T02:30:44, size 44035 */
/* modified 2022-11-06T12:45:57, size 44035 */
////////////////////////////////////////////////////////////////////////////////////////////////////
+129 -80
View File
@@ -1,7 +1,7 @@
/***************************************************************************
** **
** QCustomPlot, an easy to use, modern plotting widget for Qt **
** Copyright (C) 2011-2021 Emanuel Eichhammer **
** Copyright (C) 2011-2022 Emanuel Eichhammer **
** **
** This program is free software: you can redistribute it and/or modify **
** it under the terms of the GNU General Public License as published by **
@@ -18,9 +18,9 @@
** **
****************************************************************************
** Author: Emanuel Eichhammer **
** Website/Contact: http://www.qcustomplot.com/ **
** Date: 29.03.21 **
** Version: 2.1.0 **
** Website/Contact: https://www.qcustomplot.com/ **
** Date: 06.11.22 **
** Version: 2.1.1 **
****************************************************************************/
#ifndef QCUSTOMPLOT_H
@@ -129,10 +129,10 @@ class QCPPolarGrid;
class QCPPolarGraph;
/* including file 'src/global.h' */
/* modified 2021-03-29T02:30:44, size 16981 */
/* modified 2022-11-06T12:45:57, size 18102 */
#define QCUSTOMPLOT_VERSION_STR "2.1.0"
#define QCUSTOMPLOT_VERSION 0x020100
#define QCUSTOMPLOT_VERSION_STR "2.1.1"
#define QCUSTOMPLOT_VERSION 0x020101
// decl definitions for shared library compilation/usage:
#if defined(QT_STATIC_BUILD)
@@ -156,8 +156,35 @@ class QCPPolarGraph;
It provides QMetaObject-based reflection of its enums and flags via \a QCP::staticMetaObject.
*/
// Qt version < 6.2.0: to get metatypes Q_GADGET/Q_ENUMS/Q_FLAGS in namespace we have to make it look like a class during moc-run
#if QT_VERSION >= 0x060200 // don't use QT_VERSION_CHECK here, some moc versions don't understand it
namespace QCP {
Q_NAMESPACE
Q_NAMESPACE // this is how to add the staticMetaObject to namespaces in newer Qt versions
#else // Qt version older than 6.2.0
# ifndef Q_MOC_RUN
namespace QCP {
# else // not in moc run
class QCP {
Q_GADGET
Q_ENUMS(ExportPen)
Q_ENUMS(ResolutionUnit)
Q_ENUMS(SignDomain)
Q_ENUMS(MarginSide)
Q_ENUMS(AntialiasedElement)
Q_ENUMS(PlottingHint)
Q_ENUMS(Interaction)
Q_ENUMS(SelectionRectMode)
Q_ENUMS(SelectionType)
Q_FLAGS(AntialiasedElements)
Q_FLAGS(PlottingHints)
Q_FLAGS(MarginSides)
Q_FLAGS(Interactions)
public:
# endif
#endif
/*!
Defines the different units in which the image resolution can be specified in the export
@@ -300,20 +327,6 @@ enum SelectionType { stNone ///< The plottable is not selectable
,stMultipleDataRanges ///< Any combination of data points/ranges can be selected
};
Q_ENUM_NS(ExportPen)
Q_ENUM_NS(ResolutionUnit)
Q_ENUM_NS(SignDomain)
Q_ENUM_NS(MarginSide)
Q_FLAG_NS(MarginSides)
Q_ENUM_NS(AntialiasedElement)
Q_FLAG_NS(AntialiasedElements)
Q_ENUM_NS(PlottingHint)
Q_FLAG_NS(PlottingHints)
Q_ENUM_NS(Interaction)
Q_FLAG_NS(Interactions)
Q_ENUM_NS(SelectionRectMode)
Q_ENUM_NS(SelectionType)
/*! \internal
Returns whether the specified \a value is considered an invalid data value for plottables (i.e.
@@ -374,21 +387,55 @@ inline int getMarginValue(const QMargins &margins, QCP::MarginSide side)
return 0;
}
// for newer Qt versions we have to declare the enums/flags as metatypes inside the namespace using Q_ENUM_NS/Q_FLAG_NS:
// if you change anything here, don't forget to change it for older Qt versions below, too,
// and at the start of the namespace in the fake moc-run class
#if QT_VERSION >= 0x060200
Q_ENUM_NS(ExportPen)
Q_ENUM_NS(ResolutionUnit)
Q_ENUM_NS(SignDomain)
Q_ENUM_NS(MarginSide)
Q_ENUM_NS(AntialiasedElement)
Q_ENUM_NS(PlottingHint)
Q_ENUM_NS(Interaction)
Q_ENUM_NS(SelectionRectMode)
Q_ENUM_NS(SelectionType)
extern const QMetaObject staticMetaObject; // in moc-run we create a static meta object for QCP "fake" object. This line is the link to it via QCP::staticMetaObject in normal operation as namespace
Q_FLAG_NS(AntialiasedElements)
Q_FLAG_NS(PlottingHints)
Q_FLAG_NS(MarginSides)
Q_FLAG_NS(Interactions)
#else
extern const QMetaObject staticMetaObject;
#endif
} // end of namespace QCP
Q_DECLARE_OPERATORS_FOR_FLAGS(QCP::AntialiasedElements)
Q_DECLARE_OPERATORS_FOR_FLAGS(QCP::PlottingHints)
Q_DECLARE_OPERATORS_FOR_FLAGS(QCP::MarginSides)
Q_DECLARE_OPERATORS_FOR_FLAGS(QCP::Interactions)
//no need to use Q_DECLARE_METATYPE on enum since Q_ENUM_NS adds enum as metatype automatically
// for older Qt versions we have to declare the enums/flags as metatypes outside the namespace using Q_DECLARE_METATYPE:
// if you change anything here, don't forget to change it for newer Qt versions above, too,
// and at the start of the namespace in the fake moc-run class
#if QT_VERSION < QT_VERSION_CHECK(6, 2, 0)
Q_DECLARE_METATYPE(QCP::ExportPen)
Q_DECLARE_METATYPE(QCP::ResolutionUnit)
Q_DECLARE_METATYPE(QCP::SignDomain)
Q_DECLARE_METATYPE(QCP::MarginSide)
Q_DECLARE_METATYPE(QCP::AntialiasedElement)
Q_DECLARE_METATYPE(QCP::PlottingHint)
Q_DECLARE_METATYPE(QCP::Interaction)
Q_DECLARE_METATYPE(QCP::SelectionRectMode)
Q_DECLARE_METATYPE(QCP::SelectionType)
#endif
/* end of 'src/global.h' */
/* including file 'src/vector2d.h' */
/* modified 2021-03-29T02:30:44, size 4988 */
/* modified 2022-11-06T12:45:56, size 4988 */
class QCP_LIB_DECL QCPVector2D
{
@@ -463,7 +510,7 @@ inline QDebug operator<< (QDebug d, const QCPVector2D &vec)
/* including file 'src/painter.h' */
/* modified 2021-03-29T02:30:44, size 4035 */
/* modified 2022-11-06T12:45:56, size 4035 */
class QCP_LIB_DECL QCPPainter : public QPainter
{
@@ -522,7 +569,7 @@ Q_DECLARE_METATYPE(QCPPainter::PainterMode)
/* including file 'src/paintbuffer.h' */
/* modified 2021-03-29T02:30:44, size 5006 */
/* modified 2022-11-06T12:45:56, size 5006 */
class QCP_LIB_DECL QCPAbstractPaintBuffer
{
@@ -630,7 +677,7 @@ protected:
/* including file 'src/layer.h' */
/* modified 2021-03-29T02:30:44, size 7038 */
/* modified 2022-11-06T12:45:56, size 7038 */
class QCP_LIB_DECL QCPLayer : public QObject
{
@@ -779,7 +826,7 @@ private:
/* including file 'src/axis/range.h' */
/* modified 2021-03-29T02:30:44, size 5280 */
/* modified 2022-11-06T12:45:56, size 5280 */
class QCP_LIB_DECL QCPRange
{
@@ -897,7 +944,7 @@ inline const QCPRange operator/(const QCPRange& range, double value)
/* including file 'src/selection.h' */
/* modified 2021-03-29T02:30:44, size 8569 */
/* modified 2022-11-06T12:45:56, size 8569 */
class QCP_LIB_DECL QCPDataRange
{
@@ -1101,7 +1148,7 @@ inline QDebug operator<< (QDebug d, const QCPDataSelection &selection)
/* including file 'src/selectionrect.h' */
/* modified 2021-03-29T02:30:44, size 3354 */
/* modified 2022-11-06T12:45:56, size 3354 */
class QCP_LIB_DECL QCPSelectionRect : public QCPLayerable
{
@@ -1155,7 +1202,7 @@ protected:
/* including file 'src/layout.h' */
/* modified 2021-03-29T02:30:44, size 14279 */
/* modified 2022-11-06T12:45:56, size 14279 */
class QCP_LIB_DECL QCPMarginGroup : public QObject
{
@@ -1476,7 +1523,7 @@ Q_DECLARE_METATYPE(QCPLayoutInset::InsetPlacement)
/* including file 'src/lineending.h' */
/* modified 2021-03-29T02:30:44, size 4426 */
/* modified 2022-11-06T12:45:56, size 4426 */
class QCP_LIB_DECL QCPLineEnding
{
@@ -1540,7 +1587,7 @@ Q_DECLARE_METATYPE(QCPLineEnding::EndingStyle)
/* including file 'src/axis/labelpainter.h' */
/* modified 2021-03-29T02:30:44, size 7086 */
/* modified 2022-11-06T12:45:56, size 7086 */
class QCPLabelPainterPrivate
{
@@ -1680,7 +1727,7 @@ Q_DECLARE_METATYPE(QCPLabelPainterPrivate::AnchorSide)
/* including file 'src/axis/axisticker.h' */
/* modified 2021-03-29T02:30:44, size 4230 */
/* modified 2022-11-06T12:45:56, size 4230 */
class QCP_LIB_DECL QCPAxisTicker
{
@@ -1745,7 +1792,7 @@ Q_DECLARE_METATYPE(QSharedPointer<QCPAxisTicker>)
/* including file 'src/axis/axistickerdatetime.h' */
/* modified 2021-03-29T02:30:44, size 3600 */
/* modified 2022-11-06T12:45:56, size 3600 */
class QCP_LIB_DECL QCPAxisTickerDateTime : public QCPAxisTicker
{
@@ -1794,7 +1841,7 @@ protected:
/* including file 'src/axis/axistickertime.h' */
/* modified 2021-03-29T02:30:44, size 3542 */
/* modified 2022-11-06T12:45:56, size 3542 */
class QCP_LIB_DECL QCPAxisTickerTime : public QCPAxisTicker
{
@@ -1846,7 +1893,7 @@ Q_DECLARE_METATYPE(QCPAxisTickerTime::TimeUnit)
/* including file 'src/axis/axistickerfixed.h' */
/* modified 2021-03-29T02:30:44, size 3308 */
/* modified 2022-11-06T12:45:56, size 3308 */
class QCP_LIB_DECL QCPAxisTickerFixed : public QCPAxisTicker
{
@@ -1888,7 +1935,7 @@ Q_DECLARE_METATYPE(QCPAxisTickerFixed::ScaleStrategy)
/* including file 'src/axis/axistickertext.h' */
/* modified 2021-03-29T02:30:44, size 3090 */
/* modified 2022-11-06T12:45:56, size 3090 */
class QCP_LIB_DECL QCPAxisTickerText : public QCPAxisTicker
{
@@ -1926,7 +1973,7 @@ protected:
/* including file 'src/axis/axistickerpi.h' */
/* modified 2021-03-29T02:30:44, size 3911 */
/* modified 2022-11-06T12:45:56, size 3911 */
class QCP_LIB_DECL QCPAxisTickerPi : public QCPAxisTicker
{
@@ -1985,7 +2032,7 @@ Q_DECLARE_METATYPE(QCPAxisTickerPi::FractionStyle)
/* including file 'src/axis/axistickerlog.h' */
/* modified 2021-03-29T02:30:44, size 2594 */
/* modified 2022-11-06T12:45:56, size 2594 */
class QCP_LIB_DECL QCPAxisTickerLog : public QCPAxisTicker
{
@@ -2017,7 +2064,7 @@ protected:
/* including file 'src/axis/axis.h' */
/* modified 2021-03-29T02:30:44, size 20913 */
/* modified 2022-11-06T12:45:56, size 20913 */
class QCP_LIB_DECL QCPGrid :public QCPLayerable
{
@@ -2445,7 +2492,7 @@ protected:
/* including file 'src/scatterstyle.h' */
/* modified 2021-03-29T02:30:44, size 7275 */
/* modified 2022-11-06T12:45:56, size 7275 */
class QCP_LIB_DECL QCPScatterStyle
{
@@ -2552,7 +2599,7 @@ Q_DECLARE_METATYPE(QCPScatterStyle::ScatterShape)
/* including file 'src/datacontainer.h' */
/* modified 2021-03-29T02:30:44, size 34070 */
/* modified 2022-11-06T12:45:56, size 34305 */
/*! \relates QCPDataContainer
Returns whether the sort key of \a a is less than the sort key of \a b.
@@ -3222,6 +3269,8 @@ QCPRange QCPDataContainer<DataType>::keyRange(bool &foundRange, QCP::SignDomain
you should not use the returned QCPRange (e.g. the data container is empty or all points have the
same value).
Inf and -Inf data values are ignored.
If \a inKeyRange has both lower and upper bound set to zero (is equal to <tt>QCPRange()</tt>),
all data points are considered, without any restriction on the keys.
@@ -3258,12 +3307,12 @@ QCPRange QCPDataContainer<DataType>::valueRange(bool &foundRange, QCP::SignDomai
if (restrictKeyRange && (it->mainKey() < inKeyRange.lower || it->mainKey() > inKeyRange.upper))
continue;
current = it->valueRange();
if ((current.lower < range.lower || !haveLower) && !qIsNaN(current.lower))
if ((current.lower < range.lower || !haveLower) && !qIsNaN(current.lower) && std::isfinite(current.lower))
{
range.lower = current.lower;
haveLower = true;
}
if ((current.upper > range.upper || !haveUpper) && !qIsNaN(current.upper))
if ((current.upper > range.upper || !haveUpper) && !qIsNaN(current.upper) && std::isfinite(current.upper))
{
range.upper = current.upper;
haveUpper = true;
@@ -3276,12 +3325,12 @@ QCPRange QCPDataContainer<DataType>::valueRange(bool &foundRange, QCP::SignDomai
if (restrictKeyRange && (it->mainKey() < inKeyRange.lower || it->mainKey() > inKeyRange.upper))
continue;
current = it->valueRange();
if ((current.lower < range.lower || !haveLower) && current.lower < 0 && !qIsNaN(current.lower))
if ((current.lower < range.lower || !haveLower) && current.lower < 0 && !qIsNaN(current.lower) && std::isfinite(current.lower))
{
range.lower = current.lower;
haveLower = true;
}
if ((current.upper > range.upper || !haveUpper) && current.upper < 0 && !qIsNaN(current.upper))
if ((current.upper > range.upper || !haveUpper) && current.upper < 0 && !qIsNaN(current.upper) && std::isfinite(current.upper))
{
range.upper = current.upper;
haveUpper = true;
@@ -3294,12 +3343,12 @@ QCPRange QCPDataContainer<DataType>::valueRange(bool &foundRange, QCP::SignDomai
if (restrictKeyRange && (it->mainKey() < inKeyRange.lower || it->mainKey() > inKeyRange.upper))
continue;
current = it->valueRange();
if ((current.lower < range.lower || !haveLower) && current.lower > 0 && !qIsNaN(current.lower))
if ((current.lower < range.lower || !haveLower) && current.lower > 0 && !qIsNaN(current.lower) && std::isfinite(current.lower))
{
range.lower = current.lower;
haveLower = true;
}
if ((current.upper > range.upper || !haveUpper) && current.upper > 0 && !qIsNaN(current.upper))
if ((current.upper > range.upper || !haveUpper) && current.upper > 0 && !qIsNaN(current.upper) && std::isfinite(current.upper))
{
range.upper = current.upper;
haveUpper = true;
@@ -3394,7 +3443,7 @@ void QCPDataContainer<DataType>::performAutoSqueeze()
/* including file 'src/plottable.h' */
/* modified 2021-03-29T02:30:44, size 8461 */
/* modified 2022-11-06T12:45:56, size 8461 */
class QCP_LIB_DECL QCPSelectionDecorator
{
@@ -3551,7 +3600,7 @@ private:
/* including file 'src/item.h' */
/* modified 2021-03-29T02:30:44, size 9425 */
/* modified 2022-11-06T12:45:56, size 9425 */
class QCP_LIB_DECL QCPItemAnchor
{
@@ -3736,7 +3785,7 @@ private:
/* including file 'src/core.h' */
/* modified 2021-03-29T02:30:44, size 19304 */
/* modified 2022-11-06T12:45:56, size 19304 */
class QCP_LIB_DECL QCustomPlot : public QWidget
{
@@ -4106,7 +4155,7 @@ ItemType *QCustomPlot::itemAt(const QPointF &pos, bool onlySelectable) const
/* including file 'src/plottable1d.h' */
/* modified 2021-03-29T02:30:44, size 25638 */
/* modified 2022-11-06T12:45:56, size 25638 */
class QCPPlottableInterface1D
{
@@ -4698,7 +4747,7 @@ void QCPAbstractPlottable1D<DataType>::drawPolyline(QCPPainter *painter, const Q
/* including file 'src/colorgradient.h' */
/* modified 2021-03-29T02:30:44, size 7262 */
/* modified 2022-11-06T12:45:56, size 7262 */
class QCP_LIB_DECL QCPColorGradient
{
@@ -4801,7 +4850,7 @@ Q_DECLARE_METATYPE(QCPColorGradient::GradientPreset)
/* including file 'src/selectiondecorator-bracket.h' */
/* modified 2021-03-29T02:30:44, size 4458 */
/* modified 2022-11-06T12:45:56, size 4458 */
class QCP_LIB_DECL QCPSelectionDecoratorBracket : public QCPSelectionDecorator
{
@@ -4870,7 +4919,7 @@ Q_DECLARE_METATYPE(QCPSelectionDecoratorBracket::BracketStyle)
/* including file 'src/layoutelements/layoutelement-axisrect.h' */
/* modified 2021-03-29T02:30:44, size 7529 */
/* modified 2022-11-06T12:45:56, size 7529 */
class QCP_LIB_DECL QCPAxisRect : public QCPLayoutElement
{
@@ -4996,7 +5045,7 @@ private:
/* including file 'src/layoutelements/layoutelement-legend.h' */
/* modified 2021-03-29T02:30:44, size 10425 */
/* modified 2022-11-06T12:45:56, size 10425 */
class QCP_LIB_DECL QCPAbstractLegendItem : public QCPLayoutElement
{
@@ -5214,7 +5263,7 @@ Q_DECLARE_METATYPE(QCPLegend::SelectablePart)
/* including file 'src/layoutelements/layoutelement-textelement.h' */
/* modified 2021-03-29T02:30:44, size 5359 */
/* modified 2022-11-06T12:45:56, size 5359 */
class QCP_LIB_DECL QCPTextElement : public QCPLayoutElement
{
@@ -5301,7 +5350,7 @@ private:
/* including file 'src/layoutelements/layoutelement-colorscale.h' */
/* modified 2021-03-29T02:30:44, size 5939 */
/* modified 2022-11-06T12:45:56, size 5939 */
class QCPColorScaleAxisRectPrivate : public QCPAxisRect
@@ -5409,7 +5458,7 @@ private:
/* including file 'src/plottables/plottable-graph.h' */
/* modified 2021-03-29T02:30:44, size 9316 */
/* modified 2022-11-06T12:45:56, size 9316 */
class QCP_LIB_DECL QCPGraphData
{
@@ -5548,7 +5597,7 @@ Q_DECLARE_METATYPE(QCPGraph::LineStyle)
/* including file 'src/plottables/plottable-curve.h' */
/* modified 2021-03-29T02:30:44, size 7434 */
/* modified 2022-11-06T12:45:56, size 7434 */
class QCP_LIB_DECL QCPCurveData
{
@@ -5663,7 +5712,7 @@ Q_DECLARE_METATYPE(QCPCurve::LineStyle)
/* including file 'src/plottables/plottable-bars.h' */
/* modified 2021-03-29T02:30:44, size 8955 */
/* modified 2022-11-06T12:45:56, size 8955 */
class QCP_LIB_DECL QCPBarsGroup : public QObject
{
@@ -5851,7 +5900,7 @@ Q_DECLARE_METATYPE(QCPBars::WidthType)
/* including file 'src/plottables/plottable-statisticalbox.h' */
/* modified 2021-03-29T02:30:44, size 7522 */
/* modified 2022-11-06T12:45:56, size 7522 */
class QCP_LIB_DECL QCPStatisticalBoxData
{
@@ -5968,7 +6017,7 @@ protected:
/* including file 'src/plottables/plottable-colormap.h' */
/* modified 2021-03-29T02:30:44, size 7092 */
/* modified 2022-11-06T12:45:56, size 7092 */
class QCP_LIB_DECL QCPColorMapData
{
@@ -6104,7 +6153,7 @@ protected:
/* including file 'src/plottables/plottable-financial.h' */
/* modified 2021-03-29T02:30:44, size 8644 */
/* modified 2022-11-06T12:45:56, size 8644 */
class QCP_LIB_DECL QCPFinancialData
{
@@ -6243,7 +6292,7 @@ Q_DECLARE_METATYPE(QCPFinancial::ChartStyle)
/* including file 'src/plottables/plottable-errorbar.h' */
/* modified 2021-03-29T02:30:44, size 7749 */
/* modified 2022-11-06T12:45:56, size 7749 */
class QCP_LIB_DECL QCPErrorBarsData
{
@@ -6368,7 +6417,7 @@ protected:
/* including file 'src/items/item-straightline.h' */
/* modified 2021-03-29T02:30:44, size 3137 */
/* modified 2022-11-06T12:45:56, size 3137 */
class QCP_LIB_DECL QCPItemStraightLine : public QCPAbstractItem
{
@@ -6411,7 +6460,7 @@ protected:
/* including file 'src/items/item-line.h' */
/* modified 2021-03-29T02:30:44, size 3429 */
/* modified 2022-11-06T12:45:56, size 3429 */
class QCP_LIB_DECL QCPItemLine : public QCPAbstractItem
{
@@ -6461,7 +6510,7 @@ protected:
/* including file 'src/items/item-curve.h' */
/* modified 2021-03-29T02:30:44, size 3401 */
/* modified 2022-11-06T12:45:56, size 3401 */
class QCP_LIB_DECL QCPItemCurve : public QCPAbstractItem
{
@@ -6512,7 +6561,7 @@ protected:
/* including file 'src/items/item-rect.h' */
/* modified 2021-03-29T02:30:44, size 3710 */
/* modified 2022-11-06T12:45:56, size 3710 */
class QCP_LIB_DECL QCPItemRect : public QCPAbstractItem
{
@@ -6571,7 +6620,7 @@ protected:
/* including file 'src/items/item-text.h' */
/* modified 2021-03-29T02:30:44, size 5576 */
/* modified 2022-11-06T12:45:56, size 5576 */
class QCP_LIB_DECL QCPItemText : public QCPAbstractItem
{
@@ -6668,7 +6717,7 @@ protected:
/* including file 'src/items/item-ellipse.h' */
/* modified 2021-03-29T02:30:44, size 3890 */
/* modified 2022-11-06T12:45:56, size 3890 */
class QCP_LIB_DECL QCPItemEllipse : public QCPAbstractItem
{
@@ -6730,7 +6779,7 @@ protected:
/* including file 'src/items/item-pixmap.h' */
/* modified 2021-03-29T02:30:44, size 4407 */
/* modified 2022-11-06T12:45:56, size 4407 */
class QCP_LIB_DECL QCPItemPixmap : public QCPAbstractItem
{
@@ -6799,7 +6848,7 @@ protected:
/* including file 'src/items/item-tracer.h' */
/* modified 2021-03-29T02:30:44, size 4811 */
/* modified 2022-11-06T12:45:56, size 4811 */
class QCP_LIB_DECL QCPItemTracer : public QCPAbstractItem
{
@@ -6885,7 +6934,7 @@ Q_DECLARE_METATYPE(QCPItemTracer::TracerStyle)
/* including file 'src/items/item-bracket.h' */
/* modified 2021-03-29T02:30:44, size 3991 */
/* modified 2022-11-06T12:45:56, size 3991 */
class QCP_LIB_DECL QCPItemBracket : public QCPAbstractItem
{
@@ -6952,7 +7001,7 @@ Q_DECLARE_METATYPE(QCPItemBracket::BracketStyle)
/* including file 'src/polar/radialaxis.h' */
/* modified 2021-03-29T02:30:44, size 12227 */
/* modified 2022-11-06T12:45:56, size 12227 */
class QCP_LIB_DECL QCPPolarAxisRadial : public QCPLayerable
@@ -7204,7 +7253,7 @@ Q_DECLARE_METATYPE(QCPPolarAxisRadial::SelectablePart)
/* including file 'src/polar/layoutelement-angularaxis.h' */
/* modified 2021-03-29T02:30:44, size 13461 */
/* modified 2022-11-06T12:45:56, size 13461 */
class QCP_LIB_DECL QCPPolarAxisAngular : public QCPLayoutElement
{
@@ -7477,7 +7526,7 @@ Q_DECLARE_METATYPE(QCPPolarAxisAngular::SelectablePart)
/* including file 'src/polar/polargrid.h' */
/* modified 2021-03-29T02:30:44, size 4506 */
/* modified 2022-11-06T12:45:56, size 4506 */
class QCP_LIB_DECL QCPPolarGrid :public QCPLayerable
{
@@ -7557,7 +7606,7 @@ Q_DECLARE_METATYPE(QCPPolarGrid::GridType)
/* including file 'src/polar/polargraph.h' */
/* modified 2021-03-29T02:30:44, size 9606 */
/* modified 2022-11-06T12:45:56, size 9606 */
class QCP_LIB_DECL QCPPolarLegendItem : public QCPAbstractLegendItem