##// END OF EJS Templates
Fix clicked, released and doubleClicked signal points...
Fix clicked, released and doubleClicked signal points The clicked, released and doubleClicked signals for line, spline and area series return the point where the press was triggered. Change-Id: I075bb213657a7cadabdec3a72fde7cf5f412e982 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@theqtcompany.com>

File last commit:

r2746:4909289ecbd7
r2746:4909289ecbd7
Show More
boxwhiskers_p.h
107 lines | 3.1 KiB | text/x-c | CLexer
Mika Salmela
A new box-and-whiskers series type added to charts....
r2548 /****************************************************************************
**
Titta Heikkala
Update copyright year...
r2688 ** Copyright (C) 2014 Digia Plc
Mika Salmela
A new box-and-whiskers series type added to charts....
r2548 ** All rights reserved.
Titta Heikkala
Updated license headers...
r2740 ** For any questions to Digia, please use contact form at http://qt.io
Mika Salmela
A new box-and-whiskers series type added to charts....
r2548 **
Titta Heikkala
Updated license headers...
r2740 ** This file is part of the Qt Charts module.
Mika Salmela
A new box-and-whiskers series type added to charts....
r2548 **
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
** agreement between you and Digia.
Mika Salmela
A new box-and-whiskers series type added to charts....
r2548 **
** If you have questions regarding the use of this file, please use
Titta Heikkala
Updated license headers...
r2740 ** contact form at http://qt.io
Mika Salmela
A new box-and-whiskers series type added to charts....
r2548 **
****************************************************************************/
// W A R N I N G
// -------------
//
Miikka Heikkinen
Qt Commercial -> Qt Enterprise...
r2574 // This file is not part of the Qt Enterprise Chart API. It exists purely as an
Mika Salmela
A new box-and-whiskers series type added to charts....
r2548 // implementation detail. This header file may change from version to
// version without notice, or even be removed.
//
// We mean it.
#ifndef BOXWHISKERS_H
#define BOXWHISKERS_H
Titta Heikkala
Fix include syntax...
r2714 #include <private/boxwhiskersdata_p.h>
#include <QtCharts/QChartGlobal>
#include <private/abstractdomain_p.h>
#include <QtCharts/QBoxSet>
#include <QtWidgets/QGraphicsRectItem>
#include <QtWidgets/QGraphicsLineItem>
#include <QtWidgets/QGraphicsLayoutItem>
#include <QtGui/QPainterPath>
Mika Salmela
A new box-and-whiskers series type added to charts....
r2548
Titta Heikkala
Qt Charts project file structure change...
r2712 QT_CHARTS_BEGIN_NAMESPACE
Mika Salmela
A new box-and-whiskers series type added to charts....
r2548
class QBarSet;
class BoxWhiskers : public QGraphicsObject
{
Q_OBJECT
public:
BoxWhiskers(QBoxSet *set, AbstractDomain *domain, QGraphicsObject *parent);
~BoxWhiskers();
void setBrush(const QBrush &brush);
void setPen(const QPen &pen);
void setLayout(const BoxWhiskersData &data);
Mika Salmela
Selectable outlines for box...
r2573 void setBoxOutlined(const bool outlined) { m_boxOutlined = outlined; }
Mika Salmela
Property to control box width...
r2584 void setBoxWidth(const qreal width);
Mika Salmela
A new box-and-whiskers series type added to charts....
r2548
void mousePressEvent(QGraphicsSceneMouseEvent *event);
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);
Mika Salmela
A new box-and-whiskers series type added to charts....
r2548
QRectF boundingRect() const;
void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget = 0);
Mika Salmela
Changed BoxPlot to use domain for calculating geometry points....
r2554 void updateGeometry(AbstractDomain *domain);
Mika Salmela
A new box-and-whiskers series type added to charts....
r2548 protected:
QSizeF sizeHint(Qt::SizeHint which, const QSizeF &constraint) const;
void setGeometry(const QRectF &rect);
Q_SIGNALS:
void clicked(QBoxSet *boxset);
void hovered(bool status, QBoxSet *boxset);
Titta Heikkala
Add pressed, released and doubleClicked signals...
r2739 void pressed(QBoxSet *boxset);
void released(QBoxSet *boxset);
void doubleClicked(QBoxSet *boxset);
Mika Salmela
A new box-and-whiskers series type added to charts....
r2548
private:
friend class BoxPlotChartItem;
friend class BoxPlotAnimation;
QBoxSet *m_boxSet;
AbstractDomain *m_domain;
QPainterPath m_boxPath;
QRectF m_boundingRect;
bool m_hovering;
bool m_validData;
QBrush m_brush;
QPen m_pen;
Mika Salmela
Selectable outlines for box...
r2573 QPen m_medianPen;
QPen m_outlinePen;
bool m_boxOutlined;
Mika Salmela
Property to control box width...
r2584 qreal m_boxWidth;
Mika Salmela
A new box-and-whiskers series type added to charts....
r2548 BoxWhiskersData m_data;
QSizeF m_domainSize;
Mika Salmela
Selectable outlines for box...
r2573 QRectF m_middleBox;
qreal m_geometryMedian;
qreal m_geometryLeft;
qreal m_geometryRight;
Titta Heikkala
Add pressed, released and doubleClicked signals...
r2739
bool m_mousePressed;
Mika Salmela
A new box-and-whiskers series type added to charts....
r2548 };
Titta Heikkala
Qt Charts project file structure change...
r2712 QT_CHARTS_END_NAMESPACE
Mika Salmela
A new box-and-whiskers series type added to charts....
r2548
#endif // BOXWHISKERS_H