Updated QCP2 from the beta to 2.0.0. Didn't activate as it causes crashes.

This commit is contained in:
EspoTek 2017-12-01 15:47:39 +11:00
parent daa1d3dab2
commit 6e886c127a
4 changed files with 1074 additions and 673 deletions

5
.gitignore vendored
View File

@ -27,4 +27,7 @@ Desktop_Interface/build_android/package_source/local.properties
Desktop_Interface/build_android/package_source/local.properties~
Desktop_Interface/qrc_resources.cpp
AVR Code/USB_BULK_TEST/Debug
AVR Code/USB_BULK_TEST/Release
AVR Code/USB_BULK_TEST/Release
Desktop_Interface/debug/Labrador.vc.pdb
Desktop_Interface/debug/Labrador_resource.res
Desktop_Interface/debug/qrc_resources.cpp

View File

@ -20,6 +20,7 @@ QCP_VER = 1
DEFINES += "QCP_VER=$${QCP_VER}"
equals(QCP_VER,"2"){
DEFINES += QCUSTOMPLOT_USE_OPENGL
LIBS += -lOpenGL32
message("Using QCP2 with OpenGL support")
}

File diff suppressed because it is too large Load Diff

View File

@ -1,7 +1,7 @@
/***************************************************************************
** **
** QCustomPlot, an easy to use, modern plotting widget for Qt **
** Copyright (C) 2011-2016 Emanuel Eichhammer **
** Copyright (C) 2011-2017 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 **
@ -19,8 +19,8 @@
****************************************************************************
** Author: Emanuel Eichhammer **
** Website/Contact: http://www.qcustomplot.com/ **
** Date: 13.09.16 **
** Version: 2.0.0-beta **
** Date: 04.09.17 **
** Version: 2.0.0 **
****************************************************************************/
#ifndef QCUSTOMPLOT_H
@ -41,7 +41,10 @@
#endif
#if QT_VERSION >= QT_VERSION_CHECK(5, 4, 0)
#define QCP_DEVICEPIXELRATIO_SUPPORTED
# define QCP_DEVICEPIXELRATIO_SUPPORTED
# if QT_VERSION >= QT_VERSION_CHECK(5, 6, 0)
# define QCP_DEVICEPIXELRATIO_FLOAT
# endif
#endif
#include <QtCore/QObject>
@ -86,7 +89,6 @@
# include <QtNumeric>
# include <QtWidgets/QWidget>
# include <QtPrintSupport/QtPrintSupport>
# include <QOpenGLFunctions>
#endif
class QCPPainter;
@ -110,8 +112,8 @@ class QCPColorMap;
class QCPColorScale;
class QCPBars;
/* including file 'src/global.h', size 16131 */
/* commit 633339dadc92cb10c58ef3556b55570685fafb99 2016-09-13 23:54:56 +0200 */
/* including file 'src/global.h', size 16225 */
/* commit 9868e55d3b412f2f89766bb482fcf299e93a0988 2017-09-04 01:56:22 +0200 */
// decl definitions for shared library compilation/usage:
#if defined(QCUSTOMPLOT_COMPILE_LIBRARY)
@ -375,7 +377,7 @@ Q_DECLARE_METATYPE(QCP::SelectionType)
/* including file 'src/vector2d.h', size 4928 */
/* commit 633339dadc92cb10c58ef3556b55570685fafb99 2016-09-13 23:54:56 +0200 */
/* commit 9868e55d3b412f2f89766bb482fcf299e93a0988 2017-09-04 01:56:22 +0200 */
class QCP_LIB_DECL QCPVector2D
{
@ -449,7 +451,7 @@ inline QDebug operator<< (QDebug d, const QCPVector2D &vec)
/* including file 'src/painter.h', size 4035 */
/* commit 633339dadc92cb10c58ef3556b55570685fafb99 2016-09-13 23:54:56 +0200 */
/* commit 9868e55d3b412f2f89766bb482fcf299e93a0988 2017-09-04 01:56:22 +0200 */
class QCP_LIB_DECL QCPPainter : public QPainter
{
@ -508,7 +510,7 @@ Q_DECLARE_METATYPE(QCPPainter::PainterMode)
/* including file 'src/paintbuffer.h', size 4958 */
/* commit 633339dadc92cb10c58ef3556b55570685fafb99 2016-09-13 23:54:56 +0200 */
/* commit 9868e55d3b412f2f89766bb482fcf299e93a0988 2017-09-04 01:56:22 +0200 */
class QCP_LIB_DECL QCPAbstractPaintBuffer
{
@ -589,7 +591,7 @@ protected:
#ifdef QCP_OPENGL_FBO
class QCP_LIB_DECL QCPPaintBufferGlFbo : public QCPAbstractPaintBuffer, protected QOpenGLFunctions
class QCP_LIB_DECL QCPPaintBufferGlFbo : public QCPAbstractPaintBuffer
{
public:
explicit QCPPaintBufferGlFbo(const QSize &size, double devicePixelRatio, QWeakPointer<QOpenGLContext> glContext, QWeakPointer<QOpenGLPaintDevice> glPaintDevice);
@ -616,7 +618,7 @@ protected:
/* including file 'src/layer.h', size 6885 */
/* commit 633339dadc92cb10c58ef3556b55570685fafb99 2016-09-13 23:54:56 +0200 */
/* commit 9868e55d3b412f2f89766bb482fcf299e93a0988 2017-09-04 01:56:22 +0200 */
class QCP_LIB_DECL QCPLayer : public QObject
{
@ -765,7 +767,7 @@ private:
/* including file 'src/axis/range.h', size 5280 */
/* commit 633339dadc92cb10c58ef3556b55570685fafb99 2016-09-13 23:54:56 +0200 */
/* commit 9868e55d3b412f2f89766bb482fcf299e93a0988 2017-09-04 01:56:22 +0200 */
class QCP_LIB_DECL QCPRange
{
@ -883,7 +885,7 @@ inline const QCPRange operator/(const QCPRange& range, double value)
/* including file 'src/selection.h', size 8579 */
/* commit 633339dadc92cb10c58ef3556b55570685fafb99 2016-09-13 23:54:56 +0200 */
/* commit 9868e55d3b412f2f89766bb482fcf299e93a0988 2017-09-04 01:56:22 +0200 */
class QCP_LIB_DECL QCPDataRange
{
@ -1087,7 +1089,7 @@ inline QDebug operator<< (QDebug d, const QCPDataSelection &selection)
/* including file 'src/selectionrect.h', size 3338 */
/* commit 633339dadc92cb10c58ef3556b55570685fafb99 2016-09-13 23:54:56 +0200 */
/* commit 9868e55d3b412f2f89766bb482fcf299e93a0988 2017-09-04 01:56:22 +0200 */
class QCP_LIB_DECL QCPSelectionRect : public QCPLayerable
{
@ -1140,8 +1142,8 @@ protected:
/* end of 'src/selectionrect.h' */
/* including file 'src/layout.h', size 13128 */
/* commit 633339dadc92cb10c58ef3556b55570685fafb99 2016-09-13 23:54:56 +0200 */
/* including file 'src/layout.h', size 14224 */
/* commit 9868e55d3b412f2f89766bb482fcf299e93a0988 2017-09-04 01:56:22 +0200 */
class QCP_LIB_DECL QCPMarginGroup : public QObject
{
@ -1185,6 +1187,7 @@ class QCP_LIB_DECL QCPLayoutElement : public QCPLayerable
Q_PROPERTY(QMargins minimumMargins READ minimumMargins WRITE setMinimumMargins)
Q_PROPERTY(QSize minimumSize READ minimumSize WRITE setMinimumSize)
Q_PROPERTY(QSize maximumSize READ maximumSize WRITE setMaximumSize)
Q_PROPERTY(SizeConstraintRect sizeConstraintRect READ sizeConstraintRect WRITE setSizeConstraintRect)
/// \endcond
public:
/*!
@ -1196,6 +1199,19 @@ public:
,upLayout ///< Final phase in which the layout system places the rects of the elements
};
Q_ENUMS(UpdatePhase)
/*!
Defines to which rect of a layout element the size constraints that can be set via \ref
setMinimumSize and \ref setMaximumSize apply. The outer rect (\ref outerRect) includes the
margins (e.g. in the case of a QCPAxisRect the axis labels), whereas the inner rect (\ref rect)
does not.
\see setSizeConstraintRect
*/
enum SizeConstraintRect { scrInnerRect ///< Minimum/Maximum size constraints apply to inner rect
, scrOuterRect ///< Minimum/Maximum size constraints apply to outer rect, thus include layout element margins
};
Q_ENUMS(SizeConstraintRect)
explicit QCPLayoutElement(QCustomPlot *parentPlot=0);
virtual ~QCPLayoutElement();
@ -1209,6 +1225,7 @@ public:
QCP::MarginSides autoMargins() const { return mAutoMargins; }
QSize minimumSize() const { return mMinimumSize; }
QSize maximumSize() const { return mMaximumSize; }
SizeConstraintRect sizeConstraintRect() const { return mSizeConstraintRect; }
QCPMarginGroup *marginGroup(QCP::MarginSide side) const { return mMarginGroups.value(side, (QCPMarginGroup*)0); }
QHash<QCP::MarginSide, QCPMarginGroup*> marginGroups() const { return mMarginGroups; }
@ -1221,12 +1238,13 @@ public:
void setMinimumSize(int width, int height);
void setMaximumSize(const QSize &size);
void setMaximumSize(int width, int height);
void setSizeConstraintRect(SizeConstraintRect constraintRect);
void setMarginGroup(QCP::MarginSides sides, QCPMarginGroup *group);
// introduced virtual methods:
virtual void update(UpdatePhase phase);
virtual QSize minimumSizeHint() const;
virtual QSize maximumSizeHint() const;
virtual QSize minimumOuterSizeHint() const;
virtual QSize maximumOuterSizeHint() const;
virtual QList<QCPLayoutElement*> elements(bool recursive) const;
// reimplemented virtual methods:
@ -1236,6 +1254,7 @@ protected:
// property members:
QCPLayout *mParentLayout;
QSize mMinimumSize, mMaximumSize;
SizeConstraintRect mSizeConstraintRect;
QRect mRect, mOuterRect;
QMargins mMargins, mMinimumMargins;
QCP::MarginSides mAutoMargins;
@ -1291,6 +1310,8 @@ protected:
void adoptElement(QCPLayoutElement *el);
void releaseElement(QCPLayoutElement *el);
QVector<int> getSectionSizes(QVector<int> maxSizes, QVector<int> minSizes, QVector<double> stretchFactors, int totalSize) const;
static QSize getFinalMinimumOuterSize(const QCPLayoutElement *el);
static QSize getFinalMaximumOuterSize(const QCPLayoutElement *el);
private:
Q_DISABLE_COPY(QCPLayout)
@ -1356,8 +1377,8 @@ public:
virtual bool take(QCPLayoutElement* element) Q_DECL_OVERRIDE;
virtual QList<QCPLayoutElement*> elements(bool recursive) const Q_DECL_OVERRIDE;
virtual void simplify() Q_DECL_OVERRIDE;
virtual QSize minimumSizeHint() const Q_DECL_OVERRIDE;
virtual QSize maximumSizeHint() const Q_DECL_OVERRIDE;
virtual QSize minimumOuterSizeHint() const Q_DECL_OVERRIDE;
virtual QSize maximumOuterSizeHint() const Q_DECL_OVERRIDE;
// non-virtual methods:
QCPLayoutElement *element(int row, int column) const;
@ -1443,7 +1464,7 @@ Q_DECLARE_METATYPE(QCPLayoutInset::InsetPlacement)
/* including file 'src/lineending.h', size 4426 */
/* commit 633339dadc92cb10c58ef3556b55570685fafb99 2016-09-13 23:54:56 +0200 */
/* commit 9868e55d3b412f2f89766bb482fcf299e93a0988 2017-09-04 01:56:22 +0200 */
class QCP_LIB_DECL QCPLineEnding
{
@ -1507,7 +1528,7 @@ Q_DECLARE_METATYPE(QCPLineEnding::EndingStyle)
/* including file 'src/axis/axisticker.h', size 4177 */
/* commit 633339dadc92cb10c58ef3556b55570685fafb99 2016-09-13 23:54:56 +0200 */
/* commit 9868e55d3b412f2f89766bb482fcf299e93a0988 2017-09-04 01:56:22 +0200 */
class QCP_LIB_DECL QCPAxisTicker
{
@ -1568,7 +1589,7 @@ Q_DECLARE_METATYPE(QSharedPointer<QCPAxisTicker>)
/* including file 'src/axis/axistickerdatetime.h', size 3289 */
/* commit 633339dadc92cb10c58ef3556b55570685fafb99 2016-09-13 23:54:56 +0200 */
/* commit 9868e55d3b412f2f89766bb482fcf299e93a0988 2017-09-04 01:56:22 +0200 */
class QCP_LIB_DECL QCPAxisTickerDateTime : public QCPAxisTicker
{
@ -1608,8 +1629,8 @@ protected:
/* end of 'src/axis/axistickerdatetime.h' */
/* including file 'src/axis/axistickertime.h', size 3288 */
/* commit 633339dadc92cb10c58ef3556b55570685fafb99 2016-09-13 23:54:56 +0200 */
/* including file 'src/axis/axistickertime.h', size 3542 */
/* commit 9868e55d3b412f2f89766bb482fcf299e93a0988 2017-09-04 01:56:22 +0200 */
class QCP_LIB_DECL QCPAxisTickerTime : public QCPAxisTicker
{
@ -1620,11 +1641,11 @@ public:
\see setFieldWidth, setTimeFormat
*/
enum TimeUnit { tuMilliseconds
,tuSeconds
,tuMinutes
,tuHours
,tuDays
enum TimeUnit { tuMilliseconds ///< Milliseconds, one thousandth of a second (%%z in \ref setTimeFormat)
,tuSeconds ///< Seconds (%%s in \ref setTimeFormat)
,tuMinutes ///< Minutes (%%m in \ref setTimeFormat)
,tuHours ///< Hours (%%h in \ref setTimeFormat)
,tuDays ///< Days (%%d in \ref setTimeFormat)
};
Q_ENUMS(TimeUnit)
@ -1661,7 +1682,7 @@ Q_DECLARE_METATYPE(QCPAxisTickerTime::TimeUnit)
/* including file 'src/axis/axistickerfixed.h', size 3308 */
/* commit 633339dadc92cb10c58ef3556b55570685fafb99 2016-09-13 23:54:56 +0200 */
/* commit 9868e55d3b412f2f89766bb482fcf299e93a0988 2017-09-04 01:56:22 +0200 */
class QCP_LIB_DECL QCPAxisTickerFixed : public QCPAxisTicker
{
@ -1703,7 +1724,7 @@ Q_DECLARE_METATYPE(QCPAxisTickerFixed::ScaleStrategy)
/* including file 'src/axis/axistickertext.h', size 3085 */
/* commit 633339dadc92cb10c58ef3556b55570685fafb99 2016-09-13 23:54:56 +0200 */
/* commit 9868e55d3b412f2f89766bb482fcf299e93a0988 2017-09-04 01:56:22 +0200 */
class QCP_LIB_DECL QCPAxisTickerText : public QCPAxisTicker
{
@ -1742,7 +1763,7 @@ protected:
/* including file 'src/axis/axistickerpi.h', size 3911 */
/* commit 633339dadc92cb10c58ef3556b55570685fafb99 2016-09-13 23:54:56 +0200 */
/* commit 9868e55d3b412f2f89766bb482fcf299e93a0988 2017-09-04 01:56:22 +0200 */
class QCP_LIB_DECL QCPAxisTickerPi : public QCPAxisTicker
{
@ -1801,7 +1822,7 @@ Q_DECLARE_METATYPE(QCPAxisTickerPi::FractionStyle)
/* including file 'src/axis/axistickerlog.h', size 2663 */
/* commit 633339dadc92cb10c58ef3556b55570685fafb99 2016-09-13 23:54:56 +0200 */
/* commit 9868e55d3b412f2f89766bb482fcf299e93a0988 2017-09-04 01:56:22 +0200 */
class QCP_LIB_DECL QCPAxisTickerLog : public QCPAxisTicker
{
@ -1833,8 +1854,8 @@ protected:
/* end of 'src/axis/axistickerlog.h' */
/* including file 'src/axis/axis.h', size 20230 */
/* commit 633339dadc92cb10c58ef3556b55570685fafb99 2016-09-13 23:54:56 +0200 */
/* including file 'src/axis/axis.h', size 20634 */
/* commit 9868e55d3b412f2f89766bb482fcf299e93a0988 2017-09-04 01:56:22 +0200 */
class QCP_LIB_DECL QCPGrid :public QCPLayerable
{
@ -2147,6 +2168,9 @@ protected:
QVector<double> mSubTickVector;
bool mCachedMarginValid;
int mCachedMargin;
bool mDragging;
QCPRange mDragStartRange;
QCP::AntialiasedElements mAADragBackup, mNotAADragBackup;
// introduced virtual methods:
virtual int calculateMargin();
@ -2158,6 +2182,11 @@ protected:
// events:
virtual void selectEvent(QMouseEvent *event, bool additive, const QVariant &details, bool *selectionStateChanged) Q_DECL_OVERRIDE;
virtual void deselectEvent(bool *selectionStateChanged) Q_DECL_OVERRIDE;
// mouse events:
virtual void mousePressEvent(QMouseEvent *event, const QVariant &details);
virtual void mouseMoveEvent(QMouseEvent *event, const QPointF &startPos);
virtual void mouseReleaseEvent(QMouseEvent *event, const QPointF &startPos);
virtual void wheelEvent(QWheelEvent *event);
// non-virtual methods:
void setupTickVectors();
@ -2254,7 +2283,7 @@ protected:
/* including file 'src/scatterstyle.h', size 7275 */
/* commit 633339dadc92cb10c58ef3556b55570685fafb99 2016-09-13 23:54:56 +0200 */
/* commit 9868e55d3b412f2f89766bb482fcf299e93a0988 2017-09-04 01:56:22 +0200 */
class QCP_LIB_DECL QCPScatterStyle
{
@ -2360,8 +2389,8 @@ Q_DECLARE_METATYPE(QCPScatterStyle::ScatterShape)
/* end of 'src/scatterstyle.h' */
/* including file 'src/datacontainer.h', size 4535 */
/* commit 633339dadc92cb10c58ef3556b55570685fafb99 2016-09-13 23:54:56 +0200 */
/* including file 'src/datacontainer.h', size 4596 */
/* commit 9868e55d3b412f2f89766bb482fcf299e93a0988 2017-09-04 01:56:22 +0200 */
/*! \relates QCPDataContainer
Returns whether the sort key of \a a is less than the sort key of \a b.
@ -2372,7 +2401,7 @@ template <class DataType>
inline bool qcpLessThanSortKey(const DataType &a, const DataType &b) { return a.sortKey() < b.sortKey(); }
template <class DataType>
class QCP_LIB_DECL QCPDataContainer
class QCPDataContainer // no QCP_LIB_DECL, template class ends up in header (cpp included below)
{
public:
typedef typename QVector<DataType>::const_iterator const_iterator;
@ -2430,8 +2459,8 @@ protected:
// include implementation in header since it is a class template:
/* including file 'src/datacontainer.cpp', size 31224 */
/* commit 633339dadc92cb10c58ef3556b55570685fafb99 2016-09-13 23:54:56 +0200 */
/* including file 'src/datacontainer.cpp', size 31349 */
/* commit 9868e55d3b412f2f89766bb482fcf299e93a0988 2017-09-04 01:56:22 +0200 */
////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////// QCPDataContainer
@ -3124,8 +3153,9 @@ QCPRange QCPDataContainer<DataType>::valueRange(bool &foundRange, QCP::SignDomai
/*!
Makes sure \a begin and \a end mark a data range that is both within the bounds of this data
container's data, as well as within the specified \a dataRange.
container's data, as well as within the specified \a dataRange. The initial range described by
the passed iterators \a begin and \a end is never expanded, only contracted if necessary.
This function doesn't require for \a dataRange to be within the bounds of this data container's
valid range.
*/
@ -3205,7 +3235,7 @@ void QCPDataContainer<DataType>::performAutoSqueeze()
/* including file 'src/plottable.h', size 8312 */
/* commit 633339dadc92cb10c58ef3556b55570685fafb99 2016-09-13 23:54:56 +0200 */
/* commit 9868e55d3b412f2f89766bb482fcf299e93a0988 2017-09-04 01:56:22 +0200 */
class QCP_LIB_DECL QCPSelectionDecorator
{
@ -3361,8 +3391,8 @@ private:
/* end of 'src/plottable.h' */
/* including file 'src/item.h', size 9368 */
/* commit 633339dadc92cb10c58ef3556b55570685fafb99 2016-09-13 23:54:56 +0200 */
/* including file 'src/item.h', size 9384 */
/* commit 9868e55d3b412f2f89766bb482fcf299e93a0988 2017-09-04 01:56:22 +0200 */
class QCP_LIB_DECL QCPItemAnchor
{
@ -3439,7 +3469,7 @@ public:
QCPAxis *keyAxis() const { return mKeyAxis.data(); }
QCPAxis *valueAxis() const { return mValueAxis.data(); }
QCPAxisRect *axisRect() const;
virtual QPointF pixelPosition() const;
virtual QPointF pixelPosition() const Q_DECL_OVERRIDE;
// setters:
void setType(PositionType type);
@ -3546,8 +3576,8 @@ private:
/* end of 'src/item.h' */
/* including file 'src/core.h', size 14797 */
/* commit 633339dadc92cb10c58ef3556b55570685fafb99 2016-09-13 23:54:56 +0200 */
/* including file 'src/core.h', size 14886 */
/* commit 9868e55d3b412f2f89766bb482fcf299e93a0988 2017-09-04 01:56:22 +0200 */
class QCP_LIB_DECL QCustomPlot : public QWidget
{
@ -3752,7 +3782,9 @@ protected:
QPoint mMousePressPos;
bool mMouseHasMoved;
QPointer<QCPLayerable> mMouseEventLayerable;
QPointer<QCPLayerable> mMouseSignalLayerable;
QVariant mMouseEventLayerableDetails;
QVariant mMouseSignalLayerableDetails;
bool mReplotting;
bool mReplotQueued;
int mOpenGlMultisamples;
@ -3812,12 +3844,13 @@ Q_DECLARE_METATYPE(QCustomPlot::RefreshPriority)
/* end of 'src/core.h' */
/* including file 'src/plottable1d.h', size 4250 */
/* commit 633339dadc92cb10c58ef3556b55570685fafb99 2016-09-13 23:54:56 +0200 */
/* including file 'src/plottable1d.h', size 4544 */
/* commit 9868e55d3b412f2f89766bb482fcf299e93a0988 2017-09-04 01:56:22 +0200 */
class QCP_LIB_DECL QCPPlottableInterface1D
class QCPPlottableInterface1D
{
public:
virtual ~QCPPlottableInterface1D() {}
// introduced pure virtual methods:
virtual int dataCount() const = 0;
virtual double dataMainKey(int index) const = 0;
@ -3832,7 +3865,7 @@ public:
};
template <class DataType>
class QCP_LIB_DECL QCPAbstractPlottable1D : public QCPAbstractPlottable, public QCPPlottableInterface1D
class QCPAbstractPlottable1D : public QCPAbstractPlottable, public QCPPlottableInterface1D // no QCP_LIB_DECL, template class ends up in header (cpp included below)
{
// No Q_OBJECT macro due to template class
@ -3841,20 +3874,20 @@ public:
virtual ~QCPAbstractPlottable1D();
// virtual methods of 1d plottable interface:
virtual int dataCount() const;
virtual double dataMainKey(int index) const;
virtual double dataSortKey(int index) const;
virtual double dataMainValue(int index) const;
virtual QCPRange dataValueRange(int index) const;
virtual QPointF dataPixelPosition(int index) const;
virtual bool sortKeyIsMainKey() const;
virtual QCPDataSelection selectTestRect(const QRectF &rect, bool onlySelectable) const;
virtual int findBegin(double sortKey, bool expandedRange=true) const;
virtual int findEnd(double sortKey, bool expandedRange=true) const;
virtual int dataCount() const Q_DECL_OVERRIDE;
virtual double dataMainKey(int index) const Q_DECL_OVERRIDE;
virtual double dataSortKey(int index) const Q_DECL_OVERRIDE;
virtual double dataMainValue(int index) const Q_DECL_OVERRIDE;
virtual QCPRange dataValueRange(int index) const Q_DECL_OVERRIDE;
virtual QPointF dataPixelPosition(int index) const Q_DECL_OVERRIDE;
virtual bool sortKeyIsMainKey() const Q_DECL_OVERRIDE;
virtual QCPDataSelection selectTestRect(const QRectF &rect, bool onlySelectable) const Q_DECL_OVERRIDE;
virtual int findBegin(double sortKey, bool expandedRange=true) const Q_DECL_OVERRIDE;
virtual int findEnd(double sortKey, bool expandedRange=true) const Q_DECL_OVERRIDE;
// virtual methods:
virtual double selectTest(const QPointF &pos, bool onlySelectable, QVariant *details=0) const;
virtual QCPPlottableInterface1D *interface1D() { return this; }
// reimplemented virtual methods:
virtual double selectTest(const QPointF &pos, bool onlySelectable, QVariant *details=0) const Q_DECL_OVERRIDE;
virtual QCPPlottableInterface1D *interface1D() Q_DECL_OVERRIDE { return this; }
protected:
// property members:
@ -3872,7 +3905,7 @@ private:
// include implementation in header since it is a class template:
/* including file 'src/plottable1d.cpp', size 22240 */
/* commit 633339dadc92cb10c58ef3556b55570685fafb99 2016-09-13 23:54:56 +0200 */
/* commit 9868e55d3b412f2f89766bb482fcf299e93a0988 2017-09-04 01:56:22 +0200 */
////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////// QCPPlottableInterface1D
@ -4392,7 +4425,7 @@ void QCPAbstractPlottable1D<DataType>::drawPolyline(QCPPainter *painter, const Q
/* including file 'src/colorgradient.h', size 6243 */
/* commit 633339dadc92cb10c58ef3556b55570685fafb99 2016-09-13 23:54:56 +0200 */
/* commit 9868e55d3b412f2f89766bb482fcf299e93a0988 2017-09-04 01:56:22 +0200 */
class QCP_LIB_DECL QCPColorGradient
{
@ -4474,8 +4507,8 @@ Q_DECLARE_METATYPE(QCPColorGradient::GradientPreset)
/* end of 'src/colorgradient.h' */
/* including file 'src/selectiondecorator-bracket.h', size 4426 */
/* commit 633339dadc92cb10c58ef3556b55570685fafb99 2016-09-13 23:54:56 +0200 */
/* including file 'src/selectiondecorator-bracket.h', size 4442 */
/* commit 9868e55d3b412f2f89766bb482fcf299e93a0988 2017-09-04 01:56:22 +0200 */
class QCP_LIB_DECL QCPSelectionDecoratorBracket : public QCPSelectionDecorator
{
@ -4521,7 +4554,7 @@ public:
virtual void drawBracket(QCPPainter *painter, int direction) const;
// virtual methods:
virtual void drawDecoration(QCPPainter *painter, QCPDataSelection selection);
virtual void drawDecoration(QCPPainter *painter, QCPDataSelection selection) Q_DECL_OVERRIDE;
protected:
// property members:
@ -4543,8 +4576,8 @@ Q_DECLARE_METATYPE(QCPSelectionDecoratorBracket::BracketStyle)
/* end of 'src/selectiondecorator-bracket.h' */
/* including file 'src/layoutelements/layoutelement-axisrect.h', size 7528 */
/* commit 633339dadc92cb10c58ef3556b55570685fafb99 2016-09-13 23:54:56 +0200 */
/* including file 'src/layoutelements/layoutelement-axisrect.h', size 7507 */
/* commit 9868e55d3b412f2f89766bb482fcf299e93a0988 2017-09-04 01:56:22 +0200 */
class QCP_LIB_DECL QCPAxisRect : public QCPLayoutElement
{
@ -4641,7 +4674,6 @@ protected:
// non-property members:
QList<QCPRange> mDragStartHorzRange, mDragStartVertRange;
QCP::AntialiasedElements mAADragBackup, mNotAADragBackup;
QPoint mDragStart;
bool mDragging;
QHash<QCPAxis::AxisType, QList<QCPAxis*> > mAxes;
@ -4670,8 +4702,8 @@ private:
/* end of 'src/layoutelements/layoutelement-axisrect.h' */
/* including file 'src/layoutelements/layoutelement-legend.h', size 10392 */
/* commit 633339dadc92cb10c58ef3556b55570685fafb99 2016-09-13 23:54:56 +0200 */
/* including file 'src/layoutelements/layoutelement-legend.h', size 10397 */
/* commit 9868e55d3b412f2f89766bb482fcf299e93a0988 2017-09-04 01:56:22 +0200 */
class QCP_LIB_DECL QCPAbstractLegendItem : public QCPLayoutElement
{
@ -4752,7 +4784,7 @@ protected:
// reimplemented virtual methods:
virtual void draw(QCPPainter *painter) Q_DECL_OVERRIDE;
virtual QSize minimumSizeHint() const Q_DECL_OVERRIDE;
virtual QSize minimumOuterSizeHint() const Q_DECL_OVERRIDE;
// non-virtual methods:
QPen getIconBorderPen() const;
@ -4888,8 +4920,8 @@ Q_DECLARE_METATYPE(QCPLegend::SelectablePart)
/* end of 'src/layoutelements/layoutelement-legend.h' */
/* including file 'src/layoutelements/layoutelement-textelement.h', size 5343 */
/* commit 633339dadc92cb10c58ef3556b55570685fafb99 2016-09-13 23:54:56 +0200 */
/* including file 'src/layoutelements/layoutelement-textelement.h', size 5353 */
/* commit 9868e55d3b412f2f89766bb482fcf299e93a0988 2017-09-04 01:56:22 +0200 */
class QCP_LIB_DECL QCPTextElement : public QCPLayoutElement
{
@ -4956,8 +4988,8 @@ protected:
// reimplemented virtual methods:
virtual void applyDefaultAntialiasingHint(QCPPainter *painter) const Q_DECL_OVERRIDE;
virtual void draw(QCPPainter *painter) Q_DECL_OVERRIDE;
virtual QSize minimumSizeHint() const Q_DECL_OVERRIDE;
virtual QSize maximumSizeHint() const Q_DECL_OVERRIDE;
virtual QSize minimumOuterSizeHint() const Q_DECL_OVERRIDE;
virtual QSize maximumOuterSizeHint() const Q_DECL_OVERRIDE;
// events:
virtual void selectEvent(QMouseEvent *event, bool additive, const QVariant &details, bool *selectionStateChanged) Q_DECL_OVERRIDE;
virtual void deselectEvent(bool *selectionStateChanged) Q_DECL_OVERRIDE;
@ -4975,8 +5007,8 @@ private:
/* end of 'src/layoutelements/layoutelement-textelement.h' */
/* including file 'src/layoutelements/layoutelement-colorscale.h', size 5907 */
/* commit 633339dadc92cb10c58ef3556b55570685fafb99 2016-09-13 23:54:56 +0200 */
/* including file 'src/layoutelements/layoutelement-colorscale.h', size 5923 */
/* commit 9868e55d3b412f2f89766bb482fcf299e93a0988 2017-09-04 01:56:22 +0200 */
class QCPColorScaleAxisRectPrivate : public QCPAxisRect
@ -4995,7 +5027,7 @@ protected:
using QCPAxisRect::mouseReleaseEvent;
using QCPAxisRect::wheelEvent;
using QCPAxisRect::update;
virtual void draw(QCPPainter *painter);
virtual void draw(QCPPainter *painter) Q_DECL_OVERRIDE;
void updateGradientImage();
Q_SLOT void axisSelectionChanged(QCPAxis::SelectableParts selectedParts);
Q_SLOT void axisSelectableChanged(QCPAxis::SelectableParts selectableParts);
@ -5083,8 +5115,8 @@ private:
/* end of 'src/layoutelements/layoutelement-colorscale.h' */
/* including file 'src/plottables/plottable-graph.h', size 8826 */
/* commit 633339dadc92cb10c58ef3556b55570685fafb99 2016-09-13 23:54:56 +0200 */
/* including file 'src/plottables/plottable-graph.h', size 9294 */
/* commit 9868e55d3b412f2f89766bb482fcf299e93a0988 2017-09-04 01:56:22 +0200 */
class QCP_LIB_DECL QCPGraphData
{
@ -5202,11 +5234,12 @@ protected:
QVector<QPointF> dataToStepRightLines(const QVector<QCPGraphData> &data) const;
QVector<QPointF> dataToStepCenterLines(const QVector<QCPGraphData> &data) const;
QVector<QPointF> dataToImpulseLines(const QVector<QCPGraphData> &data) const;
void addFillBasePoints(QVector<QPointF> *lines) const;
void removeFillBasePoints(QVector<QPointF> *lines) const;
QPointF lowerFillBasePoint(double lowerKey) const;
QPointF upperFillBasePoint(double upperKey) const;
const QPolygonF getChannelFillPolygon(const QVector<QPointF> *lines) const;
QVector<QCPDataRange> getNonNanSegments(const QVector<QPointF> *lineData, Qt::Orientation keyOrientation) const;
QVector<QPair<QCPDataRange, QCPDataRange> > getOverlappingSegments(QVector<QCPDataRange> thisSegments, const QVector<QPointF> *thisData, QVector<QCPDataRange> otherSegments, const QVector<QPointF> *otherData) const;
bool segmentsIntersect(double aLower, double aUpper, double bLower, double bUpper, int &bPrecedence) const;
QPointF getFillBasePoint(QPointF matchingDataPoint) const;
const QPolygonF getFillPolygon(const QVector<QPointF> *lineData, QCPDataRange segment) const;
const QPolygonF getChannelFillPolygon(const QVector<QPointF> *lineData, QCPDataRange thisSegment, const QVector<QPointF> *otherData, QCPDataRange otherSegment) const;
int findIndexBelowX(const QVector<QPointF> *data, double x) const;
int findIndexAboveX(const QVector<QPointF> *data, double x) const;
int findIndexBelowY(const QVector<QPointF> *data, double y) const;
@ -5222,7 +5255,7 @@ Q_DECLARE_METATYPE(QCPGraph::LineStyle)
/* including file 'src/plottables/plottable-curve.h', size 7409 */
/* commit 633339dadc92cb10c58ef3556b55570685fafb99 2016-09-13 23:54:56 +0200 */
/* commit 9868e55d3b412f2f89766bb482fcf299e93a0988 2017-09-04 01:56:22 +0200 */
class QCP_LIB_DECL QCPCurveData
{
@ -5337,7 +5370,7 @@ Q_DECLARE_METATYPE(QCPCurve::LineStyle)
/* including file 'src/plottables/plottable-bars.h', size 8924 */
/* commit 633339dadc92cb10c58ef3556b55570685fafb99 2016-09-13 23:54:56 +0200 */
/* commit 9868e55d3b412f2f89766bb482fcf299e93a0988 2017-09-04 01:56:22 +0200 */
class QCP_LIB_DECL QCPBarsGroup : public QObject
{
@ -5525,7 +5558,7 @@ Q_DECLARE_METATYPE(QCPBars::WidthType)
/* including file 'src/plottables/plottable-statisticalbox.h', size 7516 */
/* commit 633339dadc92cb10c58ef3556b55570685fafb99 2016-09-13 23:54:56 +0200 */
/* commit 9868e55d3b412f2f89766bb482fcf299e93a0988 2017-09-04 01:56:22 +0200 */
class QCP_LIB_DECL QCPStatisticalBoxData
{
@ -5642,7 +5675,7 @@ protected:
/* including file 'src/plottables/plottable-colormap.h', size 7070 */
/* commit 633339dadc92cb10c58ef3556b55570685fafb99 2016-09-13 23:54:56 +0200 */
/* commit 9868e55d3b412f2f89766bb482fcf299e93a0988 2017-09-04 01:56:22 +0200 */
class QCP_LIB_DECL QCPColorMapData
{
@ -5778,7 +5811,7 @@ protected:
/* including file 'src/plottables/plottable-financial.h', size 8622 */
/* commit 633339dadc92cb10c58ef3556b55570685fafb99 2016-09-13 23:54:56 +0200 */
/* commit 9868e55d3b412f2f89766bb482fcf299e93a0988 2017-09-04 01:56:22 +0200 */
class QCP_LIB_DECL QCPFinancialData
{
@ -5916,8 +5949,8 @@ Q_DECLARE_METATYPE(QCPFinancial::ChartStyle)
/* end of 'src/plottables/plottable-financial.h' */
/* including file 'src/plottables/plottable-errorbar.h', size 7567 */
/* commit 633339dadc92cb10c58ef3556b55570685fafb99 2016-09-13 23:54:56 +0200 */
/* including file 'src/plottables/plottable-errorbar.h', size 7727 */
/* commit 9868e55d3b412f2f89766bb482fcf299e93a0988 2017-09-04 01:56:22 +0200 */
class QCP_LIB_DECL QCPErrorBarsData
{
@ -5996,16 +6029,16 @@ public:
void addData(double errorMinus, double errorPlus);
// virtual methods of 1d plottable interface:
virtual int dataCount() const;
virtual double dataMainKey(int index) const;
virtual double dataSortKey(int index) const;
virtual double dataMainValue(int index) const;
virtual QCPRange dataValueRange(int index) const;
virtual QPointF dataPixelPosition(int index) const;
virtual bool sortKeyIsMainKey() const;
virtual QCPDataSelection selectTestRect(const QRectF &rect, bool onlySelectable) const;
virtual int findBegin(double sortKey, bool expandedRange=true) const;
virtual int findEnd(double sortKey, bool expandedRange=true) const;
virtual int dataCount() const Q_DECL_OVERRIDE;
virtual double dataMainKey(int index) const Q_DECL_OVERRIDE;
virtual double dataSortKey(int index) const Q_DECL_OVERRIDE;
virtual double dataMainValue(int index) const Q_DECL_OVERRIDE;
virtual QCPRange dataValueRange(int index) const Q_DECL_OVERRIDE;
virtual QPointF dataPixelPosition(int index) const Q_DECL_OVERRIDE;
virtual bool sortKeyIsMainKey() const Q_DECL_OVERRIDE;
virtual QCPDataSelection selectTestRect(const QRectF &rect, bool onlySelectable) const Q_DECL_OVERRIDE;
virtual int findBegin(double sortKey, bool expandedRange=true) const Q_DECL_OVERRIDE;
virtual int findEnd(double sortKey, bool expandedRange=true) const Q_DECL_OVERRIDE;
// reimplemented virtual methods:
virtual double selectTest(const QPointF &pos, bool onlySelectable, QVariant *details=0) const Q_DECL_OVERRIDE;
@ -6042,7 +6075,7 @@ protected:
/* including file 'src/items/item-straightline.h', size 3117 */
/* commit 633339dadc92cb10c58ef3556b55570685fafb99 2016-09-13 23:54:56 +0200 */
/* commit 9868e55d3b412f2f89766bb482fcf299e93a0988 2017-09-04 01:56:22 +0200 */
class QCP_LIB_DECL QCPItemStraightLine : public QCPAbstractItem
{
@ -6085,7 +6118,7 @@ protected:
/* including file 'src/items/item-line.h', size 3407 */
/* commit 633339dadc92cb10c58ef3556b55570685fafb99 2016-09-13 23:54:56 +0200 */
/* commit 9868e55d3b412f2f89766bb482fcf299e93a0988 2017-09-04 01:56:22 +0200 */
class QCP_LIB_DECL QCPItemLine : public QCPAbstractItem
{
@ -6135,7 +6168,7 @@ protected:
/* including file 'src/items/item-curve.h', size 3379 */
/* commit 633339dadc92cb10c58ef3556b55570685fafb99 2016-09-13 23:54:56 +0200 */
/* commit 9868e55d3b412f2f89766bb482fcf299e93a0988 2017-09-04 01:56:22 +0200 */
class QCP_LIB_DECL QCPItemCurve : public QCPAbstractItem
{
@ -6186,7 +6219,7 @@ protected:
/* including file 'src/items/item-rect.h', size 3688 */
/* commit 633339dadc92cb10c58ef3556b55570685fafb99 2016-09-13 23:54:56 +0200 */
/* commit 9868e55d3b412f2f89766bb482fcf299e93a0988 2017-09-04 01:56:22 +0200 */
class QCP_LIB_DECL QCPItemRect : public QCPAbstractItem
{
@ -6245,7 +6278,7 @@ protected:
/* including file 'src/items/item-text.h', size 5554 */
/* commit 633339dadc92cb10c58ef3556b55570685fafb99 2016-09-13 23:54:56 +0200 */
/* commit 9868e55d3b412f2f89766bb482fcf299e93a0988 2017-09-04 01:56:22 +0200 */
class QCP_LIB_DECL QCPItemText : public QCPAbstractItem
{
@ -6342,7 +6375,7 @@ protected:
/* including file 'src/items/item-ellipse.h', size 3868 */
/* commit 633339dadc92cb10c58ef3556b55570685fafb99 2016-09-13 23:54:56 +0200 */
/* commit 9868e55d3b412f2f89766bb482fcf299e93a0988 2017-09-04 01:56:22 +0200 */
class QCP_LIB_DECL QCPItemEllipse : public QCPAbstractItem
{
@ -6404,7 +6437,7 @@ protected:
/* including file 'src/items/item-pixmap.h', size 4373 */
/* commit 633339dadc92cb10c58ef3556b55570685fafb99 2016-09-13 23:54:56 +0200 */
/* commit 9868e55d3b412f2f89766bb482fcf299e93a0988 2017-09-04 01:56:22 +0200 */
class QCP_LIB_DECL QCPItemPixmap : public QCPAbstractItem
{
@ -6473,7 +6506,7 @@ protected:
/* including file 'src/items/item-tracer.h', size 4762 */
/* commit 633339dadc92cb10c58ef3556b55570685fafb99 2016-09-13 23:54:56 +0200 */
/* commit 9868e55d3b412f2f89766bb482fcf299e93a0988 2017-09-04 01:56:22 +0200 */
class QCP_LIB_DECL QCPItemTracer : public QCPAbstractItem
{
@ -6559,7 +6592,7 @@ Q_DECLARE_METATYPE(QCPItemTracer::TracerStyle)
/* including file 'src/items/item-bracket.h', size 3969 */
/* commit 633339dadc92cb10c58ef3556b55570685fafb99 2016-09-13 23:54:56 +0200 */
/* commit 9868e55d3b412f2f89766bb482fcf299e93a0988 2017-09-04 01:56:22 +0200 */
class QCP_LIB_DECL QCPItemBracket : public QCPAbstractItem
{