diff options
243 files changed, 1016 insertions, 252 deletions
diff --git a/.qmake.conf b/.qmake.conf index 1bf9543a..f8cda0e7 100644 --- a/.qmake.conf +++ b/.qmake.conf @@ -1,3 +1,3 @@ load(qt_build_config) -MODULE_VERSION = 5.12.3 +MODULE_VERSION = 5.13.0 diff --git a/examples/charts/boxplotchart/boxdatareader.cpp b/examples/charts/boxplotchart/boxdatareader.cpp index 10591135..f634bd4e 100644 --- a/examples/charts/boxplotchart/boxdatareader.cpp +++ b/examples/charts/boxplotchart/boxdatareader.cpp @@ -29,6 +29,8 @@ #include "boxdatareader.h" +#include <algorithm> + BoxDataReader::BoxDataReader(QIODevice *device) : QTextStream(device) { @@ -56,7 +58,7 @@ QBoxSet *BoxDataReader::readBox() for (int i = 1; i < strList.count(); i++) sortedList.append(strList.at(i).toDouble()); - qSort(sortedList.begin(), sortedList.end()); + std::sort(sortedList.begin(), sortedList.end()); //! [3] int count = sortedList.count(); diff --git a/src/charts/animations/axisanimation_p.h b/src/charts/animations/axisanimation_p.h index 42cf8081..43144161 100644 --- a/src/charts/animations/axisanimation_p.h +++ b/src/charts/animations/axisanimation_p.h @@ -47,7 +47,7 @@ QT_CHARTS_BEGIN_NAMESPACE class ChartAxisElement; -class QT_CHARTS_PRIVATE_EXPORT AxisAnimation: public ChartAnimation +class Q_CHARTS_PRIVATE_EXPORT AxisAnimation: public ChartAnimation { public: enum Animation { DefaultAnimation, ZoomOutAnimation, ZoomInAnimation, MoveForwardAnimation, MoveBackwordAnimation}; diff --git a/src/charts/animations/baranimation.cpp b/src/charts/animations/baranimation.cpp index d5c5f7c1..a7752272 100644 --- a/src/charts/animations/baranimation.cpp +++ b/src/charts/animations/baranimation.cpp @@ -88,4 +88,3 @@ void BarAnimation::setup(const QVector<QRectF> &oldLayout, const QVector<QRectF> QT_CHARTS_END_NAMESPACE #include "moc_baranimation_p.cpp" - diff --git a/src/charts/animations/baranimation_p.h b/src/charts/animations/baranimation_p.h index c27765d0..d0fcc286 100644 --- a/src/charts/animations/baranimation_p.h +++ b/src/charts/animations/baranimation_p.h @@ -46,7 +46,7 @@ QT_CHARTS_BEGIN_NAMESPACE class AbstractBarChartItem; -class QT_CHARTS_PRIVATE_EXPORT BarAnimation : public ChartAnimation +class Q_CHARTS_PRIVATE_EXPORT BarAnimation : public ChartAnimation { Q_OBJECT diff --git a/src/charts/animations/boxplotanimation_p.h b/src/charts/animations/boxplotanimation_p.h index 0f3cb388..83a13aea 100644 --- a/src/charts/animations/boxplotanimation_p.h +++ b/src/charts/animations/boxplotanimation_p.h @@ -49,7 +49,7 @@ QT_CHARTS_BEGIN_NAMESPACE class BoxPlotChartItem; -class QT_CHARTS_PRIVATE_EXPORT BoxPlotAnimation : public QObject +class Q_CHARTS_PRIVATE_EXPORT BoxPlotAnimation : public QObject { Q_OBJECT public: diff --git a/src/charts/animations/boxwhiskersanimation.cpp b/src/charts/animations/boxwhiskersanimation.cpp index c8bf584f..141fadd8 100644 --- a/src/charts/animations/boxwhiskersanimation.cpp +++ b/src/charts/animations/boxwhiskersanimation.cpp @@ -118,4 +118,3 @@ void BoxWhiskersAnimation::setStartData(const BoxWhiskersData &endData) QT_CHARTS_END_NAMESPACE #include "moc_boxwhiskersanimation_p.cpp" - diff --git a/src/charts/animations/boxwhiskersanimation_p.h b/src/charts/animations/boxwhiskersanimation_p.h index 99e26d7b..34f30012 100644 --- a/src/charts/animations/boxwhiskersanimation_p.h +++ b/src/charts/animations/boxwhiskersanimation_p.h @@ -49,7 +49,7 @@ QT_CHARTS_BEGIN_NAMESPACE class BoxPlotChartItem; class BoxPlotAnimation; -class QT_CHARTS_PRIVATE_EXPORT BoxWhiskersAnimation : public ChartAnimation +class Q_CHARTS_PRIVATE_EXPORT BoxWhiskersAnimation : public ChartAnimation { Q_OBJECT diff --git a/src/charts/animations/candlestickanimation_p.h b/src/charts/animations/candlestickanimation_p.h index c1b82db6..6d409b22 100644 --- a/src/charts/animations/candlestickanimation_p.h +++ b/src/charts/animations/candlestickanimation_p.h @@ -48,7 +48,7 @@ class Candlestick; class CandlestickChartItem; class CandlestickBodyWicksAnimation; -class QT_CHARTS_PRIVATE_EXPORT CandlestickAnimation : public QObject +class Q_CHARTS_PRIVATE_EXPORT CandlestickAnimation : public QObject { Q_OBJECT diff --git a/src/charts/animations/candlestickbodywicksanimation_p.h b/src/charts/animations/candlestickbodywicksanimation_p.h index 4a79cd38..cf015e08 100644 --- a/src/charts/animations/candlestickbodywicksanimation_p.h +++ b/src/charts/animations/candlestickbodywicksanimation_p.h @@ -48,7 +48,7 @@ QT_CHARTS_BEGIN_NAMESPACE class Candlestick; class CandlestickAnimation; -class QT_CHARTS_PRIVATE_EXPORT CandlestickBodyWicksAnimation : public ChartAnimation +class Q_CHARTS_PRIVATE_EXPORT CandlestickBodyWicksAnimation : public ChartAnimation { Q_OBJECT diff --git a/src/charts/animations/chartanimation_p.h b/src/charts/animations/chartanimation_p.h index 87d552b5..cfd1feee 100644 --- a/src/charts/animations/chartanimation_p.h +++ b/src/charts/animations/chartanimation_p.h @@ -47,7 +47,7 @@ QT_CHARTS_BEGIN_NAMESPACE const static int ChartAnimationDuration = 1000; -class QT_CHARTS_PRIVATE_EXPORT ChartAnimation: public QVariantAnimation +class Q_CHARTS_PRIVATE_EXPORT ChartAnimation: public QVariantAnimation { Q_OBJECT public: diff --git a/src/charts/animations/pieanimation_p.h b/src/charts/animations/pieanimation_p.h index de3c5ebc..8a9b2e5f 100644 --- a/src/charts/animations/pieanimation_p.h +++ b/src/charts/animations/pieanimation_p.h @@ -48,7 +48,7 @@ QT_CHARTS_BEGIN_NAMESPACE class PieChartItem; -class QT_CHARTS_PRIVATE_EXPORT PieAnimation : public ChartAnimation +class Q_CHARTS_PRIVATE_EXPORT PieAnimation : public ChartAnimation { Q_OBJECT diff --git a/src/charts/animations/piesliceanimation_p.h b/src/charts/animations/piesliceanimation_p.h index de962d51..15d5ed91 100644 --- a/src/charts/animations/piesliceanimation_p.h +++ b/src/charts/animations/piesliceanimation_p.h @@ -47,7 +47,7 @@ QT_CHARTS_BEGIN_NAMESPACE class PieChartItem; -class QT_CHARTS_PRIVATE_EXPORT PieSliceAnimation : public ChartAnimation +class Q_CHARTS_PRIVATE_EXPORT PieSliceAnimation : public ChartAnimation { public: PieSliceAnimation(PieSliceItem *sliceItem); diff --git a/src/charts/animations/scatteranimation_p.h b/src/charts/animations/scatteranimation_p.h index 6df74417..bb3021c1 100644 --- a/src/charts/animations/scatteranimation_p.h +++ b/src/charts/animations/scatteranimation_p.h @@ -46,7 +46,7 @@ QT_CHARTS_BEGIN_NAMESPACE class ScatterChartItem; -class QT_CHARTS_PRIVATE_EXPORT ScatterAnimation : public XYAnimation +class Q_CHARTS_PRIVATE_EXPORT ScatterAnimation : public XYAnimation { public: ScatterAnimation(ScatterChartItem *item, int duration, QEasingCurve &curve); diff --git a/src/charts/animations/splineanimation_p.h b/src/charts/animations/splineanimation_p.h index 11261aa7..d49e8523 100644 --- a/src/charts/animations/splineanimation_p.h +++ b/src/charts/animations/splineanimation_p.h @@ -49,7 +49,7 @@ QT_CHARTS_BEGIN_NAMESPACE class SplineChartItem; -class QT_CHARTS_PRIVATE_EXPORT SplineAnimation : public XYAnimation +class Q_CHARTS_PRIVATE_EXPORT SplineAnimation : public XYAnimation { public: SplineAnimation(SplineChartItem *item, int duration, QEasingCurve &curve); diff --git a/src/charts/animations/xyanimation_p.h b/src/charts/animations/xyanimation_p.h index e0f7937b..a120c559 100644 --- a/src/charts/animations/xyanimation_p.h +++ b/src/charts/animations/xyanimation_p.h @@ -47,7 +47,7 @@ QT_CHARTS_BEGIN_NAMESPACE class XYChart; -class QT_CHARTS_PRIVATE_EXPORT XYAnimation : public ChartAnimation +class Q_CHARTS_PRIVATE_EXPORT XYAnimation : public ChartAnimation { protected: enum Animation { AddPointAnimation, RemovePointAnimation, ReplacePointAnimation, NewAnimation }; diff --git a/src/charts/areachart/areachartitem.cpp b/src/charts/areachart/areachartitem.cpp index 58f2c367..e4ebf80a 100644 --- a/src/charts/areachart/areachartitem.cpp +++ b/src/charts/areachart/areachartitem.cpp @@ -278,7 +278,7 @@ void AreaChartItem::paint(QPainter *painter, const QStyleOptionGraphicsItem *opt presenter()->numberToString(m_series->upperSeries()->at(i).y())); // Position text in relation to the point - int pointLabelWidth = fm.width(pointLabel); + int pointLabelWidth = fm.horizontalAdvance(pointLabel); QPointF position(m_upper->geometryPoints().at(i)); position.setX(position.x() - pointLabelWidth / 2); position.setY(position.y() - m_series->upperSeries()->pen().width() / 2 @@ -296,7 +296,7 @@ void AreaChartItem::paint(QPainter *painter, const QStyleOptionGraphicsItem *opt presenter()->numberToString(m_series->lowerSeries()->at(i).y())); // Position text in relation to the point - int pointLabelWidth = fm.width(pointLabel); + int pointLabelWidth = fm.horizontalAdvance(pointLabel); QPointF position(m_lower->geometryPoints().at(i)); position.setX(position.x() - pointLabelWidth / 2); position.setY(position.y() - m_series->lowerSeries()->pen().width() / 2 diff --git a/src/charts/areachart/areachartitem_p.h b/src/charts/areachart/areachartitem_p.h index 3546d330..e71bf34e 100644 --- a/src/charts/areachart/areachartitem_p.h +++ b/src/charts/areachart/areachartitem_p.h @@ -49,7 +49,7 @@ QT_CHARTS_BEGIN_NAMESPACE class AreaChartItem; -class QT_CHARTS_PRIVATE_EXPORT AreaChartItem : public ChartItem +class Q_CHARTS_PRIVATE_EXPORT AreaChartItem : public ChartItem { Q_OBJECT public: @@ -114,7 +114,7 @@ private: }; -class QT_CHARTS_PRIVATE_EXPORT AreaBoundItem : public LineChartItem +class Q_CHARTS_PRIVATE_EXPORT AreaBoundItem : public LineChartItem { public: AreaBoundItem(AreaChartItem *area, QLineSeries *lineSeries,QGraphicsItem* item = 0) diff --git a/src/charts/areachart/qareaseries.cpp b/src/charts/areachart/qareaseries.cpp index f8401785..fd473c72 100644 --- a/src/charts/areachart/qareaseries.cpp +++ b/src/charts/areachart/qareaseries.cpp @@ -196,6 +196,11 @@ QT_CHARTS_BEGIN_NAMESPACE */ /*! + \qmlproperty brush AreaSeries::brush + The brush used to draw to draw the line for this series. +*/ + +/*! \qmlproperty QString AreaSeries::brushFilename The name of the file used as a brush image for the series. */ diff --git a/src/charts/areachart/qareaseries.h b/src/charts/areachart/qareaseries.h index 2b84b8d5..41b09ba5 100644 --- a/src/charts/areachart/qareaseries.h +++ b/src/charts/areachart/qareaseries.h @@ -39,7 +39,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QLineSeries; class QAreaSeriesPrivate; -class QT_CHARTS_EXPORT QAreaSeries : public QAbstractSeries +class Q_CHARTS_EXPORT QAreaSeries : public QAbstractSeries { Q_OBJECT Q_PROPERTY(QtCharts::QLineSeries *upperSeries READ upperSeries) diff --git a/src/charts/areachart/qareaseries_p.h b/src/charts/areachart/qareaseries_p.h index a4d46169..6b111d15 100644 --- a/src/charts/areachart/qareaseries_p.h +++ b/src/charts/areachart/qareaseries_p.h @@ -47,7 +47,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QAreaSeries; class QLineSeries; -class QT_CHARTS_PRIVATE_EXPORT QAreaSeriesPrivate: public QAbstractSeriesPrivate +class Q_CHARTS_PRIVATE_EXPORT QAreaSeriesPrivate: public QAbstractSeriesPrivate { Q_OBJECT diff --git a/src/charts/axis/axis.pri b/src/charts/axis/axis.pri index 340f5b35..c5efddc2 100644 --- a/src/charts/axis/axis.pri +++ b/src/charts/axis/axis.pri @@ -15,6 +15,7 @@ SOURCES += \ $$PWD/valueaxis/chartvalueaxisx.cpp \ $$PWD/valueaxis/chartvalueaxisy.cpp \ $$PWD/valueaxis/qvalueaxis.cpp \ + $$PWD/valueaxis/valueaxislabel.cpp \ $$PWD/barcategoryaxis/chartbarcategoryaxisx.cpp \ $$PWD/barcategoryaxis/chartbarcategoryaxisy.cpp \ $$PWD/barcategoryaxis/qbarcategoryaxis.cpp \ @@ -23,7 +24,8 @@ SOURCES += \ $$PWD/categoryaxis/qcategoryaxis.cpp \ $$PWD/logvalueaxis/chartlogvalueaxisx.cpp \ $$PWD/logvalueaxis/chartlogvalueaxisy.cpp \ - $$PWD/logvalueaxis/qlogvalueaxis.cpp + $$PWD/logvalueaxis/qlogvalueaxis.cpp \ + $$PWD/editableaxislabel.cpp PRIVATE_HEADERS += \ $$PWD/chartaxiselement_p.h \ @@ -35,6 +37,7 @@ PRIVATE_HEADERS += \ $$PWD/valueaxis/chartvalueaxisx_p.h \ $$PWD/valueaxis/chartvalueaxisy_p.h \ $$PWD/valueaxis/qvalueaxis_p.h \ + $$PWD/valueaxis/valueaxislabel_p.h \ $$PWD/barcategoryaxis/chartbarcategoryaxisx_p.h \ $$PWD/barcategoryaxis/chartbarcategoryaxisy_p.h \ $$PWD/barcategoryaxis/qbarcategoryaxis_p.h \ @@ -43,7 +46,8 @@ PRIVATE_HEADERS += \ $$PWD/categoryaxis/qcategoryaxis_p.h \ $$PWD/logvalueaxis/chartlogvalueaxisx_p.h \ $$PWD/logvalueaxis/chartlogvalueaxisy_p.h \ - $$PWD/logvalueaxis/qlogvalueaxis_p.h + $$PWD/logvalueaxis/qlogvalueaxis_p.h \ + $$PWD/editableaxislabel_p.h PUBLIC_HEADERS += \ $$PWD/qabstractaxis.h \ @@ -83,6 +87,7 @@ SOURCES += \ $$PWD/datetimeaxis/chartdatetimeaxisx.cpp \ $$PWD/datetimeaxis/chartdatetimeaxisy.cpp \ $$PWD/datetimeaxis/qdatetimeaxis.cpp \ + $$PWD/datetimeaxis/datetimeaxislabel.cpp \ $$PWD/datetimeaxis/polarchartdatetimeaxisangular.cpp \ $$PWD/datetimeaxis/polarchartdatetimeaxisradial.cpp @@ -90,6 +95,7 @@ PRIVATE_HEADERS += \ $$PWD/datetimeaxis/chartdatetimeaxisx_p.h \ $$PWD/datetimeaxis/chartdatetimeaxisy_p.h \ $$PWD/datetimeaxis/qdatetimeaxis_p.h \ + $$PWD/datetimeaxis/datetimeaxislabel_p.h \ $$PWD/datetimeaxis/polarchartdatetimeaxisangular_p.h \ $$PWD/datetimeaxis/polarchartdatetimeaxisradial_p.h diff --git a/src/charts/axis/barcategoryaxis/chartbarcategoryaxisx_p.h b/src/charts/axis/barcategoryaxis/chartbarcategoryaxisx_p.h index 47a32a09..0bfdd089 100644 --- a/src/charts/axis/barcategoryaxis/chartbarcategoryaxisx_p.h +++ b/src/charts/axis/barcategoryaxis/chartbarcategoryaxisx_p.h @@ -47,7 +47,7 @@ QT_CHARTS_BEGIN_NAMESPACE class ChartPresenter; class QBarCategoryAxis; -class QT_CHARTS_PRIVATE_EXPORT ChartBarCategoryAxisX : public HorizontalAxis +class Q_CHARTS_PRIVATE_EXPORT ChartBarCategoryAxisX : public HorizontalAxis { Q_OBJECT public: diff --git a/src/charts/axis/barcategoryaxis/chartbarcategoryaxisy_p.h b/src/charts/axis/barcategoryaxis/chartbarcategoryaxisy_p.h index 14732ab4..5a67f93e 100644 --- a/src/charts/axis/barcategoryaxis/chartbarcategoryaxisy_p.h +++ b/src/charts/axis/barcategoryaxis/chartbarcategoryaxisy_p.h @@ -47,7 +47,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QBarCategoryAxis; class ChartPresenter; -class QT_CHARTS_PRIVATE_EXPORT ChartBarCategoryAxisY : public VerticalAxis +class Q_CHARTS_PRIVATE_EXPORT ChartBarCategoryAxisY : public VerticalAxis { Q_OBJECT public: diff --git a/src/charts/axis/barcategoryaxis/qbarcategoryaxis.h b/src/charts/axis/barcategoryaxis/qbarcategoryaxis.h index 54763e82..d4b405c4 100644 --- a/src/charts/axis/barcategoryaxis/qbarcategoryaxis.h +++ b/src/charts/axis/barcategoryaxis/qbarcategoryaxis.h @@ -36,7 +36,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QBarCategoryAxisPrivate; -class QT_CHARTS_EXPORT QBarCategoryAxis : public QAbstractAxis +class Q_CHARTS_EXPORT QBarCategoryAxis : public QAbstractAxis { Q_OBJECT Q_PROPERTY(QStringList categories READ categories WRITE setCategories NOTIFY categoriesChanged) diff --git a/src/charts/axis/barcategoryaxis/qbarcategoryaxis_p.h b/src/charts/axis/barcategoryaxis/qbarcategoryaxis_p.h index 3101d041..4671de1e 100644 --- a/src/charts/axis/barcategoryaxis/qbarcategoryaxis_p.h +++ b/src/charts/axis/barcategoryaxis/qbarcategoryaxis_p.h @@ -47,7 +47,7 @@ QT_CHARTS_BEGIN_NAMESPACE class AbstractDomain; -class QT_CHARTS_PRIVATE_EXPORT QBarCategoryAxisPrivate : public QAbstractAxisPrivate +class Q_CHARTS_PRIVATE_EXPORT QBarCategoryAxisPrivate : public QAbstractAxisPrivate { Q_OBJECT diff --git a/src/charts/axis/cartesianchartaxis.cpp b/src/charts/axis/cartesianchartaxis.cpp index 571af7a9..935a9601 100644 --- a/src/charts/axis/cartesianchartaxis.cpp +++ b/src/charts/axis/cartesianchartaxis.cpp @@ -81,7 +81,25 @@ void CartesianChartAxis::createItems(int count) for (int i = 0; i < count; ++i) { QGraphicsLineItem *arrow = new QGraphicsLineItem(this); QGraphicsLineItem *grid = new QGraphicsLineItem(this); - QGraphicsTextItem *label = new QGraphicsTextItem(this); + QGraphicsTextItem *label; + if (axis()->type() == QtCharts::QAbstractAxis::AxisTypeValue) { + label = new ValueAxisLabel(this); + connect(static_cast<ValueAxisLabel *>(label), &ValueAxisLabel::valueChanged, + this, &ChartAxisElement::valueLabelEdited); + if (labelsEditable()) + static_cast<ValueAxisLabel *>(label)->setEditable(true); + } else if (axis()->type() == QtCharts::QAbstractAxis::AxisTypeDateTime) { + DateTimeAxisLabel *dateTimeLabel = new DateTimeAxisLabel(this); + label = dateTimeLabel; + connect(dateTimeLabel, &DateTimeAxisLabel::dateTimeChanged, + this, &ChartAxisElement::dateTimeLabelEdited); + if (labelsEditable()) + dateTimeLabel->setEditable(true); + dateTimeLabel->setFormat(static_cast<QDateTimeAxis*>(axis())->format()); + } else { + label = new QGraphicsTextItem(this); + } + label->document()->setDocumentMargin(ChartPresenter::textMargin()); arrow->setPen(axis()->linePen()); grid->setPen(axis()->gridLinePen()); @@ -271,6 +289,18 @@ QSizeF CartesianChartAxis::sizeHint(Qt::SizeHint which, const QSizeF &constraint return QSizeF(); } +void CartesianChartAxis::setDateTimeLabelsFormat(const QString &format) +{ + if (max() <= min() + || layout().size() < 1 + || axis()->type() != QAbstractAxis::AxisTypeDateTime) { + return; + } + + for (int i = 0; i < layout().size(); i++) + static_cast<DateTimeAxisLabel *>(labelItems().at(i))->setFormat(format); +} + void CartesianChartAxis::handleArrowPenChanged(const QPen &pen) { foreach (QGraphicsItem *item, arrowItems()) @@ -327,6 +357,47 @@ void CartesianChartAxis::handleShadesPenChanged(const QPen &pen) static_cast<QGraphicsRectItem *>(item)->setPen(pen); } +void CartesianChartAxis::updateLabelsValues(QValueAxis *axis) +{ + const QVector<qreal> &layout = ChartAxisElement::layout(); + if (layout.isEmpty()) + return; + + if (axis->tickType() == QValueAxis::TicksFixed) { + for (int i = 0; i < layout.size(); ++i) { + qreal value = axis->isReverse() + ? min() + ((layout.size() - 1 - i) * (max() - min()) / (layout.size() - 1)) + : min() + (i * (max() - min()) / (layout.size() - 1)); + static_cast<ValueAxisLabel *>(labelItems().at(i))->setValue(value); + } + } else { + qreal value = axis->tickAnchor(); + if (value > min()) + value = value - int((value - min()) / axis->tickInterval()) * axis->tickInterval(); + else + value = value + qCeil((min() - value) / axis->tickInterval()) * axis->tickInterval(); + + int i = axis->isReverse() ? labelItems().count()-1 : 0; + while (value <= max() || qFuzzyCompare(value, max())) { + static_cast<ValueAxisLabel *>(labelItems().at(i))->setValue(value); + value += axis->tickInterval(); + i += axis->isReverse() ? -1 : 1; + } + } +} + +void CartesianChartAxis::updateLabelsDateTimes() +{ + if (max() <= min() || layout().size() < 1) + return; + + for (int i = 0; i < layout().size(); i++) { + qreal value = min() + (i * (max() - min()) / (layout().size() - 1)); + static_cast<DateTimeAxisLabel *>(labelItems().at(i))->setValue( + QDateTime::fromMSecsSinceEpoch(value)); + } +} + QT_CHARTS_END_NAMESPACE #include "moc_cartesianchartaxis_p.cpp" diff --git a/src/charts/axis/cartesianchartaxis_p.h b/src/charts/axis/cartesianchartaxis_p.h index 60cabd19..3361aaf7 100644 --- a/src/charts/axis/cartesianchartaxis_p.h +++ b/src/charts/axis/cartesianchartaxis_p.h @@ -47,7 +47,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QAbstractAxis; -class QT_CHARTS_PRIVATE_EXPORT CartesianChartAxis : public ChartAxisElement +class Q_CHARTS_PRIVATE_EXPORT CartesianChartAxis : public ChartAxisElement { Q_OBJECT Q_INTERFACES(QGraphicsLayoutItem) @@ -62,6 +62,8 @@ public: virtual QSizeF sizeHint(Qt::SizeHint which, const QSizeF &constraint = QSizeF()) const; + void setDateTimeLabelsFormat(const QString &format); + protected: void setGeometry(const QRectF &size) { Q_UNUSED(size);} virtual void updateGeometry() = 0; @@ -77,6 +79,10 @@ public Q_SLOTS: virtual void handleGridLineColorChanged(const QColor &color); virtual void handleMinorGridLineColorChanged(const QColor &color); +protected: + void updateLabelsValues(QValueAxis *axis); + void updateLabelsDateTimes(); + private: void createItems(int count); void deleteItems(int count); diff --git a/src/charts/axis/categoryaxis/chartcategoryaxisx_p.h b/src/charts/axis/categoryaxis/chartcategoryaxisx_p.h index ea42aea0..9dd07f98 100644 --- a/src/charts/axis/categoryaxis/chartcategoryaxisx_p.h +++ b/src/charts/axis/categoryaxis/chartcategoryaxisx_p.h @@ -46,7 +46,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QCategoryAxis; -class QT_CHARTS_PRIVATE_EXPORT ChartCategoryAxisX : public HorizontalAxis +class Q_CHARTS_PRIVATE_EXPORT ChartCategoryAxisX : public HorizontalAxis { Q_OBJECT public: diff --git a/src/charts/axis/categoryaxis/chartcategoryaxisy_p.h b/src/charts/axis/categoryaxis/chartcategoryaxisy_p.h index 9057ed14..10b84d0f 100644 --- a/src/charts/axis/categoryaxis/chartcategoryaxisy_p.h +++ b/src/charts/axis/categoryaxis/chartcategoryaxisy_p.h @@ -46,7 +46,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QCategoryAxis; -class QT_CHARTS_PRIVATE_EXPORT ChartCategoryAxisY : public VerticalAxis +class Q_CHARTS_PRIVATE_EXPORT ChartCategoryAxisY : public VerticalAxis { Q_OBJECT public: diff --git a/src/charts/axis/categoryaxis/polarchartcategoryaxisangular.cpp b/src/charts/axis/categoryaxis/polarchartcategoryaxisangular.cpp index 08d6b8a4..890f0089 100644 --- a/src/charts/axis/categoryaxis/polarchartcategoryaxisangular.cpp +++ b/src/charts/axis/categoryaxis/polarchartcategoryaxisangular.cpp @@ -83,7 +83,6 @@ void PolarChartCategoryAxisAngular::handleCategoriesChanged() presenter()->layout()->invalidate(); } - QT_CHARTS_END_NAMESPACE #include "moc_polarchartcategoryaxisangular_p.cpp" diff --git a/src/charts/axis/categoryaxis/polarchartcategoryaxisangular_p.h b/src/charts/axis/categoryaxis/polarchartcategoryaxisangular_p.h index aef99571..2e3dec54 100644 --- a/src/charts/axis/categoryaxis/polarchartcategoryaxisangular_p.h +++ b/src/charts/axis/categoryaxis/polarchartcategoryaxisangular_p.h @@ -46,7 +46,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QCategoryAxis; -class QT_CHARTS_PRIVATE_EXPORT PolarChartCategoryAxisAngular : public PolarChartAxisAngular +class Q_CHARTS_PRIVATE_EXPORT PolarChartCategoryAxisAngular : public PolarChartAxisAngular { Q_OBJECT diff --git a/src/charts/axis/categoryaxis/polarchartcategoryaxisradial_p.h b/src/charts/axis/categoryaxis/polarchartcategoryaxisradial_p.h index b5d93e80..c9761cb0 100644 --- a/src/charts/axis/categoryaxis/polarchartcategoryaxisradial_p.h +++ b/src/charts/axis/categoryaxis/polarchartcategoryaxisradial_p.h @@ -46,7 +46,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QCategoryAxis; -class QT_CHARTS_PRIVATE_EXPORT PolarChartCategoryAxisRadial : public PolarChartAxisRadial +class Q_CHARTS_PRIVATE_EXPORT PolarChartCategoryAxisRadial : public PolarChartAxisRadial { Q_OBJECT diff --git a/src/charts/axis/categoryaxis/qcategoryaxis.h b/src/charts/axis/categoryaxis/qcategoryaxis.h index 3400aa18..6c6f9bf4 100644 --- a/src/charts/axis/categoryaxis/qcategoryaxis.h +++ b/src/charts/axis/categoryaxis/qcategoryaxis.h @@ -37,7 +37,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QCategoryAxisPrivate; -class QT_CHARTS_EXPORT QCategoryAxis : public QValueAxis +class Q_CHARTS_EXPORT QCategoryAxis : public QValueAxis { Q_OBJECT Q_PROPERTY(qreal startValue READ startValue WRITE setStartValue) diff --git a/src/charts/axis/categoryaxis/qcategoryaxis_p.h b/src/charts/axis/categoryaxis/qcategoryaxis_p.h index 1938fcb4..f0fdc0d6 100644 --- a/src/charts/axis/categoryaxis/qcategoryaxis_p.h +++ b/src/charts/axis/categoryaxis/qcategoryaxis_p.h @@ -47,7 +47,7 @@ QT_CHARTS_BEGIN_NAMESPACE typedef QPair<qreal, qreal> Range; -class QT_CHARTS_PRIVATE_EXPORT QCategoryAxisPrivate : public QValueAxisPrivate +class Q_CHARTS_PRIVATE_EXPORT QCategoryAxisPrivate : public QValueAxisPrivate { Q_OBJECT diff --git a/src/charts/axis/chartaxiselement.cpp b/src/charts/axis/chartaxiselement.cpp index fc2b3e27..62da84f4 100644 --- a/src/charts/axis/chartaxiselement.cpp +++ b/src/charts/axis/chartaxiselement.cpp @@ -157,6 +157,60 @@ void ChartAxisElement::handleLabelsPositionChanged() presenter()->layout()->invalidate(); } +void ChartAxisElement::valueLabelEdited(qreal oldValue, qreal newValue) +{ + qreal range = max() - min(); + qreal center = ((max() - min()) / 2.0) + min(); + qreal newRange = 0.0; + auto label = static_cast<ValueAxisLabel *>(this->sender()); + if ((oldValue >= center && newValue >= min()) + || (oldValue < center && newValue >= max() && oldValue != min())) { + newRange = range * ((newValue - min()) / (oldValue - min())); + if (newRange > 0) { + m_axis->setRange(min(), min() + newRange); + return; + } + } else if ((oldValue >= center && newValue <= min() && max() != oldValue) + || (oldValue < center && newValue < max())) { + newRange = range * ((max() - newValue) / (max() - oldValue)); + if (newRange > 0) { + m_axis->setRange(max() - newRange, max()); + return; + } + } + label->reloadBeforeEditContent(); +} + +void ChartAxisElement::dateTimeLabelEdited(const QDateTime &oldTime, const QDateTime &newTime) +{ + qreal range = max() - min(); + qreal center = ((max() - min()) / 2.0) + min(); + qreal newRange = 0.0; + qint64 oldValue = oldTime.toMSecsSinceEpoch(); + qint64 newValue = newTime.toMSecsSinceEpoch(); + if ((oldValue >= center && newValue >= min()) + || (oldValue < center && newValue >= max() && oldValue != min())) { + newRange = range * ((newValue - min()) / (oldValue - min())); + if (newRange > 0) { + m_axis->setRange( + QDateTime::fromMSecsSinceEpoch(min()), + QDateTime::fromMSecsSinceEpoch(min() + newRange)); + return; + } + } else if ((oldValue >= center && newValue <= min() && max() != oldValue) + || (oldValue < center && newValue < max())) { + newRange = range * ((max() - newValue) / (max() - oldValue)); + if (newRange > 0) { + m_axis->setRange(max() - newRange, max()); + m_axis->setRange( + QDateTime::fromMSecsSinceEpoch(max() - newRange), + QDateTime::fromMSecsSinceEpoch(max())); + return; + } + } + static_cast<DateTimeAxisLabel *>(this->sender())->reloadBeforeEditContent(); +} + void ChartAxisElement::handleLabelsVisibleChanged(bool visible) { QGraphicsLayoutItem::updateGeometry(); @@ -502,6 +556,34 @@ QStringList ChartAxisElement::createDateTimeLabels(qreal min, qreal max,int tick return labels; } + +bool ChartAxisElement::labelsEditable() const +{ + return m_labelsEditable; +} + +void ChartAxisElement::setLabelsEditable(bool labelsEditable) +{ + if (axis()->type() == QAbstractAxis::AxisTypeValue + || axis()->type() == QAbstractAxis::AxisTypeDateTime) { + labelGroup()->setHandlesChildEvents(!labelsEditable); + const QList<QGraphicsItem *> childItems = labelGroup()->childItems(); + for (auto item : childItems) { + switch (axis()->type()) { + case QtCharts::QAbstractAxis::AxisTypeValue: + static_cast<ValueAxisLabel *>(item)->setEditable(labelsEditable); + break; + case QtCharts::QAbstractAxis::AxisTypeDateTime: + static_cast<DateTimeAxisLabel *>(item)->setEditable(labelsEditable); + break; + default: + break; + } + } + m_labelsEditable = labelsEditable; + } +} + void ChartAxisElement::axisSelected() { emit clicked(); diff --git a/src/charts/axis/chartaxiselement_p.h b/src/charts/axis/chartaxiselement_p.h index 7aced068..32ed9425 100644 --- a/src/charts/axis/chartaxiselement_p.h +++ b/src/charts/axis/chartaxiselement_p.h @@ -43,8 +43,11 @@ #include <QtCharts/private/qchartglobal_p.h> #include <private/chartelement_p.h> #include <private/axisanimation_p.h> +#include <private/datetimeaxislabel_p.h> +#include <private/valueaxislabel_p.h> #include <QtWidgets/QGraphicsItem> #include <QtWidgets/QGraphicsLayoutItem> +#include <QtCharts/qdatetimeaxis.h> #include <QtCharts/QValueAxis> #include <QtGui/QFont> @@ -53,7 +56,7 @@ QT_CHARTS_BEGIN_NAMESPACE class ChartPresenter; class QAbstractAxis; -class QT_CHARTS_PRIVATE_EXPORT ChartAxisElement : public ChartElement, public QGraphicsLayoutItem +class Q_CHARTS_PRIVATE_EXPORT ChartAxisElement : public ChartElement, public QGraphicsLayoutItem { Q_OBJECT @@ -111,6 +114,9 @@ public: { } + bool labelsEditable() const; + void setLabelsEditable(bool labelsEditable); + protected: virtual QVector<qreal> calculateLayout() const = 0; virtual void updateLayout(QVector<qreal> &layout) = 0; @@ -155,6 +161,8 @@ public Q_SLOTS: void handleMinorArrowVisibleChanged(bool visible); void handleMinorGridVisibleChanged(bool visible); void handleLabelsPositionChanged(); + void valueLabelEdited(qreal oldValue, qreal newValue); + void dateTimeLabelEdited(const QDateTime &oldTime, const QDateTime &newTime); Q_SIGNALS: void clicked(); @@ -179,6 +187,7 @@ private: QScopedPointer<QGraphicsItemGroup> m_labels; QScopedPointer<QGraphicsTextItem> m_title; bool m_intervalAxis; + bool m_labelsEditable = false; }; QT_CHARTS_END_NAMESPACE diff --git a/src/charts/axis/datetimeaxis/chartdatetimeaxisx.cpp b/src/charts/axis/datetimeaxis/chartdatetimeaxisx.cpp index 111b3526..7b304b6c 100644 --- a/src/charts/axis/datetimeaxis/chartdatetimeaxisx.cpp +++ b/src/charts/axis/datetimeaxis/chartdatetimeaxisx.cpp @@ -71,6 +71,7 @@ void ChartDateTimeAxisX::updateGeometry() return; setLabels(createDateTimeLabels(min(), max(), layout.size(), m_axis->format())); HorizontalAxis::updateGeometry(); + updateLabelsDateTimes(); } void ChartDateTimeAxisX::handleTickCountChanged(int tick) diff --git a/src/charts/axis/datetimeaxis/chartdatetimeaxisx_p.h b/src/charts/axis/datetimeaxis/chartdatetimeaxisx_p.h index dde0c998..37653049 100644 --- a/src/charts/axis/datetimeaxis/chartdatetimeaxisx_p.h +++ b/src/charts/axis/datetimeaxis/chartdatetimeaxisx_p.h @@ -46,7 +46,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QDateTimeAxis; -class QT_CHARTS_PRIVATE_EXPORT ChartDateTimeAxisX : public HorizontalAxis +class Q_CHARTS_PRIVATE_EXPORT ChartDateTimeAxisX : public HorizontalAxis { Q_OBJECT public: diff --git a/src/charts/axis/datetimeaxis/chartdatetimeaxisy.cpp b/src/charts/axis/datetimeaxis/chartdatetimeaxisy.cpp index 489ba3cd..9f3a9eb3 100644 --- a/src/charts/axis/datetimeaxis/chartdatetimeaxisy.cpp +++ b/src/charts/axis/datetimeaxis/chartdatetimeaxisy.cpp @@ -72,6 +72,7 @@ void ChartDateTimeAxisY::updateGeometry() return; setLabels(createDateTimeLabels(min(), max(), layout.size(), m_axis->format())); VerticalAxis::updateGeometry(); + updateLabelsDateTimes(); } void ChartDateTimeAxisY::handleTickCountChanged(int tick) diff --git a/src/charts/axis/datetimeaxis/chartdatetimeaxisy_p.h b/src/charts/axis/datetimeaxis/chartdatetimeaxisy_p.h index b7346d52..01b4f876 100644 --- a/src/charts/axis/datetimeaxis/chartdatetimeaxisy_p.h +++ b/src/charts/axis/datetimeaxis/chartdatetimeaxisy_p.h @@ -46,7 +46,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QDateTimeAxis; -class QT_CHARTS_PRIVATE_EXPORT ChartDateTimeAxisY : public VerticalAxis +class Q_CHARTS_PRIVATE_EXPORT ChartDateTimeAxisY : public VerticalAxis { Q_OBJECT public: diff --git a/src/charts/axis/datetimeaxis/datetimeaxislabel.cpp b/src/charts/axis/datetimeaxis/datetimeaxislabel.cpp new file mode 100644 index 00000000..90646ae5 --- /dev/null +++ b/src/charts/axis/datetimeaxis/datetimeaxislabel.cpp @@ -0,0 +1,98 @@ +/**************************************************************************** +** +** Copyright (C) 2018 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** 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 https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ +#include "datetimeaxislabel_p.h" + +#include <QtCore/qdatetime.h> + +QT_CHARTS_BEGIN_NAMESPACE + +DateTimeAxisLabel::DateTimeAxisLabel(QGraphicsItem *parent) : + EditableAxisLabel(parent) +{ + +} + +void DateTimeAxisLabel::finishEditing() +{ + QDateTime oldDateTime = m_dateTime; + QDateTime newDateTime = QDateTime::fromString(document()->toPlainText(), m_format); + if (newDateTime.isValid() && newDateTime != m_dateTime) { + m_dateTime = newDateTime; + emit dateTimeChanged(oldDateTime, newDateTime); + } else { + document()->setHtml(m_htmlBeforeEdit); + } +} + +QDateTime DateTimeAxisLabel::value() const +{ + return m_dateTime; +} + +void DateTimeAxisLabel::setValue(const QDateTime &value) +{ + setTextInteractionFlags(Qt::NoTextInteraction); + clearFocus(); + m_dateTime = value; +} + +void DateTimeAxisLabel::resetBeforeEditValue() +{ + m_dateTime = m_dateTimeBeforeEdit; +} + +void DateTimeAxisLabel::setFormat(const QString &format) +{ + m_format = format; + // Labels should be edited as a single line regardless to their + // format because enter triggers applying the current text. + m_format.replace(QChar::fromLatin1('\n'), QChar::fromLatin1(' ')); +} + +void DateTimeAxisLabel::setInitialEditValue() +{ + m_dateTimeBeforeEdit = m_dateTime; + setHtml(m_dateTime.toString(m_format)); +} + +void DateTimeAxisLabel::keyPressEvent(QKeyEvent *event) +{ + if (isEditEndingKeyPress(event)) { + // prevent further event processing with a return + // because the focusOutEvent could have triggered + // a range change which might have invalidated the current label + return; + } + + QGraphicsTextItem::keyPressEvent(event); +} + +QT_CHARTS_END_NAMESPACE + +#include "moc_datetimeaxislabel_p.cpp" diff --git a/src/charts/axis/datetimeaxis/datetimeaxislabel_p.h b/src/charts/axis/datetimeaxis/datetimeaxislabel_p.h new file mode 100644 index 00000000..616bf14a --- /dev/null +++ b/src/charts/axis/datetimeaxis/datetimeaxislabel_p.h @@ -0,0 +1,75 @@ +/**************************************************************************** +** +** Copyright (C) 2018 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** 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 https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef DATETIMEAXISLABEL_H +#define DATETIMEAXISLABEL_H + +#include <private/editableaxislabel_p.h> + +#include <QtCore/qdatetime.h> + +QT_CHARTS_BEGIN_NAMESPACE + +class Q_CHARTS_PRIVATE_EXPORT DateTimeAxisLabel : public EditableAxisLabel +{ + Q_OBJECT +public: + DateTimeAxisLabel(QGraphicsItem *parent = nullptr); + + void keyPressEvent(QKeyEvent *event); + + QDateTime value() const; + void setValue(const QDateTime &value); + void setFormat(const QString &format); + +private: + QDateTime m_dateTime; + QDateTime m_dateTimeBeforeEdit; + QString m_format; + + void setInitialEditValue() override; + void finishEditing() override; + void resetBeforeEditValue() override; + +Q_SIGNALS: + void dateTimeChanged(const QDateTime &oldDateTime, const QDateTime &newDateTime); +}; + +QT_CHARTS_END_NAMESPACE + +#endif // VALUEAXISLABEL_H diff --git a/src/charts/axis/datetimeaxis/polarchartdatetimeaxisangular_p.h b/src/charts/axis/datetimeaxis/polarchartdatetimeaxisangular_p.h index c15362cd..9b64dc9a 100644 --- a/src/charts/axis/datetimeaxis/polarchartdatetimeaxisangular_p.h +++ b/src/charts/axis/datetimeaxis/polarchartdatetimeaxisangular_p.h @@ -46,7 +46,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QDateTimeAxis; -class QT_CHARTS_PRIVATE_EXPORT PolarChartDateTimeAxisAngular : public PolarChartAxisAngular +class Q_CHARTS_PRIVATE_EXPORT PolarChartDateTimeAxisAngular : public PolarChartAxisAngular { Q_OBJECT public: diff --git a/src/charts/axis/datetimeaxis/polarchartdatetimeaxisradial_p.h b/src/charts/axis/datetimeaxis/polarchartdatetimeaxisradial_p.h index 4d22278f..e3aed15c 100644 --- a/src/charts/axis/datetimeaxis/polarchartdatetimeaxisradial_p.h +++ b/src/charts/axis/datetimeaxis/polarchartdatetimeaxisradial_p.h @@ -46,7 +46,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QDateTimeAxis; -class QT_CHARTS_PRIVATE_EXPORT PolarChartDateTimeAxisRadial : public PolarChartAxisRadial +class Q_CHARTS_PRIVATE_EXPORT PolarChartDateTimeAxisRadial : public PolarChartAxisRadial { Q_OBJECT public: diff --git a/src/charts/axis/datetimeaxis/qdatetimeaxis.cpp b/src/charts/axis/datetimeaxis/qdatetimeaxis.cpp index a7ccd37b..dd32c299 100644 --- a/src/charts/axis/datetimeaxis/qdatetimeaxis.cpp +++ b/src/charts/axis/datetimeaxis/qdatetimeaxis.cpp @@ -259,6 +259,8 @@ void QDateTimeAxis::setFormat(QString format) Q_D(QDateTimeAxis); if (d->m_format != format) { d->m_format = format; + if (d->axisItem()) + static_cast<CartesianChartAxis*>(d->axisItem())->setDateTimeLabelsFormat(format); emit formatChanged(format); } } @@ -339,7 +341,6 @@ void QDateTimeAxisPrivate::setRange(qreal min,qreal max) } } - void QDateTimeAxisPrivate::setMin(const QVariant &min) { Q_Q(QDateTimeAxis); @@ -371,6 +372,7 @@ void QDateTimeAxisPrivate::initializeGraphics(QGraphicsItem* parent) axis = new ChartDateTimeAxisY(q,parent); if (orientation() == Qt::Horizontal) axis = new ChartDateTimeAxisX(q,parent); + axis->setLabelsEditable(q->labelsEditable()); } if (m_chart->chartType() == QChart::ChartTypePolar) { diff --git a/src/charts/axis/datetimeaxis/qdatetimeaxis.h b/src/charts/axis/datetimeaxis/qdatetimeaxis.h index 98942949..101737d3 100644 --- a/src/charts/axis/datetimeaxis/qdatetimeaxis.h +++ b/src/charts/axis/datetimeaxis/qdatetimeaxis.h @@ -40,7 +40,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QDateTimeAxisPrivate; -class QT_CHARTS_EXPORT QDateTimeAxis : public QAbstractAxis +class Q_CHARTS_EXPORT QDateTimeAxis : public QAbstractAxis { Q_OBJECT Q_PROPERTY(int tickCount READ tickCount WRITE setTickCount NOTIFY tickCountChanged) diff --git a/src/charts/axis/datetimeaxis/qdatetimeaxis_p.h b/src/charts/axis/datetimeaxis/qdatetimeaxis_p.h index 42483a06..30ddd214 100644 --- a/src/charts/axis/datetimeaxis/qdatetimeaxis_p.h +++ b/src/charts/axis/datetimeaxis/qdatetimeaxis_p.h @@ -46,7 +46,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_CHARTS_PRIVATE_EXPORT QDateTimeAxisPrivate : public QAbstractAxisPrivate +class Q_CHARTS_PRIVATE_EXPORT QDateTimeAxisPrivate : public QAbstractAxisPrivate { Q_OBJECT public: diff --git a/src/charts/axis/editableaxislabel.cpp b/src/charts/axis/editableaxislabel.cpp new file mode 100644 index 00000000..aa4b0554 --- /dev/null +++ b/src/charts/axis/editableaxislabel.cpp @@ -0,0 +1,122 @@ +/**************************************************************************** +** +** Copyright (C) 2018 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** 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 https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#include <private/editableaxislabel_p.h> + +#include <QtGui/qtextcursor.h> +#include <QtGui/qtextdocument.h> + +QT_CHARTS_BEGIN_NAMESPACE + +EditableAxisLabel::EditableAxisLabel(QGraphicsItem *parent) : + QGraphicsTextItem(parent) +{ + +} + +void EditableAxisLabel::focusInEvent(QFocusEvent *event) +{ + m_htmlBeforeEdit = toHtml(); + setTextWidth(-1); + setInitialEditValue(); + m_editing = true; + QGraphicsTextItem::focusInEvent(event); +} + +void EditableAxisLabel::focusOutEvent(QFocusEvent *event) +{ + // perform the modifications before calling finishEditing + // because finishEditing emits signals that can trigger + // range change which might invalidate the current label + QGraphicsTextItem::focusOutEvent(event); + setTextInteractionFlags(Qt::NoTextInteraction); + m_editing = false; + + finishEditing(); +} + +bool EditableAxisLabel::sceneEvent(QEvent *event) +{ + if (m_editable && event->type() == QEvent::GraphicsSceneMouseDoubleClick) { + setTextInteractionFlags(Qt::TextEditorInteraction); + + bool ret = QGraphicsTextItem::sceneEvent(event); + // QGraphicsTextItem::sceneevent needs to be processed before + // the focus and text selection + setFocus(Qt::MouseFocusReason); + QTextCursor cursor = textCursor(); + cursor.select(QTextCursor::Document); + setTextCursor(cursor); + return ret; + } + return QGraphicsTextItem::sceneEvent(event); +} + +void EditableAxisLabel::setEditable(bool editable) +{ + m_editable = editable; +} + +void EditableAxisLabel::reloadBeforeEditContent() +{ + resetBeforeEditValue(); + setHtml(m_htmlBeforeEdit); +} + +QRectF EditableAxisLabel::boundingRect() const +{ + QRectF ret = QGraphicsTextItem::boundingRect(); + + // add 2px margin to allow the cursor to + // show up properly when editing + if (m_editing) + ret.setWidth(ret.width() + 2); + return ret; +} + +bool EditableAxisLabel::isEditEndingKeyPress(QKeyEvent *event) +{ + if (event->text().length() >= 1) { + // finish editing with enter or ESC + if (event->key() == Qt::Key_Enter || + event->key() == Qt::Key_Return) { + clearFocus(); + return true; + } else if (event->key() == Qt::Key_Escape) { + document()->setHtml(m_htmlBeforeEdit); + clearFocus(); + return true; + } + } + return false; +} + +QT_CHARTS_END_NAMESPACE + +#include "moc_editableaxislabel_p.cpp" diff --git a/src/charts/axis/editableaxislabel_p.h b/src/charts/axis/editableaxislabel_p.h new file mode 100644 index 00000000..a29736c1 --- /dev/null +++ b/src/charts/axis/editableaxislabel_p.h @@ -0,0 +1,78 @@ +/**************************************************************************** +** +** Copyright (C) 2018 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** 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 https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef EDITABLEAXISLABEL_P_H +#define EDITABLEAXISLABEL_P_H + +#include <QtCharts/private/qchartglobal_p.h> + +#include <QtWidgets/qgraphicsitem.h> +#include <QtGui/qevent.h> +#include <QtGui/qtextdocument.h> + +QT_CHARTS_BEGIN_NAMESPACE + +class Q_CHARTS_PRIVATE_EXPORT EditableAxisLabel : public QGraphicsTextItem +{ + Q_OBJECT +public: + EditableAxisLabel(QGraphicsItem *parent = nullptr); + + void focusInEvent(QFocusEvent *event); + void focusOutEvent(QFocusEvent *event); + bool sceneEvent(QEvent *event); + void setEditable(bool editable); + void reloadBeforeEditContent(); + + QRectF boundingRect() const; + +protected: + QString m_htmlBeforeEdit; + bool m_editing = false; + bool m_editable = false; + + virtual void setInitialEditValue() = 0; + virtual void finishEditing() = 0; + virtual void resetBeforeEditValue() = 0; + + bool isEditEndingKeyPress(QKeyEvent *event); +}; + +QT_CHARTS_END_NAMESPACE + +#endif // EDITABLEAXISLABEL_P_H diff --git a/src/charts/axis/horizontalaxis_p.h b/src/charts/axis/horizontalaxis_p.h index 079783fc..e6b64f50 100644 --- a/src/charts/axis/horizontalaxis_p.h +++ b/src/charts/axis/horizontalaxis_p.h @@ -44,7 +44,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_CHARTS_PRIVATE_EXPORT HorizontalAxis : public CartesianChartAxis +class Q_CHARTS_PRIVATE_EXPORT HorizontalAxis : public CartesianChartAxis { public: HorizontalAxis(QAbstractAxis *axis, QGraphicsItem *item = nullptr, bool intervalAxis = false); diff --git a/src/charts/axis/linearrowitem_p.h b/src/charts/axis/linearrowitem_p.h index 58a8d12e..2ea3812f 100644 --- a/src/charts/axis/linearrowitem_p.h +++ b/src/charts/axis/linearrowitem_p.h @@ -46,7 +46,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_CHARTS_PRIVATE_EXPORT LineArrowItem: public QGraphicsLineItem +class Q_CHARTS_PRIVATE_EXPORT LineArrowItem: public QGraphicsLineItem { public: explicit LineArrowItem(ChartAxisElement *axis, QGraphicsItem *parent = 0) diff --git a/src/charts/axis/logvalueaxis/chartlogvalueaxisx_p.h b/src/charts/axis/logvalueaxis/chartlogvalueaxisx_p.h index 2edcd290..1b61a38b 100644 --- a/src/charts/axis/logvalueaxis/chartlogvalueaxisx_p.h +++ b/src/charts/axis/logvalueaxis/chartlogvalueaxisx_p.h @@ -46,7 +46,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QLogValueAxis; -class QT_CHARTS_PRIVATE_EXPORT ChartLogValueAxisX : public HorizontalAxis +class Q_CHARTS_PRIVATE_EXPORT ChartLogValueAxisX : public HorizontalAxis { Q_OBJECT diff --git a/src/charts/axis/logvalueaxis/chartlogvalueaxisy_p.h b/src/charts/axis/logvalueaxis/chartlogvalueaxisy_p.h index beb5f27e..070a02b1 100644 --- a/src/charts/axis/logvalueaxis/chartlogvalueaxisy_p.h +++ b/src/charts/axis/logvalueaxis/chartlogvalueaxisy_p.h @@ -46,7 +46,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QLogValueAxis; -class QT_CHARTS_PRIVATE_EXPORT ChartLogValueAxisY : public VerticalAxis +class Q_CHARTS_PRIVATE_EXPORT ChartLogValueAxisY : public VerticalAxis { Q_OBJECT diff --git a/src/charts/axis/logvalueaxis/polarchartlogvalueaxisangular_p.h b/src/charts/axis/logvalueaxis/polarchartlogvalueaxisangular_p.h index 6c95597a..9703ef4d 100644 --- a/src/charts/axis/logvalueaxis/polarchartlogvalueaxisangular_p.h +++ b/src/charts/axis/logvalueaxis/polarchartlogvalueaxisangular_p.h @@ -46,7 +46,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QLogValueAxis; -class QT_CHARTS_PRIVATE_EXPORT PolarChartLogValueAxisAngular : public PolarChartAxisAngular +class Q_CHARTS_PRIVATE_EXPORT PolarChartLogValueAxisAngular : public PolarChartAxisAngular { Q_OBJECT public: diff --git a/src/charts/axis/logvalueaxis/polarchartlogvalueaxisradial_p.h b/src/charts/axis/logvalueaxis/polarchartlogvalueaxisradial_p.h index 17f8a988..aece4fa1 100644 --- a/src/charts/axis/logvalueaxis/polarchartlogvalueaxisradial_p.h +++ b/src/charts/axis/logvalueaxis/polarchartlogvalueaxisradial_p.h @@ -46,7 +46,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QLogValueAxis; -class QT_CHARTS_PRIVATE_EXPORT PolarChartLogValueAxisRadial : public PolarChartAxisRadial +class Q_CHARTS_PRIVATE_EXPORT PolarChartLogValueAxisRadial : public PolarChartAxisRadial { Q_OBJECT public: diff --git a/src/charts/axis/logvalueaxis/qlogvalueaxis.h b/src/charts/axis/logvalueaxis/qlogvalueaxis.h index 1ea9f2b1..5952fc5e 100644 --- a/src/charts/axis/logvalueaxis/qlogvalueaxis.h +++ b/src/charts/axis/logvalueaxis/qlogvalueaxis.h @@ -40,7 +40,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QLogValueAxisPrivate; -class QT_CHARTS_EXPORT QLogValueAxis : public QAbstractAxis +class Q_CHARTS_EXPORT QLogValueAxis : public QAbstractAxis { Q_OBJECT Q_PROPERTY(qreal min READ min WRITE setMin NOTIFY minChanged) diff --git a/src/charts/axis/logvalueaxis/qlogvalueaxis_p.h b/src/charts/axis/logvalueaxis/qlogvalueaxis_p.h index 5f735650..85145dfe 100644 --- a/src/charts/axis/logvalueaxis/qlogvalueaxis_p.h +++ b/src/charts/axis/logvalueaxis/qlogvalueaxis_p.h @@ -45,7 +45,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_CHARTS_PRIVATE_EXPORT QLogValueAxisPrivate : public QAbstractAxisPrivate +class Q_CHARTS_PRIVATE_EXPORT QLogValueAxisPrivate : public QAbstractAxisPrivate { Q_OBJECT public: diff --git a/src/charts/axis/polarchartaxis_p.h b/src/charts/axis/polarchartaxis_p.h index 9df07e75..d8f0d9f6 100644 --- a/src/charts/axis/polarchartaxis_p.h +++ b/src/charts/axis/polarchartaxis_p.h @@ -44,7 +44,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_CHARTS_PRIVATE_EXPORT PolarChartAxis : public ChartAxisElement +class Q_CHARTS_PRIVATE_EXPORT PolarChartAxis : public ChartAxisElement { Q_OBJECT Q_INTERFACES(QGraphicsLayoutItem) diff --git a/src/charts/axis/polarchartaxisangular_p.h b/src/charts/axis/polarchartaxisangular_p.h index ac517c4f..de11e52b 100644 --- a/src/charts/axis/polarchartaxisangular_p.h +++ b/src/charts/axis/polarchartaxisangular_p.h @@ -45,7 +45,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_CHARTS_PRIVATE_EXPORT PolarChartAxisAngular : public PolarChartAxis +class Q_CHARTS_PRIVATE_EXPORT PolarChartAxisAngular : public PolarChartAxis { Q_OBJECT diff --git a/src/charts/axis/polarchartaxisradial_p.h b/src/charts/axis/polarchartaxisradial_p.h index 73fbcea4..9ec55235 100644 --- a/src/charts/axis/polarchartaxisradial_p.h +++ b/src/charts/axis/polarchartaxisradial_p.h @@ -45,7 +45,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_CHARTS_PRIVATE_EXPORT PolarChartAxisRadial : public PolarChartAxis +class Q_CHARTS_PRIVATE_EXPORT PolarChartAxisRadial : public PolarChartAxis { Q_OBJECT diff --git a/src/charts/axis/qabstractaxis.cpp b/src/charts/axis/qabstractaxis.cpp index 73fa5920..bf7d7dfb 100644 --- a/src/charts/axis/qabstractaxis.cpp +++ b/src/charts/axis/qabstractaxis.cpp @@ -368,6 +368,12 @@ QT_CHARTS_BEGIN_NAMESPACE */ /*! + \fn void QAbstractAxis::labelsEditableChanged(bool editable) + \since 5.13 + This signal is emitted when the labels editability changes. +*/ + +/*! \fn void QAbstractAxis::gridVisibleChanged(bool visible) This signal is emitted when the visibility of the grid lines of the axis changes to \a visible. */ @@ -948,6 +954,39 @@ bool QAbstractAxis::isReverse() const return d_ptr->m_reverse; } +/*! + Sets axis labels editability to \a editable. + + When the labels are editable the user will be able to change the range of the + axis conveniently by editing any of the labels. This feature is only supported + for the QValueAxis and the QDateTimeAxis. + + By default, labels are not editable. + \since 5.13 +*/ +void QAbstractAxis::setLabelsEditable(bool editable) +{ + if (d_ptr->m_labelsEditable != editable) { + // In the case if the axis already added to a chart + // set the labels editability on the axisItem(). + // Otherwise the labels editability will be set in the + // QValueAxisPrivate::initializeGraphics. + if (d_ptr->axisItem() != nullptr) + d_ptr->axisItem()->setLabelsEditable(editable); + d_ptr->m_labelsEditable = editable; + emit labelsEditableChanged(editable); + } +} + +/*! + Returns \c true if axis labels are editable. + \since 5.13 +*/ +bool QAbstractAxis::labelsEditable() const +{ + return d_ptr->m_labelsEditable; +} + void QAbstractAxis::setReverse(bool reverse) { if (d_ptr->m_reverse != reverse && type() != QAbstractAxis::AxisTypeBarCategory) { @@ -972,6 +1011,7 @@ QAbstractAxisPrivate::QAbstractAxisPrivate(QAbstractAxis *q) m_minorGridLineVisible(true), m_minorGridLinePen(QChartPrivate::defaultPen()), m_labelsVisible(true), + m_labelsEditable(false), m_labelsBrush(QChartPrivate::defaultBrush()), m_labelsFont(QChartPrivate::defaultFont()), m_labelsAngle(0), diff --git a/src/charts/axis/qabstractaxis.h b/src/charts/axis/qabstractaxis.h index 4f902679..54e736b3 100644 --- a/src/charts/axis/qabstractaxis.h +++ b/src/charts/axis/qabstractaxis.h @@ -39,7 +39,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QAbstractAxisPrivate; -class QT_CHARTS_EXPORT QAbstractAxis : public QObject +class Q_CHARTS_EXPORT QAbstractAxis : public QObject { Q_OBJECT //visibility @@ -173,6 +173,10 @@ public: void setReverse(bool reverse = true); bool isReverse() const; + //label editable handling + void setLabelsEditable(bool editable = true); + bool labelsEditable() const; + Q_SIGNALS: void visibleChanged(bool visible); void linePenChanged(const QPen &pen); @@ -199,6 +203,7 @@ Q_SIGNALS: void shadesPenChanged(const QPen &pen); void shadesBrushChanged(const QBrush &brush); void reverseChanged(bool reverse); + void labelsEditableChanged(bool editable); protected: QScopedPointer<QAbstractAxisPrivate> d_ptr; diff --git a/src/charts/axis/qabstractaxis_p.h b/src/charts/axis/qabstractaxis_p.h index 3a635d98..cbc8e85e 100644 --- a/src/charts/axis/qabstractaxis_p.h +++ b/src/charts/axis/qabstractaxis_p.h @@ -58,7 +58,7 @@ class QAbstractSeries; class ChartTheme; class ChartElement; -class QT_CHARTS_PRIVATE_EXPORT QAbstractAxisPrivate : public QObject +class Q_CHARTS_PRIVATE_EXPORT QAbstractAxisPrivate : public QObject { Q_OBJECT public: @@ -117,6 +117,7 @@ private: QPen m_minorGridLinePen; bool m_labelsVisible; + bool m_labelsEditable; QBrush m_labelsBrush; QFont m_labelsFont; int m_labelsAngle; diff --git a/src/charts/axis/valueaxis/chartvalueaxisx.cpp b/src/charts/axis/valueaxis/chartvalueaxisx.cpp index 6eeda781..3eac86e0 100644 --- a/src/charts/axis/valueaxis/chartvalueaxisx.cpp +++ b/src/charts/axis/valueaxis/chartvalueaxisx.cpp @@ -32,6 +32,7 @@ #include <private/chartpresenter_p.h> #include <QtCharts/QValueAxis> #include <private/abstractchartlayout_p.h> +#include <private/valueaxislabel_p.h> #include <QtWidgets/QGraphicsLayout> #include <QtCore/QtMath> #include <QtCore/QDebug> @@ -107,6 +108,7 @@ void ChartValueAxisX::updateGeometry() setLabels(createValueLabels(min(), max(), layout.size(), m_axis->tickInterval(), m_axis->tickAnchor(), m_axis->tickType(), m_axis->labelFormat())); HorizontalAxis::updateGeometry(); + updateLabelsValues(m_axis); } void ChartValueAxisX::handleTickCountChanged(int tick) diff --git a/src/charts/axis/valueaxis/chartvalueaxisx_p.h b/src/charts/axis/valueaxis/chartvalueaxisx_p.h index 5e8b0957..05de436e 100644 --- a/src/charts/axis/valueaxis/chartvalueaxisx_p.h +++ b/src/charts/axis/valueaxis/chartvalueaxisx_p.h @@ -46,7 +46,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QValueAxis; -class QT_CHARTS_PRIVATE_EXPORT ChartValueAxisX : public HorizontalAxis +class Q_CHARTS_PRIVATE_EXPORT ChartValueAxisX : public HorizontalAxis { Q_OBJECT public: diff --git a/src/charts/axis/valueaxis/chartvalueaxisy.cpp b/src/charts/axis/valueaxis/chartvalueaxisy.cpp index 961b292e..c4868fc2 100644 --- a/src/charts/axis/valueaxis/chartvalueaxisy.cpp +++ b/src/charts/axis/valueaxis/chartvalueaxisy.cpp @@ -32,6 +32,7 @@ #include <private/chartpresenter_p.h> #include <QtCharts/QValueAxis> #include <private/abstractchartlayout_p.h> +#include <private/valueaxislabel_p.h> #include <QtWidgets/QGraphicsLayout> #include <QtCore/QtMath> #include <QtCore/QDebug> @@ -108,6 +109,7 @@ void ChartValueAxisY::updateGeometry() setLabels(createValueLabels(min(), max(), layout.size(), m_axis->tickInterval(), m_axis->tickAnchor(), m_axis->tickType(), m_axis->labelFormat())); VerticalAxis::updateGeometry(); + updateLabelsValues(m_axis); } void ChartValueAxisY::handleTickCountChanged(int tick) diff --git a/src/charts/axis/valueaxis/chartvalueaxisy_p.h b/src/charts/axis/valueaxis/chartvalueaxisy_p.h index 72c148ac..0b3adfad 100644 --- a/src/charts/axis/valueaxis/chartvalueaxisy_p.h +++ b/src/charts/axis/valueaxis/chartvalueaxisy_p.h @@ -46,7 +46,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QValueAxis; -class QT_CHARTS_PRIVATE_EXPORT ChartValueAxisY : public VerticalAxis +class Q_CHARTS_PRIVATE_EXPORT ChartValueAxisY : public VerticalAxis { Q_OBJECT public: diff --git a/src/charts/axis/valueaxis/polarchartvalueaxisangular_p.h b/src/charts/axis/valueaxis/polarchartvalueaxisangular_p.h index 8a39f510..beb81d0a 100644 --- a/src/charts/axis/valueaxis/polarchartvalueaxisangular_p.h +++ b/src/charts/axis/valueaxis/polarchartvalueaxisangular_p.h @@ -47,7 +47,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QValueAxis; -class QT_CHARTS_PRIVATE_EXPORT PolarChartValueAxisAngular : public PolarChartAxisAngular +class Q_CHARTS_PRIVATE_EXPORT PolarChartValueAxisAngular : public PolarChartAxisAngular { Q_OBJECT public: diff --git a/src/charts/axis/valueaxis/polarchartvalueaxisradial_p.h b/src/charts/axis/valueaxis/polarchartvalueaxisradial_p.h index 8c4d4105..a1b82070 100644 --- a/src/charts/axis/valueaxis/polarchartvalueaxisradial_p.h +++ b/src/charts/axis/valueaxis/polarchartvalueaxisradial_p.h @@ -46,7 +46,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QValueAxis; -class QT_CHARTS_PRIVATE_EXPORT PolarChartValueAxisRadial : public PolarChartAxisRadial +class Q_CHARTS_PRIVATE_EXPORT PolarChartValueAxisRadial : public PolarChartAxisRadial { Q_OBJECT public: diff --git a/src/charts/axis/valueaxis/qvalueaxis.cpp b/src/charts/axis/valueaxis/qvalueaxis.cpp index 1d179e43..905168d7 100644 --- a/src/charts/axis/valueaxis/qvalueaxis.cpp +++ b/src/charts/axis/valueaxis/qvalueaxis.cpp @@ -533,6 +533,7 @@ void QValueAxisPrivate::initializeGraphics(QGraphicsItem *parent) axis = new ChartValueAxisY(q,parent); if (orientation() == Qt::Horizontal) axis = new ChartValueAxisX(q,parent); + axis->setLabelsEditable(q->labelsEditable()); } if (m_chart->chartType() == QChart::ChartTypePolar) { diff --git a/src/charts/axis/valueaxis/qvalueaxis.h b/src/charts/axis/valueaxis/qvalueaxis.h index e7bb19f4..03b82342 100644 --- a/src/charts/axis/valueaxis/qvalueaxis.h +++ b/src/charts/axis/valueaxis/qvalueaxis.h @@ -36,7 +36,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QValueAxisPrivate; -class QT_CHARTS_EXPORT QValueAxis : public QAbstractAxis +class Q_CHARTS_EXPORT QValueAxis : public QAbstractAxis { Q_OBJECT Q_PROPERTY(int tickCount READ tickCount WRITE setTickCount NOTIFY tickCountChanged) diff --git a/src/charts/axis/valueaxis/qvalueaxis_p.h b/src/charts/axis/valueaxis/qvalueaxis_p.h index ad5df817..42ed6b41 100644 --- a/src/charts/axis/valueaxis/qvalueaxis_p.h +++ b/src/charts/axis/valueaxis/qvalueaxis_p.h @@ -45,7 +45,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_CHARTS_PRIVATE_EXPORT QValueAxisPrivate : public QAbstractAxisPrivate +class Q_CHARTS_PRIVATE_EXPORT QValueAxisPrivate : public QAbstractAxisPrivate { Q_OBJECT public: diff --git a/src/charts/axis/valueaxis/valueaxislabel.cpp b/src/charts/axis/valueaxis/valueaxislabel.cpp new file mode 100644 index 00000000..ecd1cb46 --- /dev/null +++ b/src/charts/axis/valueaxis/valueaxislabel.cpp @@ -0,0 +1,104 @@ +/**************************************************************************** +** +** Copyright (C) 2018 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** 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 https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ +#include <private/valueaxislabel_p.h> + +#include <QtCore/qlocale.h> + +QT_CHARTS_BEGIN_NAMESPACE + +ValueAxisLabel::ValueAxisLabel(QGraphicsItem *parent) : + EditableAxisLabel(parent) +{ + +} + +void ValueAxisLabel::finishEditing() +{ + bool ok = false; + QLocale locale; + qreal oldValue = m_value; + qreal newValue = locale.toDouble(document()->toPlainText(), &ok); + if (ok && newValue != m_value) { + m_value = newValue; + emit valueChanged(oldValue, newValue); + } else { + document()->setHtml(m_htmlBeforeEdit); + } +} + +void ValueAxisLabel::resetBeforeEditValue() +{ + m_value = m_valueBeforeEdit; +} + +qreal ValueAxisLabel::value() const +{ + return m_value; +} + +void ValueAxisLabel::setValue(const qreal &value) +{ + setTextInteractionFlags(Qt::NoTextInteraction); + clearFocus(); + m_value = value; +} + +void ValueAxisLabel::setInitialEditValue() +{ + m_valueBeforeEdit = m_value; + setHtml(QString::number(m_value)); +} + +void ValueAxisLabel::keyPressEvent(QKeyEvent *event) +{ + if (isEditEndingKeyPress(event)) { + // prevent further event processing with a return + // because the focusOutEvent could have triggered + // a range change which might have invalidated the current label + return; + } + + if (event->text().length() >= 1) { + QLocale locale; + if (!event->text().at(0).isDigit() + && event->text().at(0) != locale.decimalPoint() + && event->text().at(0) != locale.negativeSign() + && event->text().at(0) != locale.exponential() + && event->key() != Qt::Key_Backspace + && event->key() != Qt::Key_Delete) { + event->ignore(); + return; + } + } + QGraphicsTextItem::keyPressEvent(event); +} + +QT_CHARTS_END_NAMESPACE + +#include "moc_valueaxislabel_p.cpp" diff --git a/src/charts/doc/snippets/doc_src_qmlcharts.cpp b/src/charts/axis/valueaxis/valueaxislabel_p.h index 8d3b8822..44b01920 100644 --- a/src/charts/doc/snippets/doc_src_qmlcharts.cpp +++ b/src/charts/axis/valueaxis/valueaxislabel_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2016 The Qt Company Ltd. +** Copyright (C) 2018 The Qt Company Ltd. ** Contact: https://www.qt.io/licensing/ ** ** This file is part of the Qt Charts module of the Qt Toolkit. @@ -27,6 +27,45 @@ ** ****************************************************************************/ -//! [0] -import QtCharts 2.3 -//! [0] +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef VALUEAXISLABEL_H +#define VALUEAXISLABEL_H + +#include <private/editableaxislabel_p.h> + +QT_CHARTS_BEGIN_NAMESPACE + +class Q_CHARTS_PRIVATE_EXPORT ValueAxisLabel : public EditableAxisLabel +{ + Q_OBJECT +public: + ValueAxisLabel(QGraphicsItem *parent = nullptr); + + void keyPressEvent(QKeyEvent *event); + + qreal value() const; + void setValue(const qreal &value); + +private: + qreal m_value = 0.0; + qreal m_valueBeforeEdit = 0.0; + + void setInitialEditValue() override; + void finishEditing() override; + void resetBeforeEditValue() override; + +Q_SIGNALS: + void valueChanged(qreal oldValue, qreal newValue); +}; + +QT_CHARTS_END_NAMESPACE + +#endif // VALUEAXISLABEL_H diff --git a/src/charts/axis/verticalaxis_p.h b/src/charts/axis/verticalaxis_p.h index 670854c4..52a1a536 100644 --- a/src/charts/axis/verticalaxis_p.h +++ b/src/charts/axis/verticalaxis_p.h @@ -44,7 +44,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_CHARTS_PRIVATE_EXPORT VerticalAxis : public CartesianChartAxis +class Q_CHARTS_PRIVATE_EXPORT VerticalAxis : public CartesianChartAxis { public: VerticalAxis(QAbstractAxis *axis, QGraphicsItem *item = nullptr, bool intervalAxis = false); diff --git a/src/charts/barchart/abstractbarchartitem_p.h b/src/charts/barchart/abstractbarchartitem_p.h index 7afd8ec8..92e2304a 100644 --- a/src/charts/barchart/abstractbarchartitem_p.h +++ b/src/charts/barchart/abstractbarchartitem_p.h @@ -55,7 +55,7 @@ class BarAnimation; class QBarSetPrivate; class QAbstractAxis; -class QT_CHARTS_PRIVATE_EXPORT AbstractBarChartItem : public ChartItem +class Q_CHARTS_PRIVATE_EXPORT AbstractBarChartItem : public ChartItem { Q_OBJECT public: diff --git a/src/charts/barchart/bar_p.h b/src/charts/barchart/bar_p.h index 654d88a3..d29ce5a9 100644 --- a/src/charts/barchart/bar_p.h +++ b/src/charts/barchart/bar_p.h @@ -49,7 +49,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QBarSet; // Single visual bar item of chart -class QT_CHARTS_PRIVATE_EXPORT Bar : public QObject, public QGraphicsRectItem +class Q_CHARTS_PRIVATE_EXPORT Bar : public QObject, public QGraphicsRectItem { Q_OBJECT public: diff --git a/src/charts/barchart/horizontal/bar/horizontalbarchartitem_p.h b/src/charts/barchart/horizontal/bar/horizontalbarchartitem_p.h index d9d5c515..64154e8e 100644 --- a/src/charts/barchart/horizontal/bar/horizontalbarchartitem_p.h +++ b/src/charts/barchart/horizontal/bar/horizontalbarchartitem_p.h @@ -45,7 +45,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_CHARTS_PRIVATE_EXPORT HorizontalBarChartItem : public AbstractBarChartItem +class Q_CHARTS_PRIVATE_EXPORT HorizontalBarChartItem : public AbstractBarChartItem { Q_OBJECT public: diff --git a/src/charts/barchart/horizontal/bar/qhorizontalbarseries.h b/src/charts/barchart/horizontal/bar/qhorizontalbarseries.h index c3d07e0d..bf5ed30f 100644 --- a/src/charts/barchart/horizontal/bar/qhorizontalbarseries.h +++ b/src/charts/barchart/horizontal/bar/qhorizontalbarseries.h @@ -36,7 +36,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QHorizontalBarSeriesPrivate; -class QT_CHARTS_EXPORT QHorizontalBarSeries : public QAbstractBarSeries +class Q_CHARTS_EXPORT QHorizontalBarSeries : public QAbstractBarSeries { Q_OBJECT public: diff --git a/src/charts/barchart/horizontal/bar/qhorizontalbarseries_p.h b/src/charts/barchart/horizontal/bar/qhorizontalbarseries_p.h index 650bad5f..d66ade48 100644 --- a/src/charts/barchart/horizontal/bar/qhorizontalbarseries_p.h +++ b/src/charts/barchart/horizontal/bar/qhorizontalbarseries_p.h @@ -45,7 +45,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_CHARTS_PRIVATE_EXPORT QHorizontalBarSeriesPrivate: public QAbstractBarSeriesPrivate +class Q_CHARTS_PRIVATE_EXPORT QHorizontalBarSeriesPrivate: public QAbstractBarSeriesPrivate { public: QHorizontalBarSeriesPrivate(QHorizontalBarSeries *q); diff --git a/src/charts/barchart/horizontal/percent/horizontalpercentbarchartitem_p.h b/src/charts/barchart/horizontal/percent/horizontalpercentbarchartitem_p.h index bff54e9b..ac2eb4aa 100644 --- a/src/charts/barchart/horizontal/percent/horizontalpercentbarchartitem_p.h +++ b/src/charts/barchart/horizontal/percent/horizontalpercentbarchartitem_p.h @@ -45,7 +45,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_CHARTS_PRIVATE_EXPORT HorizontalPercentBarChartItem : public AbstractBarChartItem +class Q_CHARTS_PRIVATE_EXPORT HorizontalPercentBarChartItem : public AbstractBarChartItem { Q_OBJECT public: diff --git a/src/charts/barchart/horizontal/percent/qhorizontalpercentbarseries.h b/src/charts/barchart/horizontal/percent/qhorizontalpercentbarseries.h index 5c78b029..49b3ad2b 100644 --- a/src/charts/barchart/horizontal/percent/qhorizontalpercentbarseries.h +++ b/src/charts/barchart/horizontal/percent/qhorizontalpercentbarseries.h @@ -36,7 +36,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QHorizontalPercentBarSeriesPrivate; -class QT_CHARTS_EXPORT QHorizontalPercentBarSeries : public QAbstractBarSeries +class Q_CHARTS_EXPORT QHorizontalPercentBarSeries : public QAbstractBarSeries { Q_OBJECT public: diff --git a/src/charts/barchart/horizontal/percent/qhorizontalpercentbarseries_p.h b/src/charts/barchart/horizontal/percent/qhorizontalpercentbarseries_p.h index e17381ff..24c0bf67 100644 --- a/src/charts/barchart/horizontal/percent/qhorizontalpercentbarseries_p.h +++ b/src/charts/barchart/horizontal/percent/qhorizontalpercentbarseries_p.h @@ -45,7 +45,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_CHARTS_PRIVATE_EXPORT QHorizontalPercentBarSeriesPrivate: public QAbstractBarSeriesPrivate +class Q_CHARTS_PRIVATE_EXPORT QHorizontalPercentBarSeriesPrivate: public QAbstractBarSeriesPrivate { public: QHorizontalPercentBarSeriesPrivate(QHorizontalPercentBarSeries *q); diff --git a/src/charts/barchart/horizontal/stacked/horizontalstackedbarchartitem_p.h b/src/charts/barchart/horizontal/stacked/horizontalstackedbarchartitem_p.h index d3744490..a05c1107 100644 --- a/src/charts/barchart/horizontal/stacked/horizontalstackedbarchartitem_p.h +++ b/src/charts/barchart/horizontal/stacked/horizontalstackedbarchartitem_p.h @@ -45,7 +45,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_CHARTS_PRIVATE_EXPORT HorizontalStackedBarChartItem : public AbstractBarChartItem +class Q_CHARTS_PRIVATE_EXPORT HorizontalStackedBarChartItem : public AbstractBarChartItem { Q_OBJECT public: diff --git a/src/charts/barchart/horizontal/stacked/qhorizontalstackedbarseries.h b/src/charts/barchart/horizontal/stacked/qhorizontalstackedbarseries.h index 9f944262..dff60ff5 100644 --- a/src/charts/barchart/horizontal/stacked/qhorizontalstackedbarseries.h +++ b/src/charts/barchart/horizontal/stacked/qhorizontalstackedbarseries.h @@ -36,7 +36,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QHorizontalStackedBarSeriesPrivate; -class QT_CHARTS_EXPORT QHorizontalStackedBarSeries : public QAbstractBarSeries +class Q_CHARTS_EXPORT QHorizontalStackedBarSeries : public QAbstractBarSeries { Q_OBJECT public: diff --git a/src/charts/barchart/horizontal/stacked/qhorizontalstackedbarseries_p.h b/src/charts/barchart/horizontal/stacked/qhorizontalstackedbarseries_p.h index 1c3e014e..a5810336 100644 --- a/src/charts/barchart/horizontal/stacked/qhorizontalstackedbarseries_p.h +++ b/src/charts/barchart/horizontal/stacked/qhorizontalstackedbarseries_p.h @@ -45,7 +45,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_CHARTS_PRIVATE_EXPORT QHorizontalStackedBarSeriesPrivate: public QAbstractBarSeriesPrivate +class Q_CHARTS_PRIVATE_EXPORT QHorizontalStackedBarSeriesPrivate: public QAbstractBarSeriesPrivate { public: QHorizontalStackedBarSeriesPrivate(QHorizontalStackedBarSeries *q); diff --git a/src/charts/barchart/qabstractbarseries.h b/src/charts/barchart/qabstractbarseries.h index 82000d34..e3f4ac97 100644 --- a/src/charts/barchart/qabstractbarseries.h +++ b/src/charts/barchart/qabstractbarseries.h @@ -39,7 +39,7 @@ class QBarSet; class QAbstractBarSeriesPrivate; // Container for series -class QT_CHARTS_EXPORT QAbstractBarSeries : public QAbstractSeries +class Q_CHARTS_EXPORT QAbstractBarSeries : public QAbstractSeries { Q_OBJECT Q_PROPERTY(qreal barWidth READ barWidth WRITE setBarWidth) diff --git a/src/charts/barchart/qabstractbarseries_p.h b/src/charts/barchart/qabstractbarseries_p.h index 99fadeeb..a2902fb6 100644 --- a/src/charts/barchart/qabstractbarseries_p.h +++ b/src/charts/barchart/qabstractbarseries_p.h @@ -51,7 +51,7 @@ class QBarModelMapper; class QBarCategoryAxis; class QLegendMarker; -class QT_CHARTS_PRIVATE_EXPORT QAbstractBarSeriesPrivate : public QAbstractSeriesPrivate +class Q_CHARTS_PRIVATE_EXPORT QAbstractBarSeriesPrivate : public QAbstractSeriesPrivate { Q_OBJECT public: diff --git a/src/charts/barchart/qbarmodelmapper.cpp b/src/charts/barchart/qbarmodelmapper.cpp index bf3391c6..39195e69 100644 --- a/src/charts/barchart/qbarmodelmapper.cpp +++ b/src/charts/barchart/qbarmodelmapper.cpp @@ -545,7 +545,7 @@ QBarSet *qt_allocate_bar_set_cpp(const QString &label) return new QBarSet(label); } -QT_CHARTS_EXPORT QBarSet *(*qt_allocate_bar_set)(const QString &label) = &qt_allocate_bar_set_cpp; +Q_CHARTS_EXPORT QBarSet *(*qt_allocate_bar_set)(const QString &label) = &qt_allocate_bar_set_cpp; void QBarModelMapperPrivate::initializeBarFromModel() { diff --git a/src/charts/barchart/qbarmodelmapper.h b/src/charts/barchart/qbarmodelmapper.h index 6d08fb5a..3aa77d92 100644 --- a/src/charts/barchart/qbarmodelmapper.h +++ b/src/charts/barchart/qbarmodelmapper.h @@ -42,7 +42,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QBarModelMapperPrivate; class QAbstractBarSeries; -class QT_CHARTS_EXPORT QBarModelMapper : public QObject +class Q_CHARTS_EXPORT QBarModelMapper : public QObject { Q_OBJECT diff --git a/src/charts/barchart/qbarmodelmapper_p.h b/src/charts/barchart/qbarmodelmapper_p.h index cf08d5aa..fec7c415 100644 --- a/src/charts/barchart/qbarmodelmapper_p.h +++ b/src/charts/barchart/qbarmodelmapper_p.h @@ -51,7 +51,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QBarSet; -class QT_CHARTS_PRIVATE_EXPORT QBarModelMapperPrivate : public QObject +class Q_CHARTS_PRIVATE_EXPORT QBarModelMapperPrivate : public QObject { Q_OBJECT public: diff --git a/src/charts/barchart/qbarset.h b/src/charts/barchart/qbarset.h index 7edd93e0..8efaaa07 100644 --- a/src/charts/barchart/qbarset.h +++ b/src/charts/barchart/qbarset.h @@ -38,7 +38,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QBarSetPrivate; -class QT_CHARTS_EXPORT QBarSet : public QObject +class Q_CHARTS_EXPORT QBarSet : public QObject { Q_OBJECT Q_PROPERTY(QString label READ label WRITE setLabel NOTIFY labelChanged) diff --git a/src/charts/barchart/qbarset_p.h b/src/charts/barchart/qbarset_p.h index 78876b7b..464908b7 100644 --- a/src/charts/barchart/qbarset_p.h +++ b/src/charts/barchart/qbarset_p.h @@ -48,7 +48,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_CHARTS_PRIVATE_EXPORT QBarSetPrivate : public QObject +class Q_CHARTS_PRIVATE_EXPORT QBarSetPrivate : public QObject { Q_OBJECT diff --git a/src/charts/barchart/qhbarmodelmapper.h b/src/charts/barchart/qhbarmodelmapper.h index 7639ed6b..05abb3c7 100644 --- a/src/charts/barchart/qhbarmodelmapper.h +++ b/src/charts/barchart/qhbarmodelmapper.h @@ -34,7 +34,7 @@ QT_CHARTS_BEGIN_NAMESPACE /* Comment line for syncqt to generate the fwd-include correctly, due to QTBUG-22432 */ -class QT_CHARTS_EXPORT QHBarModelMapper : public QBarModelMapper +class Q_CHARTS_EXPORT QHBarModelMapper : public QBarModelMapper { Q_OBJECT Q_PROPERTY(QtCharts::QAbstractBarSeries *series READ series WRITE setSeries NOTIFY seriesReplaced) diff --git a/src/charts/barchart/qvbarmodelmapper.h b/src/charts/barchart/qvbarmodelmapper.h index b859a76a..239b3baa 100644 --- a/src/charts/barchart/qvbarmodelmapper.h +++ b/src/charts/barchart/qvbarmodelmapper.h @@ -34,7 +34,7 @@ QT_CHARTS_BEGIN_NAMESPACE /* Comment line for syncqt to generate the fwd-include correctly, due to QTBUG-22432 */ -class QT_CHARTS_EXPORT QVBarModelMapper : public QBarModelMapper +class Q_CHARTS_EXPORT QVBarModelMapper : public QBarModelMapper { Q_OBJECT Q_PROPERTY(QtCharts::QAbstractBarSeries *series READ series WRITE setSeries NOTIFY seriesReplaced) diff --git a/src/charts/barchart/vertical/bar/barchartitem_p.h b/src/charts/barchart/vertical/bar/barchartitem_p.h index 174eaa7a..f6e8b71f 100644 --- a/src/charts/barchart/vertical/bar/barchartitem_p.h +++ b/src/charts/barchart/vertical/bar/barchartitem_p.h @@ -47,7 +47,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_CHARTS_PRIVATE_EXPORT BarChartItem : public AbstractBarChartItem +class Q_CHARTS_PRIVATE_EXPORT BarChartItem : public AbstractBarChartItem { Q_OBJECT public: diff --git a/src/charts/barchart/vertical/bar/qbarseries.h b/src/charts/barchart/vertical/bar/qbarseries.h index 5de28119..c6cde538 100644 --- a/src/charts/barchart/vertical/bar/qbarseries.h +++ b/src/charts/barchart/vertical/bar/qbarseries.h @@ -36,7 +36,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QBarSeriesPrivate; -class QT_CHARTS_EXPORT QBarSeries : public QAbstractBarSeries +class Q_CHARTS_EXPORT QBarSeries : public QAbstractBarSeries { Q_OBJECT public: diff --git a/src/charts/barchart/vertical/bar/qbarseries_p.h b/src/charts/barchart/vertical/bar/qbarseries_p.h index 270ac4bc..16b633cb 100644 --- a/src/charts/barchart/vertical/bar/qbarseries_p.h +++ b/src/charts/barchart/vertical/bar/qbarseries_p.h @@ -46,7 +46,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_CHARTS_PRIVATE_EXPORT QBarSeriesPrivate: public QAbstractBarSeriesPrivate +class Q_CHARTS_PRIVATE_EXPORT QBarSeriesPrivate: public QAbstractBarSeriesPrivate { public: QBarSeriesPrivate(QBarSeries *q); diff --git a/src/charts/barchart/vertical/percent/percentbarchartitem_p.h b/src/charts/barchart/vertical/percent/percentbarchartitem_p.h index a922f62d..344e23fb 100644 --- a/src/charts/barchart/vertical/percent/percentbarchartitem_p.h +++ b/src/charts/barchart/vertical/percent/percentbarchartitem_p.h @@ -48,7 +48,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QAbstractBarSeries; -class QT_CHARTS_PRIVATE_EXPORT PercentBarChartItem : public AbstractBarChartItem +class Q_CHARTS_PRIVATE_EXPORT PercentBarChartItem : public AbstractBarChartItem { Q_OBJECT public: diff --git a/src/charts/barchart/vertical/percent/qpercentbarseries.h b/src/charts/barchart/vertical/percent/qpercentbarseries.h index e5545ec6..71ecdcf9 100644 --- a/src/charts/barchart/vertical/percent/qpercentbarseries.h +++ b/src/charts/barchart/vertical/percent/qpercentbarseries.h @@ -37,7 +37,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QPercentBarSeriesPrivate; -class QT_CHARTS_EXPORT QPercentBarSeries : public QAbstractBarSeries +class Q_CHARTS_EXPORT QPercentBarSeries : public QAbstractBarSeries { Q_OBJECT public: diff --git a/src/charts/barchart/vertical/percent/qpercentbarseries_p.h b/src/charts/barchart/vertical/percent/qpercentbarseries_p.h index 7a422410..96dd0d77 100644 --- a/src/charts/barchart/vertical/percent/qpercentbarseries_p.h +++ b/src/charts/barchart/vertical/percent/qpercentbarseries_p.h @@ -46,7 +46,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_CHARTS_PRIVATE_EXPORT QPercentBarSeriesPrivate: public QAbstractBarSeriesPrivate +class Q_CHARTS_PRIVATE_EXPORT QPercentBarSeriesPrivate: public QAbstractBarSeriesPrivate { public: QPercentBarSeriesPrivate(QPercentBarSeries *q); diff --git a/src/charts/barchart/vertical/stacked/qstackedbarseries.h b/src/charts/barchart/vertical/stacked/qstackedbarseries.h index d6032350..466baf08 100644 --- a/src/charts/barchart/vertical/stacked/qstackedbarseries.h +++ b/src/charts/barchart/vertical/stacked/qstackedbarseries.h @@ -37,7 +37,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QStackedBarSeriesPrivate; -class QT_CHARTS_EXPORT QStackedBarSeries : public QAbstractBarSeries +class Q_CHARTS_EXPORT QStackedBarSeries : public QAbstractBarSeries { Q_OBJECT public: diff --git a/src/charts/barchart/vertical/stacked/qstackedbarseries_p.h b/src/charts/barchart/vertical/stacked/qstackedbarseries_p.h index 94916dfe..5b9d4cd4 100644 --- a/src/charts/barchart/vertical/stacked/qstackedbarseries_p.h +++ b/src/charts/barchart/vertical/stacked/qstackedbarseries_p.h @@ -46,7 +46,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_CHARTS_PRIVATE_EXPORT QStackedBarSeriesPrivate: public QAbstractBarSeriesPrivate +class Q_CHARTS_PRIVATE_EXPORT QStackedBarSeriesPrivate: public QAbstractBarSeriesPrivate { public: QStackedBarSeriesPrivate(QStackedBarSeries *q); diff --git a/src/charts/barchart/vertical/stacked/stackedbarchartitem_p.h b/src/charts/barchart/vertical/stacked/stackedbarchartitem_p.h index 58ea7264..cef0aec9 100644 --- a/src/charts/barchart/vertical/stacked/stackedbarchartitem_p.h +++ b/src/charts/barchart/vertical/stacked/stackedbarchartitem_p.h @@ -47,7 +47,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_CHARTS_PRIVATE_EXPORT StackedBarChartItem : public AbstractBarChartItem +class Q_CHARTS_PRIVATE_EXPORT StackedBarChartItem : public AbstractBarChartItem { Q_OBJECT public: diff --git a/src/charts/boxplotchart/boxplotchartitem_p.h b/src/charts/boxplotchart/boxplotchartitem_p.h index f7a7cd9e..8a53f438 100644 --- a/src/charts/boxplotchart/boxplotchartitem_p.h +++ b/src/charts/boxplotchart/boxplotchartitem_p.h @@ -52,7 +52,7 @@ QT_CHARTS_BEGIN_NAMESPACE class BoxPlotSeriesPrivate; -class QT_CHARTS_PRIVATE_EXPORT BoxPlotChartItem : public ChartItem +class Q_CHARTS_PRIVATE_EXPORT BoxPlotChartItem : public ChartItem { Q_OBJECT public: diff --git a/src/charts/boxplotchart/boxwhiskers_p.h b/src/charts/boxplotchart/boxwhiskers_p.h index 6ce0bf53..6e6b8a21 100644 --- a/src/charts/boxplotchart/boxwhiskers_p.h +++ b/src/charts/boxplotchart/boxwhiskers_p.h @@ -53,7 +53,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QBarSet; -class QT_CHARTS_PRIVATE_EXPORT BoxWhiskers : public QGraphicsObject +class Q_CHARTS_PRIVATE_EXPORT BoxWhiskers : public QGraphicsObject { Q_OBJECT diff --git a/src/charts/boxplotchart/boxwhiskersdata_p.h b/src/charts/boxplotchart/boxwhiskersdata_p.h index 3e9554f2..ec961cc4 100644 --- a/src/charts/boxplotchart/boxwhiskersdata_p.h +++ b/src/charts/boxplotchart/boxwhiskersdata_p.h @@ -45,7 +45,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_CHARTS_PRIVATE_EXPORT BoxWhiskersData +class Q_CHARTS_PRIVATE_EXPORT BoxWhiskersData { public: BoxWhiskersData() : diff --git a/src/charts/boxplotchart/qboxplotmodelmapper.h b/src/charts/boxplotchart/qboxplotmodelmapper.h index 4b57002b..e65f4dbf 100644 --- a/src/charts/boxplotchart/qboxplotmodelmapper.h +++ b/src/charts/boxplotchart/qboxplotmodelmapper.h @@ -42,7 +42,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QBoxPlotModelMapperPrivate; class QBoxPlotSeries; -class QT_CHARTS_EXPORT QBoxPlotModelMapper : public QObject +class Q_CHARTS_EXPORT QBoxPlotModelMapper : public QObject { Q_OBJECT diff --git a/src/charts/boxplotchart/qboxplotmodelmapper_p.h b/src/charts/boxplotchart/qboxplotmodelmapper_p.h index 4e4e2c8a..1f6abbbd 100644 --- a/src/charts/boxplotchart/qboxplotmodelmapper_p.h +++ b/src/charts/boxplotchart/qboxplotmodelmapper_p.h @@ -49,7 +49,7 @@ QT_END_NAMESPACE QT_CHARTS_BEGIN_NAMESPACE -class QT_CHARTS_PRIVATE_EXPORT QBoxSet; +class Q_CHARTS_PRIVATE_EXPORT QBoxSet; class QBoxPlotModelMapperPrivate : public QObject { diff --git a/src/charts/boxplotchart/qboxplotseries.h b/src/charts/boxplotchart/qboxplotseries.h index fa736d56..7c9c129a 100644 --- a/src/charts/boxplotchart/qboxplotseries.h +++ b/src/charts/boxplotchart/qboxplotseries.h @@ -38,7 +38,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QBoxPlotSeriesPrivate; -class QT_CHARTS_EXPORT QBoxPlotSeries : public QAbstractSeries +class Q_CHARTS_EXPORT QBoxPlotSeries : public QAbstractSeries { Q_OBJECT Q_PROPERTY(bool boxOutlineVisible READ boxOutlineVisible WRITE setBoxOutlineVisible NOTIFY boxOutlineVisibilityChanged) diff --git a/src/charts/boxplotchart/qboxplotseries_p.h b/src/charts/boxplotchart/qboxplotseries_p.h index e15ef8b7..a4551015 100644 --- a/src/charts/boxplotchart/qboxplotseries_p.h +++ b/src/charts/boxplotchart/qboxplotseries_p.h @@ -49,7 +49,7 @@ QT_CHARTS_BEGIN_NAMESPACE class BoxPlotAnimation; -class QT_CHARTS_PRIVATE_EXPORT QBoxPlotSeriesPrivate : public QAbstractSeriesPrivate +class Q_CHARTS_PRIVATE_EXPORT QBoxPlotSeriesPrivate : public QAbstractSeriesPrivate { Q_OBJECT diff --git a/src/charts/boxplotchart/qboxset.h b/src/charts/boxplotchart/qboxset.h index eada7690..a400ebd7 100644 --- a/src/charts/boxplotchart/qboxset.h +++ b/src/charts/boxplotchart/qboxset.h @@ -38,7 +38,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QBoxSetPrivate; -class QT_CHARTS_EXPORT QBoxSet : public QObject +class Q_CHARTS_EXPORT QBoxSet : public QObject { Q_OBJECT Q_PROPERTY(QPen pen READ pen WRITE setPen NOTIFY penChanged) diff --git a/src/charts/boxplotchart/qboxset_p.h b/src/charts/boxplotchart/qboxset_p.h index 12b765b5..5bcbbb0b 100644 --- a/src/charts/boxplotchart/qboxset_p.h +++ b/src/charts/boxplotchart/qboxset_p.h @@ -50,7 +50,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QBoxPlotSeriesPrivate; -class QT_CHARTS_PRIVATE_EXPORT QBoxSetPrivate : public QObject +class Q_CHARTS_PRIVATE_EXPORT QBoxSetPrivate : public QObject { Q_OBJECT diff --git a/src/charts/boxplotchart/qhboxplotmodelmapper.h b/src/charts/boxplotchart/qhboxplotmodelmapper.h index 8ed690dd..364afd99 100644 --- a/src/charts/boxplotchart/qhboxplotmodelmapper.h +++ b/src/charts/boxplotchart/qhboxplotmodelmapper.h @@ -35,7 +35,7 @@ QT_CHARTS_BEGIN_NAMESPACE /* Comment line for syncqt to generate the fwd-include correctly, due to QTBUG-22432 */ -class QT_CHARTS_EXPORT QHBoxPlotModelMapper : public QBoxPlotModelMapper +class Q_CHARTS_EXPORT QHBoxPlotModelMapper : public QBoxPlotModelMapper { Q_OBJECT Q_PROPERTY(QtCharts::QBoxPlotSeries *series READ series WRITE setSeries NOTIFY seriesReplaced) diff --git a/src/charts/boxplotchart/qvboxplotmodelmapper.h b/src/charts/boxplotchart/qvboxplotmodelmapper.h index b6d9b391..69a48852 100644 --- a/src/charts/boxplotchart/qvboxplotmodelmapper.h +++ b/src/charts/boxplotchart/qvboxplotmodelmapper.h @@ -34,7 +34,7 @@ QT_CHARTS_BEGIN_NAMESPACE /* Comment line for syncqt to generate the fwd-include correctly, due to QTBUG-22432 */ -class QT_CHARTS_EXPORT QVBoxPlotModelMapper : public QBoxPlotModelMapper +class Q_CHARTS_EXPORT QVBoxPlotModelMapper : public QBoxPlotModelMapper { Q_OBJECT Q_PROPERTY(QtCharts::QBoxPlotSeries *series READ series WRITE setSeries NOTIFY seriesReplaced) diff --git a/src/charts/candlestickchart/candlestick_p.h b/src/charts/candlestickchart/candlestick_p.h index 80f2987e..0f4c8984 100644 --- a/src/charts/candlestickchart/candlestick_p.h +++ b/src/charts/candlestickchart/candlestick_p.h @@ -51,7 +51,7 @@ QT_CHARTS_BEGIN_NAMESPACE class AbstractDomain; class QCandlestickSet; -class QT_CHARTS_PRIVATE_EXPORT Candlestick : public QGraphicsObject +class Q_CHARTS_PRIVATE_EXPORT Candlestick : public QGraphicsObject { Q_OBJECT diff --git a/src/charts/candlestickchart/candlestickchartitem_p.h b/src/charts/candlestickchart/candlestickchartitem_p.h index ec1c12b4..8f47121a 100644 --- a/src/charts/candlestickchart/candlestickchartitem_p.h +++ b/src/charts/candlestickchart/candlestickchartitem_p.h @@ -49,7 +49,7 @@ class CandlestickAnimation; class QCandlestickSeries; class QCandlestickSet; -class QT_CHARTS_PRIVATE_EXPORT CandlestickChartItem : public ChartItem +class Q_CHARTS_PRIVATE_EXPORT CandlestickChartItem : public ChartItem { Q_OBJECT diff --git a/src/charts/candlestickchart/candlestickdata_p.h b/src/charts/candlestickchart/candlestickdata_p.h index 233d200b..258a0add 100644 --- a/src/charts/candlestickchart/candlestickdata_p.h +++ b/src/charts/candlestickchart/candlestickdata_p.h @@ -44,7 +44,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_CHARTS_PRIVATE_EXPORT CandlestickData +class Q_CHARTS_PRIVATE_EXPORT CandlestickData { public: CandlestickData() : diff --git a/src/charts/candlestickchart/qcandlestickmodelmapper.h b/src/charts/candlestickchart/qcandlestickmodelmapper.h index 1103da85..70bd21d1 100644 --- a/src/charts/candlestickchart/qcandlestickmodelmapper.h +++ b/src/charts/candlestickchart/qcandlestickmodelmapper.h @@ -42,7 +42,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QCandlestickModelMapperPrivate; class QCandlestickSeries; -class QT_CHARTS_EXPORT QCandlestickModelMapper : public QObject +class Q_CHARTS_EXPORT QCandlestickModelMapper : public QObject { Q_OBJECT Q_PROPERTY(QAbstractItemModel *model READ model WRITE setModel NOTIFY modelReplaced) diff --git a/src/charts/candlestickchart/qcandlestickmodelmapper_p.h b/src/charts/candlestickchart/qcandlestickmodelmapper_p.h index 7c14c9e8..89977f44 100644 --- a/src/charts/candlestickchart/qcandlestickmodelmapper_p.h +++ b/src/charts/candlestickchart/qcandlestickmodelmapper_p.h @@ -51,7 +51,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QCandlestickSet; -class QT_CHARTS_PRIVATE_EXPORT QCandlestickModelMapperPrivate : public QObject +class Q_CHARTS_PRIVATE_EXPORT QCandlestickModelMapperPrivate : public QObject { Q_OBJECT diff --git a/src/charts/candlestickchart/qcandlestickseries.h b/src/charts/candlestickchart/qcandlestickseries.h index f96e809a..9a223c12 100644 --- a/src/charts/candlestickchart/qcandlestickseries.h +++ b/src/charts/candlestickchart/qcandlestickseries.h @@ -37,7 +37,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QCandlestickSeriesPrivate; class QCandlestickSet; -class QT_CHARTS_EXPORT QCandlestickSeries : public QAbstractSeries +class Q_CHARTS_EXPORT QCandlestickSeries : public QAbstractSeries { Q_OBJECT Q_PROPERTY(int count READ count NOTIFY countChanged) diff --git a/src/charts/candlestickchart/qcandlestickseries_p.h b/src/charts/candlestickchart/qcandlestickseries_p.h index e747f8c3..56a2b6d4 100644 --- a/src/charts/candlestickchart/qcandlestickseries_p.h +++ b/src/charts/candlestickchart/qcandlestickseries_p.h @@ -50,7 +50,7 @@ class QCandlestickSeries; class QCandlestickSet; class QDateTimeAxis; -class QT_CHARTS_PRIVATE_EXPORT QCandlestickSeriesPrivate : public QAbstractSeriesPrivate +class Q_CHARTS_PRIVATE_EXPORT QCandlestickSeriesPrivate : public QAbstractSeriesPrivate { Q_OBJECT diff --git a/src/charts/candlestickchart/qcandlestickset.h b/src/charts/candlestickchart/qcandlestickset.h index ddbb6c16..891c642c 100644 --- a/src/charts/candlestickchart/qcandlestickset.h +++ b/src/charts/candlestickchart/qcandlestickset.h @@ -38,7 +38,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QCandlestickSetPrivate; -class QT_CHARTS_EXPORT QCandlestickSet : public QObject +class Q_CHARTS_EXPORT QCandlestickSet : public QObject { Q_OBJECT Q_PROPERTY(qreal timestamp READ timestamp WRITE setTimestamp NOTIFY timestampChanged) diff --git a/src/charts/candlestickchart/qcandlestickset_p.h b/src/charts/candlestickchart/qcandlestickset_p.h index 58cc41e5..22627840 100644 --- a/src/charts/candlestickchart/qcandlestickset_p.h +++ b/src/charts/candlestickchart/qcandlestickset_p.h @@ -49,7 +49,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QCandlestickSeriesPrivate; class QCandlestickSet; -class QT_CHARTS_PRIVATE_EXPORT QCandlestickSetPrivate : public QObject +class Q_CHARTS_PRIVATE_EXPORT QCandlestickSetPrivate : public QObject { Q_OBJECT diff --git a/src/charts/candlestickchart/qhcandlestickmodelmapper.h b/src/charts/candlestickchart/qhcandlestickmodelmapper.h index 8bfa8350..6ba86b8f 100644 --- a/src/charts/candlestickchart/qhcandlestickmodelmapper.h +++ b/src/charts/candlestickchart/qhcandlestickmodelmapper.h @@ -34,7 +34,7 @@ QT_CHARTS_BEGIN_NAMESPACE /* Comment line for syncqt to generate the fwd-include correctly, due to QTBUG-22432 */ -class QT_CHARTS_EXPORT QHCandlestickModelMapper : public QCandlestickModelMapper +class Q_CHARTS_EXPORT QHCandlestickModelMapper : public QCandlestickModelMapper { Q_OBJECT Q_PROPERTY(int timestampColumn READ timestampColumn WRITE setTimestampColumn NOTIFY timestampColumnChanged) diff --git a/src/charts/candlestickchart/qvcandlestickmodelmapper.h b/src/charts/candlestickchart/qvcandlestickmodelmapper.h index 3b00747d..0707859d 100644 --- a/src/charts/candlestickchart/qvcandlestickmodelmapper.h +++ b/src/charts/candlestickchart/qvcandlestickmodelmapper.h @@ -34,7 +34,7 @@ QT_CHARTS_BEGIN_NAMESPACE /* Comment line for syncqt to generate the fwd-include correctly, due to QTBUG-22432 */ -class QT_CHARTS_EXPORT QVCandlestickModelMapper : public QCandlestickModelMapper +class Q_CHARTS_EXPORT QVCandlestickModelMapper : public QCandlestickModelMapper { Q_OBJECT Q_PROPERTY(int timestampRow READ timestampRow WRITE setTimestampRow NOTIFY timestampRowChanged) diff --git a/src/charts/chartbackground_p.h b/src/charts/chartbackground_p.h index a89f6035..1a2bdfd8 100644 --- a/src/charts/chartbackground_p.h +++ b/src/charts/chartbackground_p.h @@ -49,7 +49,7 @@ QT_END_NAMESPACE QT_CHARTS_BEGIN_NAMESPACE -class QT_CHARTS_PRIVATE_EXPORT ChartBackground: public QGraphicsRectItem +class Q_CHARTS_PRIVATE_EXPORT ChartBackground: public QGraphicsRectItem { public: ChartBackground(QGraphicsItem *parent = 0); diff --git a/src/charts/chartconfig_p.h b/src/charts/chartconfig_p.h index 4ce09650..044a8ce0 100644 --- a/src/charts/chartconfig_p.h +++ b/src/charts/chartconfig_p.h @@ -44,7 +44,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_CHARTS_PRIVATE_EXPORT ChartConfig +class Q_CHARTS_PRIVATE_EXPORT ChartConfig { private: ChartConfig() { diff --git a/src/charts/chartdataset_p.h b/src/charts/chartdataset_p.h index 00b4b2bb..cafd6f88 100644 --- a/src/charts/chartdataset_p.h +++ b/src/charts/chartdataset_p.h @@ -51,7 +51,7 @@ class QAbstractAxis; class ChartPresenter; class GLXYSeriesDataManager; -class QT_CHARTS_PRIVATE_EXPORT ChartDataSet : public QObject +class Q_CHARTS_PRIVATE_EXPORT ChartDataSet : public QObject { Q_OBJECT public: diff --git a/src/charts/chartelement_p.h b/src/charts/chartelement_p.h index f29d6e2c..266b128f 100644 --- a/src/charts/chartelement_p.h +++ b/src/charts/chartelement_p.h @@ -54,7 +54,7 @@ class ChartThemeManager; class AbstractDomain; class ChartDataSet; -class QT_CHARTS_PRIVATE_EXPORT ChartElement: public QGraphicsObject +class Q_CHARTS_PRIVATE_EXPORT ChartElement: public QGraphicsObject { public: diff --git a/src/charts/chartitem_p.h b/src/charts/chartitem_p.h index 560764b7..248cb29c 100644 --- a/src/charts/chartitem_p.h +++ b/src/charts/chartitem_p.h @@ -46,7 +46,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_CHARTS_PRIVATE_EXPORT ChartItem : public ChartElement +class Q_CHARTS_PRIVATE_EXPORT ChartItem : public ChartElement { Q_OBJECT enum ChartItemTypes { AXIS_ITEM = UserType + 1, XYLINE_ITEM }; diff --git a/src/charts/chartpresenter_p.h b/src/charts/chartpresenter_p.h index 122c3c4a..6b44a502 100644 --- a/src/charts/chartpresenter_p.h +++ b/src/charts/chartpresenter_p.h @@ -63,7 +63,7 @@ class ChartTitle; class ChartAnimation; class AbstractChartLayout; -class QT_CHARTS_PRIVATE_EXPORT ChartPresenter: public QObject +class Q_CHARTS_PRIVATE_EXPORT ChartPresenter: public QObject { Q_OBJECT public: diff --git a/src/charts/chartthememanager_p.h b/src/charts/chartthememanager_p.h index 63a70663..c5e137ec 100644 --- a/src/charts/chartthememanager_p.h +++ b/src/charts/chartthememanager_p.h @@ -48,7 +48,7 @@ QT_CHARTS_BEGIN_NAMESPACE class ChartTheme; -class QT_CHARTS_PRIVATE_EXPORT ChartThemeManager: public QObject +class Q_CHARTS_PRIVATE_EXPORT ChartThemeManager: public QObject { Q_OBJECT public: diff --git a/src/charts/charttitle_p.h b/src/charts/charttitle_p.h index aaed6e9c..4fe96d1c 100644 --- a/src/charts/charttitle_p.h +++ b/src/charts/charttitle_p.h @@ -45,7 +45,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_CHARTS_PRIVATE_EXPORT ChartTitle : public QGraphicsTextItem +class Q_CHARTS_PRIVATE_EXPORT ChartTitle : public QGraphicsTextItem { public: ChartTitle(QGraphicsItem *parent = 0); diff --git a/src/charts/doc/qtcharts.qdocconf b/src/charts/doc/qtcharts.qdocconf index f765680d..f746ea05 100644 --- a/src/charts/doc/qtcharts.qdocconf +++ b/src/charts/doc/qtcharts.qdocconf @@ -19,7 +19,7 @@ sources.fileextensions = "*.cpp *.qdoc" depends = qtcore qtgui qtwidgets qtqml qtquick qtmultimedia qtdoc -Cpp.ignoretokens += QT_CHARTS_EXPORT \ +Cpp.ignoretokens += Q_CHARTS_EXPORT \ QT_CHARTS_END_NAMESPACE \ QT_CHARTS_BEGIN_NAMESPACE diff --git a/src/charts/doc/src/index.qdoc b/src/charts/doc/src/index.qdoc index 5674f541..92f75ea7 100644 --- a/src/charts/doc/src/index.qdoc +++ b/src/charts/doc/src/index.qdoc @@ -38,7 +38,9 @@ To import Qt Charts QML types, add the following import statement to your \c .qml file: - \snippet doc_src_qmlcharts.cpp 0 + \qml \QtMinorVersion + import QtCharts 2.\1 + \endqml If you intend to use Qt Charts C++ classes in your application, use the following include and using directives: diff --git a/src/charts/doc/src/qtcharts.qdoc b/src/charts/doc/src/qtcharts.qdoc index 4758de69..9c70c58c 100644 --- a/src/charts/doc/src/qtcharts.qdoc +++ b/src/charts/doc/src/qtcharts.qdoc @@ -59,7 +59,7 @@ */ /*! - \qmlmodule QtCharts 2.3 + \qmlmodule QtCharts 2.\QtMinorVersion \title Qt Charts QML Types \ingroup qmlmodules diff --git a/src/charts/domain/abstractdomain_p.h b/src/charts/domain/abstractdomain_p.h index 9a5c8022..6b12f624 100644 --- a/src/charts/domain/abstractdomain_p.h +++ b/src/charts/domain/abstractdomain_p.h @@ -48,7 +48,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QAbstractAxis; -class QT_CHARTS_PRIVATE_EXPORT AbstractDomain: public QObject +class Q_CHARTS_PRIVATE_EXPORT AbstractDomain: public QObject { Q_OBJECT public: diff --git a/src/charts/domain/logxlogydomain_p.h b/src/charts/domain/logxlogydomain_p.h index e30dd8d4..c16ac01f 100644 --- a/src/charts/domain/logxlogydomain_p.h +++ b/src/charts/domain/logxlogydomain_p.h @@ -45,7 +45,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_CHARTS_PRIVATE_EXPORT LogXLogYDomain: public AbstractDomain +class Q_CHARTS_PRIVATE_EXPORT LogXLogYDomain: public AbstractDomain { Q_OBJECT public: diff --git a/src/charts/domain/logxlogypolardomain_p.h b/src/charts/domain/logxlogypolardomain_p.h index f25e6e03..4ed090e9 100644 --- a/src/charts/domain/logxlogypolardomain_p.h +++ b/src/charts/domain/logxlogypolardomain_p.h @@ -45,7 +45,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_CHARTS_PRIVATE_EXPORT LogXLogYPolarDomain: public PolarDomain +class Q_CHARTS_PRIVATE_EXPORT LogXLogYPolarDomain: public PolarDomain { Q_OBJECT public: diff --git a/src/charts/domain/logxydomain_p.h b/src/charts/domain/logxydomain_p.h index 858a6d2e..9c85c7d7 100644 --- a/src/charts/domain/logxydomain_p.h +++ b/src/charts/domain/logxydomain_p.h @@ -45,7 +45,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_CHARTS_PRIVATE_EXPORT LogXYDomain: public AbstractDomain +class Q_CHARTS_PRIVATE_EXPORT LogXYDomain: public AbstractDomain { Q_OBJECT public: diff --git a/src/charts/domain/logxypolardomain_p.h b/src/charts/domain/logxypolardomain_p.h index 6057be1c..2697dc2c 100644 --- a/src/charts/domain/logxypolardomain_p.h +++ b/src/charts/domain/logxypolardomain_p.h @@ -45,7 +45,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_CHARTS_PRIVATE_EXPORT LogXYPolarDomain: public PolarDomain +class Q_CHARTS_PRIVATE_EXPORT LogXYPolarDomain: public PolarDomain { Q_OBJECT public: diff --git a/src/charts/domain/polardomain_p.h b/src/charts/domain/polardomain_p.h index 14dc4236..7631bd9e 100644 --- a/src/charts/domain/polardomain_p.h +++ b/src/charts/domain/polardomain_p.h @@ -45,7 +45,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_CHARTS_PRIVATE_EXPORT PolarDomain: public AbstractDomain +class Q_CHARTS_PRIVATE_EXPORT PolarDomain: public AbstractDomain { Q_OBJECT public: diff --git a/src/charts/domain/xlogydomain_p.h b/src/charts/domain/xlogydomain_p.h index f564f950..ddf174a7 100644 --- a/src/charts/domain/xlogydomain_p.h +++ b/src/charts/domain/xlogydomain_p.h @@ -45,7 +45,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_CHARTS_PRIVATE_EXPORT XLogYDomain: public AbstractDomain +class Q_CHARTS_PRIVATE_EXPORT XLogYDomain: public AbstractDomain { Q_OBJECT public: diff --git a/src/charts/domain/xlogypolardomain_p.h b/src/charts/domain/xlogypolardomain_p.h index e11d691e..4870cc67 100644 --- a/src/charts/domain/xlogypolardomain_p.h +++ b/src/charts/domain/xlogypolardomain_p.h @@ -45,7 +45,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_CHARTS_PRIVATE_EXPORT XLogYPolarDomain: public PolarDomain +class Q_CHARTS_PRIVATE_EXPORT XLogYPolarDomain: public PolarDomain { Q_OBJECT public: diff --git a/src/charts/domain/xydomain_p.h b/src/charts/domain/xydomain_p.h index 97c89989..5a586a32 100644 --- a/src/charts/domain/xydomain_p.h +++ b/src/charts/domain/xydomain_p.h @@ -45,7 +45,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_CHARTS_PRIVATE_EXPORT XYDomain: public AbstractDomain +class Q_CHARTS_PRIVATE_EXPORT XYDomain: public AbstractDomain { Q_OBJECT public: diff --git a/src/charts/domain/xypolardomain_p.h b/src/charts/domain/xypolardomain_p.h index 9d027661..5dc6de9e 100644 --- a/src/charts/domain/xypolardomain_p.h +++ b/src/charts/domain/xypolardomain_p.h @@ -44,7 +44,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_CHARTS_PRIVATE_EXPORT XYPolarDomain: public PolarDomain +class Q_CHARTS_PRIVATE_EXPORT XYPolarDomain: public PolarDomain { Q_OBJECT public: diff --git a/src/charts/layout/abstractchartlayout_p.h b/src/charts/layout/abstractchartlayout_p.h index 32d627a8..f120ea91 100644 --- a/src/charts/layout/abstractchartlayout_p.h +++ b/src/charts/layout/abstractchartlayout_p.h @@ -52,7 +52,7 @@ class ChartPresenter; class QLegend; class ChartBackground; -class QT_CHARTS_PRIVATE_EXPORT AbstractChartLayout : public QGraphicsLayout +class Q_CHARTS_PRIVATE_EXPORT AbstractChartLayout : public QGraphicsLayout { public: AbstractChartLayout(ChartPresenter *presenter); diff --git a/src/charts/layout/cartesianchartlayout_p.h b/src/charts/layout/cartesianchartlayout_p.h index 81c47598..b61d3a78 100644 --- a/src/charts/layout/cartesianchartlayout_p.h +++ b/src/charts/layout/cartesianchartlayout_p.h @@ -44,7 +44,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_CHARTS_PRIVATE_EXPORT CartesianChartLayout : public AbstractChartLayout +class Q_CHARTS_PRIVATE_EXPORT CartesianChartLayout : public AbstractChartLayout { public: CartesianChartLayout(ChartPresenter *presenter); diff --git a/src/charts/layout/polarchartlayout_p.h b/src/charts/layout/polarchartlayout_p.h index 18c1be34..a2f3ef80 100644 --- a/src/charts/layout/polarchartlayout_p.h +++ b/src/charts/layout/polarchartlayout_p.h @@ -44,7 +44,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_CHARTS_PRIVATE_EXPORT PolarChartLayout : public AbstractChartLayout +class Q_CHARTS_PRIVATE_EXPORT PolarChartLayout : public AbstractChartLayout { public: PolarChartLayout(ChartPresenter *presenter); diff --git a/src/charts/legend/legendlayout_p.h b/src/charts/legend/legendlayout_p.h index 7933c245..13593b16 100644 --- a/src/charts/legend/legendlayout_p.h +++ b/src/charts/legend/legendlayout_p.h @@ -47,7 +47,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QLegend; class LegendMarkerItem; -class QT_CHARTS_PRIVATE_EXPORT LegendLayout : public QGraphicsLayout +class Q_CHARTS_PRIVATE_EXPORT LegendLayout : public QGraphicsLayout { public: diff --git a/src/charts/legend/legendmarkeritem_p.h b/src/charts/legend/legendmarkeritem_p.h index d3d71de3..708c2709 100644 --- a/src/charts/legend/legendmarkeritem_p.h +++ b/src/charts/legend/legendmarkeritem_p.h @@ -53,7 +53,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QLegendMarkerPrivate; -class QT_CHARTS_PRIVATE_EXPORT LegendMarkerItem : public QGraphicsObject, public QGraphicsLayoutItem +class Q_CHARTS_PRIVATE_EXPORT LegendMarkerItem : public QGraphicsObject, public QGraphicsLayoutItem { Q_OBJECT Q_INTERFACES(QGraphicsLayoutItem) diff --git a/src/charts/legend/legendscroller_p.h b/src/charts/legend/legendscroller_p.h index fc57a9d3..919a27b8 100644 --- a/src/charts/legend/legendscroller_p.h +++ b/src/charts/legend/legendscroller_p.h @@ -47,7 +47,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_CHARTS_PRIVATE_EXPORT LegendScroller: public QLegend, public Scroller +class Q_CHARTS_PRIVATE_EXPORT LegendScroller: public QLegend, public Scroller { Q_OBJECT diff --git a/src/charts/legend/qarealegendmarker.h b/src/charts/legend/qarealegendmarker.h index 3d88fa08..13b774c7 100644 --- a/src/charts/legend/qarealegendmarker.h +++ b/src/charts/legend/qarealegendmarker.h @@ -38,7 +38,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QAreaLegendMarkerPrivate; -class QT_CHARTS_EXPORT QAreaLegendMarker : public QLegendMarker +class Q_CHARTS_EXPORT QAreaLegendMarker : public QLegendMarker { Q_OBJECT diff --git a/src/charts/legend/qarealegendmarker_p.h b/src/charts/legend/qarealegendmarker_p.h index f44f8e74..9bea4708 100644 --- a/src/charts/legend/qarealegendmarker_p.h +++ b/src/charts/legend/qarealegendmarker_p.h @@ -49,7 +49,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QAreaLegendMarker; -class QT_CHARTS_PRIVATE_EXPORT QAreaLegendMarkerPrivate : public QLegendMarkerPrivate +class Q_CHARTS_PRIVATE_EXPORT QAreaLegendMarkerPrivate : public QLegendMarkerPrivate { Q_OBJECT public: diff --git a/src/charts/legend/qbarlegendmarker.h b/src/charts/legend/qbarlegendmarker.h index e1b3dcda..43f1b2d1 100644 --- a/src/charts/legend/qbarlegendmarker.h +++ b/src/charts/legend/qbarlegendmarker.h @@ -39,7 +39,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QLegend; class QBarLegendMarkerPrivate; -class QT_CHARTS_EXPORT QBarLegendMarker : public QLegendMarker +class Q_CHARTS_EXPORT QBarLegendMarker : public QLegendMarker { Q_OBJECT public: diff --git a/src/charts/legend/qbarlegendmarker_p.h b/src/charts/legend/qbarlegendmarker_p.h index 7bfabd69..5618405e 100644 --- a/src/charts/legend/qbarlegendmarker_p.h +++ b/src/charts/legend/qbarlegendmarker_p.h @@ -50,7 +50,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QBarLegendMarker; -class QT_CHARTS_PRIVATE_EXPORT QBarLegendMarkerPrivate : public QLegendMarkerPrivate +class Q_CHARTS_PRIVATE_EXPORT QBarLegendMarkerPrivate : public QLegendMarkerPrivate { Q_OBJECT public: diff --git a/src/charts/legend/qboxplotlegendmarker.h b/src/charts/legend/qboxplotlegendmarker.h index db6e9edd..826c074a 100644 --- a/src/charts/legend/qboxplotlegendmarker.h +++ b/src/charts/legend/qboxplotlegendmarker.h @@ -38,7 +38,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QBoxPlotLegendMarkerPrivate; -class QT_CHARTS_EXPORT QBoxPlotLegendMarker : public QLegendMarker +class Q_CHARTS_EXPORT QBoxPlotLegendMarker : public QLegendMarker { Q_OBJECT diff --git a/src/charts/legend/qboxplotlegendmarker_p.h b/src/charts/legend/qboxplotlegendmarker_p.h index 5d82965f..baf8fadc 100644 --- a/src/charts/legend/qboxplotlegendmarker_p.h +++ b/src/charts/legend/qboxplotlegendmarker_p.h @@ -49,7 +49,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QBoxPlotLegendMarker; -class QT_CHARTS_PRIVATE_EXPORT QBoxPlotLegendMarkerPrivate : public QLegendMarkerPrivate +class Q_CHARTS_PRIVATE_EXPORT QBoxPlotLegendMarkerPrivate : public QLegendMarkerPrivate { Q_OBJECT public: diff --git a/src/charts/legend/qcandlesticklegendmarker.h b/src/charts/legend/qcandlesticklegendmarker.h index dad57c4f..f3153d06 100644 --- a/src/charts/legend/qcandlesticklegendmarker.h +++ b/src/charts/legend/qcandlesticklegendmarker.h @@ -37,7 +37,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QCandlestickLegendMarkerPrivate; -class QT_CHARTS_EXPORT QCandlestickLegendMarker : public QLegendMarker +class Q_CHARTS_EXPORT QCandlestickLegendMarker : public QLegendMarker { Q_OBJECT diff --git a/src/charts/legend/qcandlesticklegendmarker_p.h b/src/charts/legend/qcandlesticklegendmarker_p.h index b92ea626..8d605ff2 100644 --- a/src/charts/legend/qcandlesticklegendmarker_p.h +++ b/src/charts/legend/qcandlesticklegendmarker_p.h @@ -47,7 +47,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QCandlestickLegendMarker; class QCandlestickSeries; -class QT_CHARTS_PRIVATE_EXPORT QCandlestickLegendMarkerPrivate : public QLegendMarkerPrivate +class Q_CHARTS_PRIVATE_EXPORT QCandlestickLegendMarkerPrivate : public QLegendMarkerPrivate { Q_OBJECT public: diff --git a/src/charts/legend/qlegend.cpp b/src/charts/legend/qlegend.cpp index 6cc9c7b6..6f5c2bb1 100644 --- a/src/charts/legend/qlegend.cpp +++ b/src/charts/legend/qlegend.cpp @@ -289,7 +289,8 @@ void QLegend::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, Q painter->setOpacity(opacity()); painter->setPen(d_ptr->m_pen); painter->setBrush(d_ptr->m_brush); - painter->drawRoundRect(rect(), d_ptr->roundness(rect().width()), d_ptr->roundness(rect().height())); + painter->drawRoundedRect(rect(), d_ptr->roundness(rect().width()), d_ptr->roundness(rect().height()), + Qt::RelativeSize); } diff --git a/src/charts/legend/qlegend.h b/src/charts/legend/qlegend.h index 7b5b3a2e..fe5641de 100644 --- a/src/charts/legend/qlegend.h +++ b/src/charts/legend/qlegend.h @@ -42,7 +42,7 @@ class QLegendPrivate; class QLegendMarker; class QAbstractSeries; -class QT_CHARTS_EXPORT QLegend : public QGraphicsWidget +class Q_CHARTS_EXPORT QLegend : public QGraphicsWidget { Q_OBJECT Q_PROPERTY(Qt::Alignment alignment READ alignment WRITE setAlignment) diff --git a/src/charts/legend/qlegend_p.h b/src/charts/legend/qlegend_p.h index 3ffff23d..138ebddb 100644 --- a/src/charts/legend/qlegend_p.h +++ b/src/charts/legend/qlegend_p.h @@ -50,7 +50,7 @@ class QAbstractSeries; class LegendLayout; class QLegendMarker; -class QT_CHARTS_PRIVATE_EXPORT QLegendPrivate : public QObject +class Q_CHARTS_PRIVATE_EXPORT QLegendPrivate : public QObject { Q_OBJECT public: diff --git a/src/charts/legend/qlegendmarker.h b/src/charts/legend/qlegendmarker.h index a3db411f..7b08d6a9 100644 --- a/src/charts/legend/qlegendmarker.h +++ b/src/charts/legend/qlegendmarker.h @@ -43,7 +43,7 @@ class QLegendMarkerPrivate; class QAbstractSeries; class QLegend; -class QT_CHARTS_EXPORT QLegendMarker : public QObject +class Q_CHARTS_EXPORT QLegendMarker : public QObject { Q_OBJECT diff --git a/src/charts/legend/qlegendmarker_p.h b/src/charts/legend/qlegendmarker_p.h index cd2ebea3..ccec65a5 100644 --- a/src/charts/legend/qlegendmarker_p.h +++ b/src/charts/legend/qlegendmarker_p.h @@ -54,7 +54,7 @@ class QLegend; class QLegendMarker; class LegendMarkerItem; -class QT_CHARTS_PRIVATE_EXPORT QLegendMarkerPrivate : public QObject +class Q_CHARTS_PRIVATE_EXPORT QLegendMarkerPrivate : public QObject { Q_OBJECT public: diff --git a/src/charts/legend/qpielegendmarker.h b/src/charts/legend/qpielegendmarker.h index a4a0463d..a0c65597 100644 --- a/src/charts/legend/qpielegendmarker.h +++ b/src/charts/legend/qpielegendmarker.h @@ -39,7 +39,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QPieLegendMarkerPrivate; -class QT_CHARTS_EXPORT QPieLegendMarker : public QLegendMarker +class Q_CHARTS_EXPORT QPieLegendMarker : public QLegendMarker { Q_OBJECT diff --git a/src/charts/legend/qpielegendmarker_p.h b/src/charts/legend/qpielegendmarker_p.h index 72bdd7ec..0649ef30 100644 --- a/src/charts/legend/qpielegendmarker_p.h +++ b/src/charts/legend/qpielegendmarker_p.h @@ -50,7 +50,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QPieLegendMarker; -class QT_CHARTS_PRIVATE_EXPORT QPieLegendMarkerPrivate : public QLegendMarkerPrivate +class Q_CHARTS_PRIVATE_EXPORT QPieLegendMarkerPrivate : public QLegendMarkerPrivate { Q_OBJECT public: diff --git a/src/charts/legend/qxylegendmarker.h b/src/charts/legend/qxylegendmarker.h index 0a714428..25634495 100644 --- a/src/charts/legend/qxylegendmarker.h +++ b/src/charts/legend/qxylegendmarker.h @@ -38,7 +38,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QXYLegendMarkerPrivate; -class QT_CHARTS_EXPORT QXYLegendMarker : public QLegendMarker +class Q_CHARTS_EXPORT QXYLegendMarker : public QLegendMarker { Q_OBJECT public: diff --git a/src/charts/legend/qxylegendmarker_p.h b/src/charts/legend/qxylegendmarker_p.h index 995a3226..548990fe 100644 --- a/src/charts/legend/qxylegendmarker_p.h +++ b/src/charts/legend/qxylegendmarker_p.h @@ -49,7 +49,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QXYLegendMarker; -class QT_CHARTS_PRIVATE_EXPORT QXYLegendMarkerPrivate : public QLegendMarkerPrivate +class Q_CHARTS_PRIVATE_EXPORT QXYLegendMarkerPrivate : public QLegendMarkerPrivate { Q_OBJECT public: diff --git a/src/charts/linechart/linechartitem_p.h b/src/charts/linechart/linechartitem_p.h index fd335168..ec10c066 100644 --- a/src/charts/linechart/linechartitem_p.h +++ b/src/charts/linechart/linechartitem_p.h @@ -50,7 +50,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QLineSeries; class ChartPresenter; -class QT_CHARTS_PRIVATE_EXPORT LineChartItem : public XYChart +class Q_CHARTS_PRIVATE_EXPORT LineChartItem : public XYChart { Q_OBJECT Q_INTERFACES(QGraphicsItem) diff --git a/src/charts/linechart/qlineseries.h b/src/charts/linechart/qlineseries.h index 654afac2..145f9d46 100644 --- a/src/charts/linechart/qlineseries.h +++ b/src/charts/linechart/qlineseries.h @@ -38,7 +38,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QLineSeriesPrivate; -class QT_CHARTS_EXPORT QLineSeries : public QXYSeries +class Q_CHARTS_EXPORT QLineSeries : public QXYSeries { Q_OBJECT diff --git a/src/charts/linechart/qlineseries_p.h b/src/charts/linechart/qlineseries_p.h index a59d39c7..26ee1324 100644 --- a/src/charts/linechart/qlineseries_p.h +++ b/src/charts/linechart/qlineseries_p.h @@ -45,7 +45,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_CHARTS_PRIVATE_EXPORT QLineSeriesPrivate: public QXYSeriesPrivate +class Q_CHARTS_PRIVATE_EXPORT QLineSeriesPrivate: public QXYSeriesPrivate { public: QLineSeriesPrivate(QLineSeries *q); diff --git a/src/charts/piechart/piechartitem_p.h b/src/charts/piechart/piechartitem_p.h index 53276313..55a3c583 100644 --- a/src/charts/piechart/piechartitem_p.h +++ b/src/charts/piechart/piechartitem_p.h @@ -54,7 +54,7 @@ class QPieSlice; class ChartPresenter; class PieAnimation; -class QT_CHARTS_PRIVATE_EXPORT PieChartItem : public ChartItem +class Q_CHARTS_PRIVATE_EXPORT PieChartItem : public ChartItem { Q_OBJECT diff --git a/src/charts/piechart/piesliceitem_p.h b/src/charts/piechart/piesliceitem_p.h index 832ae431..3756a1f6 100644 --- a/src/charts/piechart/piesliceitem_p.h +++ b/src/charts/piechart/piesliceitem_p.h @@ -56,7 +56,7 @@ class PieChartItem; class PieSliceLabel; class QPieSlice; -class QT_CHARTS_PRIVATE_EXPORT PieSliceItem : public QGraphicsObject +class Q_CHARTS_PRIVATE_EXPORT PieSliceItem : public QGraphicsObject { Q_OBJECT diff --git a/src/charts/piechart/qhpiemodelmapper.h b/src/charts/piechart/qhpiemodelmapper.h index aa25b9e6..96b3cf39 100644 --- a/src/charts/piechart/qhpiemodelmapper.h +++ b/src/charts/piechart/qhpiemodelmapper.h @@ -34,7 +34,7 @@ QT_CHARTS_BEGIN_NAMESPACE /* Comment line for syncqt to generate the fwd-include correctly, due to QTBUG-22432 */ -class QT_CHARTS_EXPORT QHPieModelMapper : public QPieModelMapper +class Q_CHARTS_EXPORT QHPieModelMapper : public QPieModelMapper { Q_OBJECT Q_PROPERTY(QtCharts::QPieSeries *series READ series WRITE setSeries NOTIFY seriesReplaced) diff --git a/src/charts/piechart/qpiemodelmapper.h b/src/charts/piechart/qpiemodelmapper.h index a9b07cf4..db1af9dd 100644 --- a/src/charts/piechart/qpiemodelmapper.h +++ b/src/charts/piechart/qpiemodelmapper.h @@ -42,7 +42,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QPieModelMapperPrivate; class QPieSeries; -class QT_CHARTS_EXPORT QPieModelMapper : public QObject +class Q_CHARTS_EXPORT QPieModelMapper : public QObject { Q_OBJECT diff --git a/src/charts/piechart/qpiemodelmapper_p.h b/src/charts/piechart/qpiemodelmapper_p.h index a590f4b6..892938ea 100644 --- a/src/charts/piechart/qpiemodelmapper_p.h +++ b/src/charts/piechart/qpiemodelmapper_p.h @@ -51,7 +51,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QPieSlice; -class QT_CHARTS_PRIVATE_EXPORT QPieModelMapperPrivate : public QObject +class Q_CHARTS_PRIVATE_EXPORT QPieModelMapperPrivate : public QObject { Q_OBJECT diff --git a/src/charts/piechart/qpieseries.h b/src/charts/piechart/qpieseries.h index 34d3b6c9..e04c93b6 100644 --- a/src/charts/piechart/qpieseries.h +++ b/src/charts/piechart/qpieseries.h @@ -36,7 +36,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QPieSeriesPrivate; -class QT_CHARTS_EXPORT QPieSeries : public QAbstractSeries +class Q_CHARTS_EXPORT QPieSeries : public QAbstractSeries { Q_OBJECT Q_PROPERTY(qreal horizontalPosition READ horizontalPosition WRITE setHorizontalPosition) diff --git a/src/charts/piechart/qpieseries_p.h b/src/charts/piechart/qpieseries_p.h index 887d8531..d2b6dbcf 100644 --- a/src/charts/piechart/qpieseries_p.h +++ b/src/charts/piechart/qpieseries_p.h @@ -46,7 +46,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QLegendPrivate; -class QT_CHARTS_PRIVATE_EXPORT QPieSeriesPrivate : public QAbstractSeriesPrivate +class Q_CHARTS_PRIVATE_EXPORT QPieSeriesPrivate : public QAbstractSeriesPrivate { Q_OBJECT diff --git a/src/charts/piechart/qpieslice.cpp b/src/charts/piechart/qpieslice.cpp index ca5ac413..f36f93a3 100644 --- a/src/charts/piechart/qpieslice.cpp +++ b/src/charts/piechart/qpieslice.cpp @@ -837,7 +837,5 @@ void QPieSlicePrivate::setAngleSpan(qreal span) QT_CHARTS_END_NAMESPACE -QT_CHARTS_USE_NAMESPACE - #include "moc_qpieslice.cpp" #include "moc_qpieslice_p.cpp" diff --git a/src/charts/piechart/qpieslice.h b/src/charts/piechart/qpieslice.h index d508e001..84e474d1 100644 --- a/src/charts/piechart/qpieslice.h +++ b/src/charts/piechart/qpieslice.h @@ -40,7 +40,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QPieSlicePrivate; class QPieSeries; -class QT_CHARTS_EXPORT QPieSlice : public QObject +class Q_CHARTS_EXPORT QPieSlice : public QObject { Q_OBJECT Q_ENUMS(LabelPosition) diff --git a/src/charts/piechart/qpieslice_p.h b/src/charts/piechart/qpieslice_p.h index bb64b3d2..9b7d8826 100644 --- a/src/charts/piechart/qpieslice_p.h +++ b/src/charts/piechart/qpieslice_p.h @@ -47,7 +47,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QPieSeries; -class QT_CHARTS_PRIVATE_EXPORT QPieSlicePrivate : public QObject +class Q_CHARTS_PRIVATE_EXPORT QPieSlicePrivate : public QObject { Q_OBJECT diff --git a/src/charts/piechart/qvpiemodelmapper.h b/src/charts/piechart/qvpiemodelmapper.h index 2a7a5b2b..37eded87 100644 --- a/src/charts/piechart/qvpiemodelmapper.h +++ b/src/charts/piechart/qvpiemodelmapper.h @@ -34,7 +34,7 @@ QT_CHARTS_BEGIN_NAMESPACE /* Comment line for syncqt to generate the fwd-include correctly, due to QTBUG-22432 */ -class QT_CHARTS_EXPORT QVPieModelMapper : public QPieModelMapper +class Q_CHARTS_EXPORT QVPieModelMapper : public QPieModelMapper { Q_OBJECT Q_PROPERTY(QtCharts::QPieSeries *series READ series WRITE setSeries NOTIFY seriesReplaced) diff --git a/src/charts/qabstractseries.h b/src/charts/qabstractseries.h index 39368667..ce1511d8 100644 --- a/src/charts/qabstractseries.h +++ b/src/charts/qabstractseries.h @@ -40,7 +40,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QAbstractSeriesPrivate; class QChart; -class QT_CHARTS_EXPORT QAbstractSeries : public QObject +class Q_CHARTS_EXPORT QAbstractSeries : public QObject { Q_OBJECT Q_PROPERTY(QString name READ name WRITE setName NOTIFY nameChanged) diff --git a/src/charts/qabstractseries_p.h b/src/charts/qabstractseries_p.h index 1941b92f..3bd8649d 100644 --- a/src/charts/qabstractseries_p.h +++ b/src/charts/qabstractseries_p.h @@ -62,7 +62,7 @@ class ChartAnimation; class ChartItem; class BoxPlotChartItem; -class QT_CHARTS_PRIVATE_EXPORT QAbstractSeriesPrivate : public QObject +class Q_CHARTS_PRIVATE_EXPORT QAbstractSeriesPrivate : public QObject { Q_OBJECT public: diff --git a/src/charts/qchart.h b/src/charts/qchart.h index 9ac70e45..e287500d 100644 --- a/src/charts/qchart.h +++ b/src/charts/qchart.h @@ -47,7 +47,7 @@ class QLegend; class QChartPrivate; class QBoxPlotSeries; -class QT_CHARTS_EXPORT QChart : public QGraphicsWidget +class Q_CHARTS_EXPORT QChart : public QGraphicsWidget { Q_OBJECT Q_PROPERTY(QChart::ChartTheme theme READ theme WRITE setTheme) diff --git a/src/charts/qchart_p.h b/src/charts/qchart_p.h index 7ed518b8..168a6fd9 100644 --- a/src/charts/qchart_p.h +++ b/src/charts/qchart_p.h @@ -50,7 +50,7 @@ class ChartPresenter; class QLegend; class ChartDataSet; -class QT_CHARTS_PRIVATE_EXPORT QChartPrivate +class Q_CHARTS_PRIVATE_EXPORT QChartPrivate { public: diff --git a/src/charts/qchartglobal.h b/src/charts/qchartglobal.h index 96160021..759293d0 100644 --- a/src/charts/qchartglobal.h +++ b/src/charts/qchartglobal.h @@ -44,15 +44,15 @@ #ifndef QT_STATIC # if defined(QT_BUILD_CHARTS_LIB) -# define QT_CHARTS_EXPORT Q_DECL_EXPORT +# define Q_CHARTS_EXPORT Q_DECL_EXPORT # else -# define QT_CHARTS_EXPORT Q_DECL_IMPORT +# define Q_CHARTS_EXPORT Q_DECL_IMPORT # endif #else -# define QT_CHARTS_EXPORT +# define Q_CHARTS_EXPORT #endif -#define QT_CHARTS_AUTOTEST_EXPORT Q_AUTOTEST_EXPORT +#define Q_CHARTS_AUTOTEST_EXPORT Q_AUTOTEST_EXPORT #ifndef Q_CLANG_QDOC #define QT_CHARTS_NAMESPACE QtCharts diff --git a/src/charts/qchartglobal_p.h b/src/charts/qchartglobal_p.h index 59bf62f8..24e4922b 100644 --- a/src/charts/qchartglobal_p.h +++ b/src/charts/qchartglobal_p.h @@ -43,6 +43,6 @@ #include "qchartglobal.h" -#define QT_CHARTS_PRIVATE_EXPORT QT_CHARTS_EXPORT +#define Q_CHARTS_PRIVATE_EXPORT Q_CHARTS_EXPORT #endif // QCHARTGLOBAL_P_H diff --git a/src/charts/qchartview.h b/src/charts/qchartview.h index 1cf719b3..f8056487 100644 --- a/src/charts/qchartview.h +++ b/src/charts/qchartview.h @@ -44,7 +44,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QChartViewPrivate; -class QT_CHARTS_EXPORT QChartView : public QGraphicsView +class Q_CHARTS_EXPORT QChartView : public QGraphicsView { Q_OBJECT Q_ENUMS(RubberBand) diff --git a/src/charts/qchartview_p.h b/src/charts/qchartview_p.h index 01c66908..5fb4ca2b 100644 --- a/src/charts/qchartview_p.h +++ b/src/charts/qchartview_p.h @@ -52,7 +52,7 @@ class QChart; class ChartPresenter; class QChartView; -class QT_CHARTS_PRIVATE_EXPORT QChartViewPrivate +class Q_CHARTS_PRIVATE_EXPORT QChartViewPrivate { public: explicit QChartViewPrivate(QChartView *q, QChart *chart = 0); diff --git a/src/charts/qpolarchart.h b/src/charts/qpolarchart.h index 8d3fa287..41bb4f78 100644 --- a/src/charts/qpolarchart.h +++ b/src/charts/qpolarchart.h @@ -37,7 +37,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QAbstractSeries; class QAbstractAxis; -class QT_CHARTS_EXPORT QPolarChart : public QChart +class Q_CHARTS_EXPORT QPolarChart : public QChart { Q_OBJECT Q_ENUMS(PolarOrientation) diff --git a/src/charts/scatterchart/qscatterseries.cpp b/src/charts/scatterchart/qscatterseries.cpp index fe58fd9e..ee4ff411 100644 --- a/src/charts/scatterchart/qscatterseries.cpp +++ b/src/charts/scatterchart/qscatterseries.cpp @@ -100,6 +100,11 @@ */ /*! + \qmlproperty brush ScatterSeries::brush + The brush used to draw the scatter series markers. +*/ + +/*! \property QScatterSeries::color \brief The color used to fill the series markers. diff --git a/src/charts/scatterchart/qscatterseries.h b/src/charts/scatterchart/qscatterseries.h index ac3e5989..d79a2bd1 100644 --- a/src/charts/scatterchart/qscatterseries.h +++ b/src/charts/scatterchart/qscatterseries.h @@ -37,7 +37,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QScatterSeriesPrivate; -class QT_CHARTS_EXPORT QScatterSeries : public QXYSeries +class Q_CHARTS_EXPORT QScatterSeries : public QXYSeries { Q_OBJECT Q_PROPERTY(QColor color READ color WRITE setColor NOTIFY colorChanged) diff --git a/src/charts/scatterchart/qscatterseries_p.h b/src/charts/scatterchart/qscatterseries_p.h index 7d9c723f..f6253b36 100644 --- a/src/charts/scatterchart/qscatterseries_p.h +++ b/src/charts/scatterchart/qscatterseries_p.h @@ -44,7 +44,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_CHARTS_PRIVATE_EXPORT QScatterSeriesPrivate: public QXYSeriesPrivate +class Q_CHARTS_PRIVATE_EXPORT QScatterSeriesPrivate: public QXYSeriesPrivate { public: QScatterSeriesPrivate(QScatterSeries *q); diff --git a/src/charts/scatterchart/scatterchartitem_p.h b/src/charts/scatterchart/scatterchartitem_p.h index 5bf52af0..7188992f 100644 --- a/src/charts/scatterchart/scatterchartitem_p.h +++ b/src/charts/scatterchart/scatterchartitem_p.h @@ -50,7 +50,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QScatterSeries; -class QT_CHARTS_PRIVATE_EXPORT ScatterChartItem : public XYChart +class Q_CHARTS_PRIVATE_EXPORT ScatterChartItem : public XYChart { Q_OBJECT Q_INTERFACES(QGraphicsItem) @@ -103,7 +103,7 @@ private: bool m_mousePressed; }; -class QT_CHARTS_PRIVATE_EXPORT CircleMarker: public QGraphicsEllipseItem +class Q_CHARTS_PRIVATE_EXPORT CircleMarker: public QGraphicsEllipseItem { public: @@ -150,7 +150,7 @@ private: ScatterChartItem *m_parent; }; -class QT_CHARTS_PRIVATE_EXPORT RectangleMarker: public QGraphicsRectItem +class Q_CHARTS_PRIVATE_EXPORT RectangleMarker: public QGraphicsRectItem { public: diff --git a/src/charts/scroller_p.h b/src/charts/scroller_p.h index 3412a7ff..7cc7a4f6 100644 --- a/src/charts/scroller_p.h +++ b/src/charts/scroller_p.h @@ -55,7 +55,7 @@ QT_CHARTS_BEGIN_NAMESPACE class Scroller; class QLegend; -class QT_CHARTS_PRIVATE_EXPORT ScrollTicker : public QObject +class Q_CHARTS_PRIVATE_EXPORT ScrollTicker : public QObject { Q_OBJECT public: @@ -70,7 +70,7 @@ private: Scroller *m_scroller; }; -class QT_CHARTS_PRIVATE_EXPORT Scroller +class Q_CHARTS_PRIVATE_EXPORT Scroller { public: enum State { diff --git a/src/charts/splinechart/qsplineseries.h b/src/charts/splinechart/qsplineseries.h index 35ebcf31..6c05ad89 100644 --- a/src/charts/splinechart/qsplineseries.h +++ b/src/charts/splinechart/qsplineseries.h @@ -40,7 +40,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QSplineSeriesPrivate; -class QT_CHARTS_EXPORT QSplineSeries : public QLineSeries +class Q_CHARTS_EXPORT QSplineSeries : public QLineSeries { Q_OBJECT diff --git a/src/charts/splinechart/qsplineseries_p.h b/src/charts/splinechart/qsplineseries_p.h index dd3fc222..b7dba7d4 100644 --- a/src/charts/splinechart/qsplineseries_p.h +++ b/src/charts/splinechart/qsplineseries_p.h @@ -45,7 +45,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_CHARTS_PRIVATE_EXPORT QSplineSeriesPrivate: public QLineSeriesPrivate +class Q_CHARTS_PRIVATE_EXPORT QSplineSeriesPrivate: public QLineSeriesPrivate { Q_OBJECT public: diff --git a/src/charts/splinechart/splinechartitem_p.h b/src/charts/splinechart/splinechartitem_p.h index bc5f5661..66aae47a 100644 --- a/src/charts/splinechart/splinechartitem_p.h +++ b/src/charts/splinechart/splinechartitem_p.h @@ -47,7 +47,7 @@ QT_CHARTS_BEGIN_NAMESPACE class SplineAnimation; -class QT_CHARTS_PRIVATE_EXPORT SplineChartItem : public XYChart +class Q_CHARTS_PRIVATE_EXPORT SplineChartItem : public XYChart { Q_OBJECT Q_INTERFACES(QGraphicsItem) diff --git a/src/charts/themes/charttheme_p.h b/src/charts/themes/charttheme_p.h index bb128134..af56e0e1 100644 --- a/src/charts/themes/charttheme_p.h +++ b/src/charts/themes/charttheme_p.h @@ -46,7 +46,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_CHARTS_PRIVATE_EXPORT ChartTheme +class Q_CHARTS_PRIVATE_EXPORT ChartTheme { public: diff --git a/src/charts/themes/chartthemebluecerulean_p.h b/src/charts/themes/chartthemebluecerulean_p.h index 6bdcc10b..f683abcf 100644 --- a/src/charts/themes/chartthemebluecerulean_p.h +++ b/src/charts/themes/chartthemebluecerulean_p.h @@ -44,7 +44,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_CHARTS_PRIVATE_EXPORT ChartThemeBlueCerulean: public ChartTheme +class Q_CHARTS_PRIVATE_EXPORT ChartThemeBlueCerulean: public ChartTheme { public: ChartThemeBlueCerulean() : ChartTheme(QChart::ChartThemeBlueCerulean) { diff --git a/src/charts/themes/chartthemeblueicy_p.h b/src/charts/themes/chartthemeblueicy_p.h index 808c16e5..3066fb82 100644 --- a/src/charts/themes/chartthemeblueicy_p.h +++ b/src/charts/themes/chartthemeblueicy_p.h @@ -44,7 +44,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_CHARTS_PRIVATE_EXPORT ChartThemeBlueIcy: public ChartTheme +class Q_CHARTS_PRIVATE_EXPORT ChartThemeBlueIcy: public ChartTheme { public: ChartThemeBlueIcy() : ChartTheme(QChart::ChartThemeBlueIcy) diff --git a/src/charts/themes/chartthemebluencs_p.h b/src/charts/themes/chartthemebluencs_p.h index 94234224..22c9e2ba 100644 --- a/src/charts/themes/chartthemebluencs_p.h +++ b/src/charts/themes/chartthemebluencs_p.h @@ -44,7 +44,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_CHARTS_PRIVATE_EXPORT ChartThemeBlueNcs: public ChartTheme +class Q_CHARTS_PRIVATE_EXPORT ChartThemeBlueNcs: public ChartTheme { public: ChartThemeBlueNcs() : ChartTheme(QChart::ChartThemeBlueNcs) diff --git a/src/charts/themes/chartthemebrownsand_p.h b/src/charts/themes/chartthemebrownsand_p.h index 5e48fd80..3efc02f6 100644 --- a/src/charts/themes/chartthemebrownsand_p.h +++ b/src/charts/themes/chartthemebrownsand_p.h @@ -44,7 +44,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_CHARTS_PRIVATE_EXPORT ChartThemeBrownSand: public ChartTheme +class Q_CHARTS_PRIVATE_EXPORT ChartThemeBrownSand: public ChartTheme { public: ChartThemeBrownSand() : ChartTheme(QChart::ChartThemeBrownSand) diff --git a/src/charts/themes/chartthemedark_p.h b/src/charts/themes/chartthemedark_p.h index a8f9f477..ca49bd1c 100644 --- a/src/charts/themes/chartthemedark_p.h +++ b/src/charts/themes/chartthemedark_p.h @@ -44,7 +44,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_CHARTS_PRIVATE_EXPORT ChartThemeDark : public ChartTheme +class Q_CHARTS_PRIVATE_EXPORT ChartThemeDark : public ChartTheme { public: ChartThemeDark() : ChartTheme(QChart::ChartThemeDark) diff --git a/src/charts/themes/chartthemehighcontrast_p.h b/src/charts/themes/chartthemehighcontrast_p.h index b1cd8446..4a29cf19 100644 --- a/src/charts/themes/chartthemehighcontrast_p.h +++ b/src/charts/themes/chartthemehighcontrast_p.h @@ -44,7 +44,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_CHARTS_PRIVATE_EXPORT ChartThemeHighContrast : public ChartTheme +class Q_CHARTS_PRIVATE_EXPORT ChartThemeHighContrast : public ChartTheme { public: ChartThemeHighContrast() : ChartTheme(QChart::ChartThemeHighContrast) diff --git a/src/charts/themes/chartthemelight_p.h b/src/charts/themes/chartthemelight_p.h index e7ed47c0..64121335 100644 --- a/src/charts/themes/chartthemelight_p.h +++ b/src/charts/themes/chartthemelight_p.h @@ -44,7 +44,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_CHARTS_PRIVATE_EXPORT ChartThemeLight: public ChartTheme +class Q_CHARTS_PRIVATE_EXPORT ChartThemeLight: public ChartTheme { public: ChartThemeLight() : ChartTheme(QChart::ChartThemeLight) diff --git a/src/charts/themes/chartthemeqt_p.h b/src/charts/themes/chartthemeqt_p.h index af335a89..4a5c2fcf 100644 --- a/src/charts/themes/chartthemeqt_p.h +++ b/src/charts/themes/chartthemeqt_p.h @@ -44,7 +44,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_CHARTS_PRIVATE_EXPORT ChartThemeQt : public ChartTheme +class Q_CHARTS_PRIVATE_EXPORT ChartThemeQt : public ChartTheme { public: ChartThemeQt() : ChartTheme(QChart::ChartThemeQt) diff --git a/src/charts/themes/chartthemesystem_p.h b/src/charts/themes/chartthemesystem_p.h index a79ac201..f967815c 100644 --- a/src/charts/themes/chartthemesystem_p.h +++ b/src/charts/themes/chartthemesystem_p.h @@ -48,7 +48,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_CHARTS_PRIVATE_EXPORT ChartThemeSystem: public ChartTheme +class Q_CHARTS_PRIVATE_EXPORT ChartThemeSystem: public ChartTheme { public: // System theme not used at the moment (the user is not able to select this theme) diff --git a/src/charts/xychart/glxyseriesdata_p.h b/src/charts/xychart/glxyseriesdata_p.h index a5322d50..006a810c 100644 --- a/src/charts/xychart/glxyseriesdata_p.h +++ b/src/charts/xychart/glxyseriesdata_p.h @@ -79,7 +79,7 @@ public: typedef QMap<const QXYSeries *, GLXYSeriesData *> GLXYDataMap; typedef QMapIterator<const QXYSeries *, GLXYSeriesData *> GLXYDataMapIterator; -class QT_CHARTS_PRIVATE_EXPORT GLXYSeriesDataManager : public QObject +class Q_CHARTS_PRIVATE_EXPORT GLXYSeriesDataManager : public QObject { Q_OBJECT diff --git a/src/charts/xychart/qhxymodelmapper.h b/src/charts/xychart/qhxymodelmapper.h index 15d80dfd..76251602 100644 --- a/src/charts/xychart/qhxymodelmapper.h +++ b/src/charts/xychart/qhxymodelmapper.h @@ -34,7 +34,7 @@ QT_CHARTS_BEGIN_NAMESPACE /* Comment line for syncqt to generate the fwd-include correctly, due to QTBUG-22432 */ -class QT_CHARTS_EXPORT QHXYModelMapper : public QXYModelMapper +class Q_CHARTS_EXPORT QHXYModelMapper : public QXYModelMapper { Q_OBJECT Q_PROPERTY(QtCharts::QXYSeries *series READ series WRITE setSeries NOTIFY seriesReplaced) diff --git a/src/charts/xychart/qvxymodelmapper.h b/src/charts/xychart/qvxymodelmapper.h index 277cae00..867b0a02 100644 --- a/src/charts/xychart/qvxymodelmapper.h +++ b/src/charts/xychart/qvxymodelmapper.h @@ -34,7 +34,7 @@ QT_CHARTS_BEGIN_NAMESPACE /* Comment line for syncqt to generate the fwd-include correctly, due to QTBUG-22432 */ -class QT_CHARTS_EXPORT QVXYModelMapper : public QXYModelMapper +class Q_CHARTS_EXPORT QVXYModelMapper : public QXYModelMapper { Q_OBJECT Q_PROPERTY(QtCharts::QXYSeries *series READ series WRITE setSeries NOTIFY seriesReplaced) diff --git a/src/charts/xychart/qxymodelmapper.h b/src/charts/xychart/qxymodelmapper.h index c7d53284..7956aab8 100644 --- a/src/charts/xychart/qxymodelmapper.h +++ b/src/charts/xychart/qxymodelmapper.h @@ -42,7 +42,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QXYModelMapperPrivate; class QXYSeries; -class QT_CHARTS_EXPORT QXYModelMapper : public QObject +class Q_CHARTS_EXPORT QXYModelMapper : public QObject { Q_OBJECT diff --git a/src/charts/xychart/qxymodelmapper_p.h b/src/charts/xychart/qxymodelmapper_p.h index daa82342..86e557fe 100644 --- a/src/charts/xychart/qxymodelmapper_p.h +++ b/src/charts/xychart/qxymodelmapper_p.h @@ -54,7 +54,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QXYModelMapper; class QXYSeries; -class QT_CHARTS_PRIVATE_EXPORT QXYModelMapperPrivate : public QObject +class Q_CHARTS_PRIVATE_EXPORT QXYModelMapperPrivate : public QObject { Q_OBJECT diff --git a/src/charts/xychart/qxyseries.cpp b/src/charts/xychart/qxyseries.cpp index 039fe247..a290f6d4 100644 --- a/src/charts/xychart/qxyseries.cpp +++ b/src/charts/xychart/qxyseries.cpp @@ -1022,7 +1022,7 @@ void QXYSeriesPrivate::drawSeriesPointLabels(QPainter *painter, const QVector<QP pointLabel.replace(yPointTag, presenter()->numberToString(m_points.at(i).y())); // Position text in relation to the point - int pointLabelWidth = fm.width(pointLabel); + int pointLabelWidth = fm.horizontalAdvance(pointLabel); QPointF position(points.at(i)); position.setX(position.x() - pointLabelWidth / 2); position.setY(position.y() - labelOffset); diff --git a/src/charts/xychart/qxyseries.h b/src/charts/xychart/qxyseries.h index f81161ff..f2c55ba6 100644 --- a/src/charts/xychart/qxyseries.h +++ b/src/charts/xychart/qxyseries.h @@ -44,7 +44,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QXYSeriesPrivate; class QXYModelMapper; -class QT_CHARTS_EXPORT QXYSeries : public QAbstractSeries +class Q_CHARTS_EXPORT QXYSeries : public QAbstractSeries { Q_OBJECT Q_PROPERTY(bool pointsVisible READ pointsVisible WRITE setPointsVisible) diff --git a/src/charts/xychart/qxyseries_p.h b/src/charts/xychart/qxyseries_p.h index f803c52a..6d243154 100644 --- a/src/charts/xychart/qxyseries_p.h +++ b/src/charts/xychart/qxyseries_p.h @@ -47,7 +47,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QXYSeries; class QAbstractAxis; -class QT_CHARTS_PRIVATE_EXPORT QXYSeriesPrivate: public QAbstractSeriesPrivate +class Q_CHARTS_PRIVATE_EXPORT QXYSeriesPrivate: public QAbstractSeriesPrivate { Q_OBJECT diff --git a/src/charts/xychart/xychart_p.h b/src/charts/xychart/xychart_p.h index 64c51f33..3e1300ce 100644 --- a/src/charts/xychart/xychart_p.h +++ b/src/charts/xychart/xychart_p.h @@ -51,7 +51,7 @@ QT_CHARTS_BEGIN_NAMESPACE class ChartPresenter; class QXYSeries; -class QT_CHARTS_PRIVATE_EXPORT XYChart : public ChartItem +class Q_CHARTS_PRIVATE_EXPORT XYChart : public ChartItem { Q_OBJECT public: diff --git a/src/chartsqml2/chartsqml2.pro b/src/chartsqml2/chartsqml2.pro index 562e02b8..e7a2a4c5 100644 --- a/src/chartsqml2/chartsqml2.pro +++ b/src/chartsqml2/chartsqml2.pro @@ -56,7 +56,7 @@ contains(QT_CONFIG, opengl) { HEADERS += $$PRIVATE_HEADERS INCLUDEPATH += $$PWD -IMPORT_VERSION = 2.3 +IMPORT_VERSION = 2.$$QT_MINOR_VERSION QMAKE_QMLPLUGINDUMP_FLAGS = -qapp load(qml_plugin) diff --git a/src/chartsqml2/chartsqml2_plugin.cpp b/src/chartsqml2/chartsqml2_plugin.cpp index 3720a0a8..e50ab84c 100644 --- a/src/chartsqml2/chartsqml2_plugin.cpp +++ b/src/chartsqml2/chartsqml2_plugin.cpp @@ -346,6 +346,9 @@ public: // QtCharts 2.3 qmlRegisterType<QValueAxis, 1>(uri, 2, 3, "ValueAxis"); + + // Auto-increment the import to stay in sync with ALL future QtQuick minor versions + qmlRegisterModule(uri, 2, QT_VERSION_MINOR); } }; diff --git a/src/chartsqml2/declarativeabstractrendernode_p.h b/src/chartsqml2/declarativeabstractrendernode_p.h index 905b6385..1ee307f6 100644 --- a/src/chartsqml2/declarativeabstractrendernode_p.h +++ b/src/chartsqml2/declarativeabstractrendernode_p.h @@ -47,7 +47,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_QMLCHARTS_PRIVATE_EXPORT MouseEventResponse { +class Q_QMLCHARTS_PRIVATE_EXPORT MouseEventResponse { public: enum MouseEventType { None, @@ -71,7 +71,7 @@ public: const QXYSeries *series; }; -class QT_QMLCHARTS_PRIVATE_EXPORT DeclarativeAbstractRenderNode : public QSGRootNode +class Q_QMLCHARTS_PRIVATE_EXPORT DeclarativeAbstractRenderNode : public QSGRootNode { public: DeclarativeAbstractRenderNode() {} diff --git a/src/chartsqml2/declarativeareaseries_p.h b/src/chartsqml2/declarativeareaseries_p.h index cc8b7421..18836768 100644 --- a/src/chartsqml2/declarativeareaseries_p.h +++ b/src/chartsqml2/declarativeareaseries_p.h @@ -46,7 +46,7 @@ QT_CHARTS_BEGIN_NAMESPACE class DeclarativeLineSeries; -class QT_QMLCHARTS_PRIVATE_EXPORT DeclarativeAreaSeries : public QAreaSeries +class Q_QMLCHARTS_PRIVATE_EXPORT DeclarativeAreaSeries : public QAreaSeries { Q_OBJECT Q_PROPERTY(QtCharts::DeclarativeLineSeries *upperSeries READ upperSeries WRITE setUpperSeries) diff --git a/src/chartsqml2/declarativeaxes_p.h b/src/chartsqml2/declarativeaxes_p.h index fa328db8..c87f6a48 100644 --- a/src/chartsqml2/declarativeaxes_p.h +++ b/src/chartsqml2/declarativeaxes_p.h @@ -47,7 +47,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QAbstractAxis; -class QT_QMLCHARTS_PRIVATE_EXPORT DeclarativeAxes : public QObject +class Q_QMLCHARTS_PRIVATE_EXPORT DeclarativeAxes : public QObject { Q_OBJECT Q_PROPERTY(QtCharts::QAbstractAxis *axisX READ axisX WRITE setAxisX NOTIFY axisXChanged) diff --git a/src/chartsqml2/declarativebarseries_p.h b/src/chartsqml2/declarativebarseries_p.h index bba71dfa..d84f4155 100644 --- a/src/chartsqml2/declarativebarseries_p.h +++ b/src/chartsqml2/declarativebarseries_p.h @@ -56,7 +56,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QChart; -class QT_QMLCHARTS_PRIVATE_EXPORT DeclarativeBarSet : public QBarSet +class Q_QMLCHARTS_PRIVATE_EXPORT DeclarativeBarSet : public QBarSet { Q_OBJECT Q_PROPERTY(QVariantList values READ values WRITE setValues) @@ -93,7 +93,7 @@ private: QImage m_brushImage; }; -class QT_QMLCHARTS_PRIVATE_EXPORT DeclarativeBarSeries : public QBarSeries, public QQmlParserStatus +class Q_QMLCHARTS_PRIVATE_EXPORT DeclarativeBarSeries : public QBarSeries, public QQmlParserStatus { Q_OBJECT Q_INTERFACES(QQmlParserStatus) @@ -140,7 +140,7 @@ public: DeclarativeAxes *m_axes; }; -class QT_QMLCHARTS_PRIVATE_EXPORT DeclarativeStackedBarSeries : public QStackedBarSeries, public QQmlParserStatus +class Q_QMLCHARTS_PRIVATE_EXPORT DeclarativeStackedBarSeries : public QStackedBarSeries, public QQmlParserStatus { Q_OBJECT Q_INTERFACES(QQmlParserStatus) @@ -187,7 +187,7 @@ public: DeclarativeAxes *m_axes; }; -class QT_QMLCHARTS_PRIVATE_EXPORT DeclarativePercentBarSeries : public QPercentBarSeries, public QQmlParserStatus +class Q_QMLCHARTS_PRIVATE_EXPORT DeclarativePercentBarSeries : public QPercentBarSeries, public QQmlParserStatus { Q_OBJECT Q_INTERFACES(QQmlParserStatus) @@ -234,7 +234,7 @@ public: DeclarativeAxes *m_axes; }; -class QT_QMLCHARTS_PRIVATE_EXPORT DeclarativeHorizontalBarSeries : public QHorizontalBarSeries, public QQmlParserStatus +class Q_QMLCHARTS_PRIVATE_EXPORT DeclarativeHorizontalBarSeries : public QHorizontalBarSeries, public QQmlParserStatus { Q_OBJECT Q_INTERFACES(QQmlParserStatus) @@ -281,7 +281,7 @@ public: DeclarativeAxes *m_axes; }; -class QT_QMLCHARTS_PRIVATE_EXPORT DeclarativeHorizontalStackedBarSeries : public QHorizontalStackedBarSeries, public QQmlParserStatus +class Q_QMLCHARTS_PRIVATE_EXPORT DeclarativeHorizontalStackedBarSeries : public QHorizontalStackedBarSeries, public QQmlParserStatus { Q_OBJECT Q_INTERFACES(QQmlParserStatus) @@ -328,7 +328,7 @@ public: DeclarativeAxes *m_axes; }; -class QT_QMLCHARTS_PRIVATE_EXPORT DeclarativeHorizontalPercentBarSeries : public QHorizontalPercentBarSeries, public QQmlParserStatus +class Q_QMLCHARTS_PRIVATE_EXPORT DeclarativeHorizontalPercentBarSeries : public QHorizontalPercentBarSeries, public QQmlParserStatus { Q_OBJECT Q_INTERFACES(QQmlParserStatus) diff --git a/src/chartsqml2/declarativeboxplotseries_p.h b/src/chartsqml2/declarativeboxplotseries_p.h index 19d549af..8cc5e84a 100644 --- a/src/chartsqml2/declarativeboxplotseries_p.h +++ b/src/chartsqml2/declarativeboxplotseries_p.h @@ -49,7 +49,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_QMLCHARTS_PRIVATE_EXPORT DeclarativeBoxSet : public QBoxSet +class Q_QMLCHARTS_PRIVATE_EXPORT DeclarativeBoxSet : public QBoxSet { Q_OBJECT Q_PROPERTY(QVariantList values READ values WRITE setValues) @@ -93,7 +93,7 @@ private: QImage m_brushImage; }; -class QT_QMLCHARTS_PRIVATE_EXPORT DeclarativeBoxPlotSeries : public QBoxPlotSeries, public QQmlParserStatus +class Q_QMLCHARTS_PRIVATE_EXPORT DeclarativeBoxPlotSeries : public QBoxPlotSeries, public QQmlParserStatus { Q_OBJECT Q_INTERFACES(QQmlParserStatus) diff --git a/src/chartsqml2/declarativecandlestickseries_p.h b/src/chartsqml2/declarativecandlestickseries_p.h index 5ed0989c..643d4d2f 100644 --- a/src/chartsqml2/declarativecandlestickseries_p.h +++ b/src/chartsqml2/declarativecandlestickseries_p.h @@ -50,7 +50,7 @@ QT_CHARTS_BEGIN_NAMESPACE class DeclarativeAxes; class QAbstractAxis; -class QT_QMLCHARTS_PRIVATE_EXPORT DeclarativeCandlestickSet : public QCandlestickSet +class Q_QMLCHARTS_PRIVATE_EXPORT DeclarativeCandlestickSet : public QCandlestickSet { Q_OBJECT Q_PROPERTY(QString brushFilename READ brushFilename WRITE setBrushFilename NOTIFY brushFilenameChanged) diff --git a/src/chartsqml2/declarativecategoryaxis.cpp b/src/chartsqml2/declarativecategoryaxis.cpp index bf6afa58..1b1826fd 100644 --- a/src/chartsqml2/declarativecategoryaxis.cpp +++ b/src/chartsqml2/declarativecategoryaxis.cpp @@ -30,6 +30,8 @@ #include "declarativecategoryaxis_p.h" #include <QtCore/QDebug> +#include <algorithm> + QT_CHARTS_BEGIN_NAMESPACE /*! @@ -83,7 +85,7 @@ void DeclarativeCategoryAxis::componentComplete() } // Sort and append the range objects according to end value - qSort(ranges.begin(), ranges.end(), endValueLessThan); + std::sort(ranges.begin(), ranges.end(), endValueLessThan); for (int i(0); i < ranges.count(); i++) append(ranges.at(i).first, ranges.at(i).second); } diff --git a/src/chartsqml2/declarativecategoryaxis_p.h b/src/chartsqml2/declarativecategoryaxis_p.h index e50844b2..9bcd7ba8 100644 --- a/src/chartsqml2/declarativecategoryaxis_p.h +++ b/src/chartsqml2/declarativecategoryaxis_p.h @@ -47,7 +47,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_QMLCHARTS_PRIVATE_EXPORT DeclarativeCategoryRange : public QObject +class Q_QMLCHARTS_PRIVATE_EXPORT DeclarativeCategoryRange : public QObject { Q_OBJECT Q_PROPERTY(qreal endValue READ endValue WRITE setEndValue) diff --git a/src/chartsqml2/declarativechart.cpp b/src/chartsqml2/declarativechart.cpp index 040a8629..23ee2a11 100644 --- a/src/chartsqml2/declarativechart.cpp +++ b/src/chartsqml2/declarativechart.cpp @@ -445,7 +445,7 @@ DeclarativeChart::DeclarativeChart(QChart::ChartType type, QQuickItem *parent) // The symbol resides in qbarmodelmapper.cpp#548 in the C++ module. // Here, it gets imported and reset to the DeclarativeBarSet allocator #if defined(Q_OS_WIN) && !defined(QT_STATIC) -QT_CHARTS_EXPORT +Q_CHARTS_EXPORT #else extern #endif diff --git a/src/chartsqml2/declarativechart_p.h b/src/chartsqml2/declarativechart_p.h index a8441d87..0f45a3b8 100644 --- a/src/chartsqml2/declarativechart_p.h +++ b/src/chartsqml2/declarativechart_p.h @@ -57,7 +57,7 @@ class DeclarativeMargins; class Domain; class DeclarativeAxes; -class QT_QMLCHARTS_PRIVATE_EXPORT DeclarativeChart : public QQuickItem +class Q_QMLCHARTS_PRIVATE_EXPORT DeclarativeChart : public QQuickItem { Q_OBJECT Q_PROPERTY(Theme theme READ theme WRITE setTheme) diff --git a/src/chartsqml2/declarativechartglobal_p.h b/src/chartsqml2/declarativechartglobal_p.h index a897d4ca..fb01a7c6 100644 --- a/src/chartsqml2/declarativechartglobal_p.h +++ b/src/chartsqml2/declarativechartglobal_p.h @@ -43,12 +43,12 @@ #ifndef QT_STATIC # if defined(QT_BUILD_QMLCHARTS_LIB) -# define QT_QMLCHARTS_PRIVATE_EXPORT Q_DECL_EXPORT +# define Q_QMLCHARTS_PRIVATE_EXPORT Q_DECL_EXPORT # else -# define QT_QMLCHARTS_PRIVATE_EXPORT Q_DECL_IMPORT +# define Q_QMLCHARTS_PRIVATE_EXPORT Q_DECL_IMPORT # endif #else -# define QT_QMLCHARTS_PRIVATE_EXPORT +# define Q_QMLCHARTS_PRIVATE_EXPORT #endif #endif // DECLARATIVECHARTGLOBAL_H diff --git a/src/chartsqml2/declarativelineseries_p.h b/src/chartsqml2/declarativelineseries_p.h index 70de3d05..c3c164fd 100644 --- a/src/chartsqml2/declarativelineseries_p.h +++ b/src/chartsqml2/declarativelineseries_p.h @@ -49,7 +49,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_QMLCHARTS_PRIVATE_EXPORT DeclarativeLineSeries : public QLineSeries, public DeclarativeXySeries, public QQmlParserStatus +class Q_QMLCHARTS_PRIVATE_EXPORT DeclarativeLineSeries : public QLineSeries, public DeclarativeXySeries, public QQmlParserStatus { Q_OBJECT Q_INTERFACES(QQmlParserStatus) diff --git a/src/chartsqml2/declarativemargins_p.h b/src/chartsqml2/declarativemargins_p.h index b9c7ab0a..19e69b93 100644 --- a/src/chartsqml2/declarativemargins_p.h +++ b/src/chartsqml2/declarativemargins_p.h @@ -46,7 +46,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_QMLCHARTS_PRIVATE_EXPORT DeclarativeMargins : public QObject, public QMargins +class Q_QMLCHARTS_PRIVATE_EXPORT DeclarativeMargins : public QObject, public QMargins { Q_OBJECT Q_PROPERTY(int top READ top WRITE setTop NOTIFY topChanged) diff --git a/src/chartsqml2/declarativepieseries_p.h b/src/chartsqml2/declarativepieseries_p.h index 33ff7586..f0ab75cc 100644 --- a/src/chartsqml2/declarativepieseries_p.h +++ b/src/chartsqml2/declarativepieseries_p.h @@ -48,7 +48,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_QMLCHARTS_PRIVATE_EXPORT DeclarativePieSlice : public QPieSlice +class Q_QMLCHARTS_PRIVATE_EXPORT DeclarativePieSlice : public QPieSlice { Q_OBJECT Q_PROPERTY(QString brushFilename READ brushFilename WRITE setBrushFilename NOTIFY brushFilenameChanged) diff --git a/src/chartsqml2/declarativepolarchart_p.h b/src/chartsqml2/declarativepolarchart_p.h index 3d82f822..d190be08 100644 --- a/src/chartsqml2/declarativepolarchart_p.h +++ b/src/chartsqml2/declarativepolarchart_p.h @@ -46,7 +46,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_QMLCHARTS_PRIVATE_EXPORT DeclarativePolarChart : public DeclarativeChart +class Q_QMLCHARTS_PRIVATE_EXPORT DeclarativePolarChart : public DeclarativeChart { Q_OBJECT public: diff --git a/src/chartsqml2/declarativescatterseries_p.h b/src/chartsqml2/declarativescatterseries_p.h index e01ddb46..c160e360 100644 --- a/src/chartsqml2/declarativescatterseries_p.h +++ b/src/chartsqml2/declarativescatterseries_p.h @@ -49,7 +49,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_QMLCHARTS_PRIVATE_EXPORT DeclarativeScatterSeries : public QScatterSeries, public DeclarativeXySeries, public QQmlParserStatus +class Q_QMLCHARTS_PRIVATE_EXPORT DeclarativeScatterSeries : public QScatterSeries, public DeclarativeXySeries, public QQmlParserStatus { Q_OBJECT Q_INTERFACES(QQmlParserStatus) diff --git a/src/chartsqml2/declarativesplineseries_p.h b/src/chartsqml2/declarativesplineseries_p.h index c6e6689e..d9f29352 100644 --- a/src/chartsqml2/declarativesplineseries_p.h +++ b/src/chartsqml2/declarativesplineseries_p.h @@ -49,7 +49,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_QMLCHARTS_PRIVATE_EXPORT DeclarativeSplineSeries : public QSplineSeries, public DeclarativeXySeries, public QQmlParserStatus +class Q_QMLCHARTS_PRIVATE_EXPORT DeclarativeSplineSeries : public QSplineSeries, public DeclarativeXySeries, public QQmlParserStatus { Q_OBJECT Q_INTERFACES(QQmlParserStatus) diff --git a/src/chartsqml2/declarativexypoint_p.h b/src/chartsqml2/declarativexypoint_p.h index 316ff962..91ebc56d 100644 --- a/src/chartsqml2/declarativexypoint_p.h +++ b/src/chartsqml2/declarativexypoint_p.h @@ -46,7 +46,7 @@ QT_CHARTS_BEGIN_NAMESPACE -class QT_QMLCHARTS_PRIVATE_EXPORT DeclarativeXYPoint : public QObject, public QPointF +class Q_QMLCHARTS_PRIVATE_EXPORT DeclarativeXYPoint : public QObject, public QPointF { Q_OBJECT Q_PROPERTY(qreal x READ x WRITE setX) diff --git a/src/chartsqml2/declarativexyseries_p.h b/src/chartsqml2/declarativexyseries_p.h index e78fde67..883c4dbe 100644 --- a/src/chartsqml2/declarativexyseries_p.h +++ b/src/chartsqml2/declarativexyseries_p.h @@ -47,7 +47,7 @@ QT_CHARTS_BEGIN_NAMESPACE class QChart; class QAbstractSeries; -class QT_QMLCHARTS_PRIVATE_EXPORT DeclarativeXySeries +class Q_QMLCHARTS_PRIVATE_EXPORT DeclarativeXySeries { public: explicit DeclarativeXySeries(); diff --git a/src/chartsqml2/plugins.qmltypes b/src/chartsqml2/plugins.qmltypes index 9acec4ce..ca8f5163 100644 --- a/src/chartsqml2/plugins.qmltypes +++ b/src/chartsqml2/plugins.qmltypes @@ -4,10 +4,10 @@ import QtQuick.tooling 1.2 // It is used for QML tooling purposes only. // // This file was auto-generated by: -// 'qmlplugindump -nonrelocatable -qapp QtCharts 2.3' +// 'qmlplugindump -nonrelocatable -qapp QtCharts 2.13' Module { - dependencies: ["QtQuick 2.12"] + dependencies: ["QtQuick 2.0"] Component { name: "QGraphicsObject" defaultProperty: "children" @@ -1831,6 +1831,10 @@ Module { name: "reverseChanged" Parameter { name: "reverse"; type: "bool" } } + Signal { + name: "labelsEditableChanged" + Parameter { name: "editable"; type: "bool" } + } } Component { name: "QtCharts::QAbstractBarSeries" |