##// END OF EJS Templates
Added option to set labels clipping...
Added option to set labels clipping It's now possible to enable and disable the point label clipping. The clipping is enabled by default. Clipping cuts the point labels on the edge of the plot area. Change-Id: Ifaa6017b4c6d55fe030effeec8b336a7fc317adf Task-number: QTRD-3520 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@theqtcompany.com>

File last commit:

r2815:4c1d3bc34edb
r2815:4c1d3bc34edb
Show More
areachartitem_p.h
133 lines | 3.8 KiB | text/x-c | CLexer
Jani Honkonen
Add license headers
r794 /****************************************************************************
**
Titta Heikkala
Copyright header changes...
r2776 ** Copyright (C) 2015 The Qt Company Ltd
Jani Honkonen
Add license headers
r794 ** All rights reserved.
Titta Heikkala
Copyright header changes...
r2776 ** For any questions to The Qt Company, please use contact form at http://qt.io
Jani Honkonen
Add license headers
r794 **
Titta Heikkala
Updated license headers...
r2740 ** This file is part of the Qt Charts module.
Jani Honkonen
Add license headers
r794 **
Titta Heikkala
Updated license headers...
r2740 ** Licensees holding valid commercial license for Qt may use this file in
** accordance with the Qt License Agreement provided with the Software
** or, alternatively, in accordance with the terms contained in a written
Titta Heikkala
Copyright header changes...
r2776 ** agreement between you and The Qt Company.
Jani Honkonen
Add license headers
r794 **
** If you have questions regarding the use of this file, please use
Titta Heikkala
Updated license headers...
r2740 ** contact form at http://qt.io
Jani Honkonen
Add license headers
r794 **
****************************************************************************/
unknown
Added missing warning about private implementation
r1366 // W A R N I N G
// -------------
//
Titta Heikkala
Updated private header warning...
r2807 // This file is not part of the Qt Chart API. It exists purely as an
unknown
Added missing warning about private implementation
r1366 // implementation detail. This header file may change from version to
// version without notice, or even be removed.
//
// We mean it.
Michal Klocek
Adds area chart...
r421 #ifndef AREACHARTITEM_H
#define AREACHARTITEM_H
Titta Heikkala
Fix include syntax...
r2714 #include <QtCharts/QChartGlobal>
#include <private/linechartitem_p.h>
#include <QtCharts/QAreaSeries>
#include <QtGui/QPen>
Michal Klocek
Adds area chart...
r421
Titta Heikkala
Qt Charts project file structure change...
r2712 QT_CHARTS_BEGIN_NAMESPACE
Michal Klocek
Adds area chart...
r421
class AreaChartItem;
Michal Klocek
Release compilation fixes
r689 class AreaChartItem : public ChartItem
Michal Klocek
Adds area chart...
r421 {
Q_OBJECT
public:
Michal Klocek
Refactors internals...
r2273 AreaChartItem(QAreaSeries *areaSeries, QGraphicsItem* item = 0);
Tero Ahola
Internal review: fixed minor issues in Area and XySeries
r761 ~AreaChartItem();
Michal Klocek
Adds area chart...
r421
//from QGraphicsItem
QRectF boundingRect() const;
void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget);
QPainterPath shape() const;
Jani Honkonen
more coding style fixes for src-folder...
r2104 LineChartItem *upperLineItem() const { return m_upper; }
LineChartItem *lowerLineItem() const { return m_lower; }
Michal Klocek
Adds area chart animations...
r560
Michal Klocek
Adds area chart...
r421 void updatePath();
Michal Klocek
Refactors click signal to line,area,spline,scatter charts
r571
Michal Klocek
Refactors internals...
r2273 void setPresenter(ChartPresenter *presenter);
Miikka Heikkinen
Add Polar chart support...
r2483 QAreaSeries *series() const { return m_series; }
Michal Klocek
Refactors click signal to line,area,spline,scatter charts
r571 protected:
sauimone
minor code review issues. indent, spaces, brackets etc.
r743 void mousePressEvent(QGraphicsSceneMouseEvent *event);
Marek Rosa
Added hovered support to areachart. Might need to be re-thought
r2264 void hoverEnterEvent(QGraphicsSceneHoverEvent *event);
void hoverLeaveEvent(QGraphicsSceneHoverEvent *event);
Titta Heikkala
Add pressed, released and doubleClicked signals...
r2739 void mouseReleaseEvent(QGraphicsSceneMouseEvent *event);
void mouseDoubleClickEvent(QGraphicsSceneMouseEvent *event);
Michal Klocek
Refactors click signal to line,area,spline,scatter charts
r571
sauimone
Q_SIGNALS and Q_SLOTS
r775 Q_SIGNALS:
Titta Heikkala
Qt Charts project file structure change...
r2712 void clicked(const QPointF &point);
Marek Rosa
Added hovered support to areachart. Might need to be re-thought
r2264 void hovered(const QPointF &point, bool state);
Titta Heikkala
Add pressed, released and doubleClicked signals...
r2739 void pressed(const QPointF &point);
void released(const QPointF &point);
void doubleClicked(const QPointF &point);
Michal Klocek
Refactors click signal to line,area,spline,scatter charts
r571
sauimone
Q_SIGNALS and Q_SLOTS
r775 public Q_SLOTS:
Michal Klocek
Adds area chart...
r421 void handleUpdated();
Michal Klocek
Refactors Domain and Axis...
r1698 void handleDomainUpdated();
Michal Klocek
Adds area chart...
r421
private:
Jani Honkonen
more coding style fixes for src-folder...
r2104 QAreaSeries *m_series;
LineChartItem *m_upper;
LineChartItem *m_lower;
Michal Klocek
Refactor domain model...
r439 QPainterPath m_path;
Michal Klocek
Adds area chart...
r421 QRectF m_rect;
Michal Klocek
Adds visiblePoints handling to area chart
r563 QPen m_linePen;
QPen m_pointPen;
Michal Klocek
Adds area chart...
r421 QBrush m_brush;
Michal Klocek
Adds visiblePoints handling to area chart
r563 bool m_pointsVisible;
Titta Heikkala
Added possibility to show series value...
r2689 bool m_pointLabelsVisible;
QString m_pointLabelsFormat;
QFont m_pointLabelsFont;
QColor m_pointLabelsColor;
Titta Heikkala
Added option to set labels clipping...
r2815 bool m_pointLabelsClipping;
Titta Heikkala
Added possibility to show series value...
r2689
Titta Heikkala
Add pressed, released and doubleClicked signals...
r2739 QPointF m_lastMousePos;
bool m_mousePressed;
Michal Klocek
Adds area chart...
r421 };
class AreaBoundItem : public LineChartItem
{
public:
Michal Klocek
Refactors internals...
r2273 AreaBoundItem(AreaChartItem *area, QLineSeries *lineSeries,QGraphicsItem* item = 0)
: LineChartItem(lineSeries, item), m_item(area)
Jani Honkonen
astyle and manual coding style fixes for src-folder
r2097 {
Miikka Heikkinen
Add Polar chart support...
r2483 // We do not actually want to draw anything from LineChartItem.
// Drawing is done in AreaChartItem only.
setVisible(false);
Michal Klocek
Refactors axis animation, line animations
r1241 }
Tero Ahola
Internal review: fixed minor issues in Area and XySeries
r761 ~AreaBoundItem() {}
Michal Klocek
Adds area chart...
r421
Michal Klocek
Refactors internals...
r2273 void updateGeometry()
Jani Honkonen
more coding style fixes for src-folder...
r2104 {
Miikka Heikkinen
Check that areaseries is actually in chart before trying to update....
r2800 // Make sure the series is in a chart before trying to update
if (m_item->series()->chart()) {
// Turn off points drawing from component line chart item, as that
// messes up the fill for area series.
suppressPoints();
// Component lineseries are not necessarily themselves on the chart,
// so get the chart type for them from area chart.
forceChartType(m_item->series()->chart()->chartType());
LineChartItem::updateGeometry();
m_item->updatePath();
}
Michal Klocek
Adds area chart...
r421 }
private:
Jani Honkonen
more coding style fixes for src-folder...
r2104 AreaChartItem *m_item;
Michal Klocek
Adds area chart...
r421 };
Titta Heikkala
Qt Charts project file structure change...
r2712 QT_CHARTS_END_NAMESPACE
Michal Klocek
Adds area chart...
r421
#endif