##// END OF EJS Templates
Refactor xychartitem -> xychart
Refactor xychartitem -> xychart

File last commit:

r1218:b8de085c4198
r1218:b8de085c4198
Show More
scatterchartitem_p.h
141 lines | 3.0 KiB | text/x-c | CLexer
Jani Honkonen
Add license headers
r794 /****************************************************************************
**
** Copyright (C) 2012 Digia Plc
** All rights reserved.
** For any questions to Digia, please use contact form at http://qt.digia.com
**
** This file is part of the Qt Commercial Charts Add-on.
**
** $QT_BEGIN_LICENSE$
** Licensees holding valid Qt Commercial licenses may use this file in
** accordance with the Qt Commercial License Agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and Digia.
**
** If you have questions regarding the use of this file, please use
** contact form at http://qt.digia.com
** $QT_END_LICENSE$
**
****************************************************************************/
Michal Klocek
Fixes header guard style issues
r969 #ifndef SCATTERCHARTITEM_H
#define SCATTERCHARTITEM_H
Michal Klocek
Refactor scatter chart to fit the other classes...
r470
#include "qchartglobal.h"
Michal Klocek
Refactor xychartitem -> xychart
r1218 #include "xychart_p.h"
Michal Klocek
Fix sctter series wrong points offset issue
r536 #include <QGraphicsEllipseItem>
Michal Klocek
Refactor scatter chart to fit the other classes...
r470 #include <QPen>
QTCOMMERCIALCHART_BEGIN_NAMESPACE
class QScatterSeries;
Michal Klocek
Adds missing scatter intercation implementation...
r541 class Marker;
Michal Klocek
Refactor scatter chart to fit the other classes...
r470
Michal Klocek
Refactor xychartitem -> xychart
r1218 class ScatterChartItem : public XYChart, public QGraphicsItem
Michal Klocek
Refactor scatter chart to fit the other classes...
r470 {
Q_OBJECT
public:
Michal Klocek
Refactors chartitem...
r677 explicit ScatterChartItem(QScatterSeries *series, ChartPresenter *presenter);
Michal Klocek
Refactor scatter chart to fit the other classes...
r470
public:
//from QGraphicsItem
QRectF boundingRect() const;
void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget);
sauimone
minor code review issues. indent, spaces, brackets etc.
r743 void setPen(const QPen &pen);
void setBrush(const QBrush &brush);
Michal Klocek
Refactor scatter chart to fit the other classes...
r470
sauimone
minor code review issues. indent, spaces, brackets etc.
r743 void markerSelected(Marker *item);
Michal Klocek
Adds missing scatter intercation implementation...
r541
sauimone
Q_SIGNALS and Q_SLOTS
r775 public Q_SLOTS:
Michal Klocek
Refactor scatter chart to fit the other classes...
r470 void handleUpdated();
private:
void createPoints(int count);
void deletePoints(int count);
protected:
Michal Klocek
Refactors animation handling for xyseries
r1217 void updateGeometry();
Michal Klocek
Refactor xychartitem -> xychart
r1218 void mousePressEvent(QGraphicsSceneMouseEvent *event);
Michal Klocek
Refactor scatter chart to fit the other classes...
r470
private:
QScatterSeries *m_series;
QGraphicsItemGroup m_items;
int m_shape;
int m_size;
QRectF m_rect;
Michal Klocek
Refactor animation to fit line,spline,scatter...
r476
Michal Klocek
Refactor scatter chart to fit the other classes...
r470 };
Michal Klocek
Adds missing scatter intercation implementation...
r541
class Marker: public QAbstractGraphicsShapeItem
{
public:
Michal Klocek
Fixes and improvments to series API...
r1057 Marker(QAbstractGraphicsShapeItem *item , ScatterChartItem *parent) : QAbstractGraphicsShapeItem(0) ,m_item(item), m_parent(parent)
Michal Klocek
Adds missing scatter intercation implementation...
r541 {
Tero Ahola
Fixed bug in the documentation of scatter
r814 }
Michal Klocek
Adds missing scatter intercation implementation...
r541
~Marker()
{
delete m_item;
}
Michal Klocek
Fixes and improvments to series API...
r1057 void setPoint(const QPointF& point)
Michal Klocek
Adds missing scatter intercation implementation...
r541 {
Michal Klocek
Fixes and improvments to series API...
r1057 m_point=point;
Michal Klocek
Adds missing scatter intercation implementation...
r541 }
Michal Klocek
Fixes and improvments to series API...
r1057 QPointF point() const
Michal Klocek
Adds missing scatter intercation implementation...
r541 {
Michal Klocek
Fixes and improvments to series API...
r1057 return m_point;
Michal Klocek
Adds missing scatter intercation implementation...
r541 }
QPainterPath shape() const
{
return m_item->shape();
}
QRectF boundingRect() const
{
return m_item->boundingRect();
}
bool contains(const QPointF &point) const
{
return m_item->contains(point);
}
sauimone
minor code review issues. indent, spaces, brackets etc.
r743 void setPen(const QPen &pen)
Michal Klocek
Adds missing scatter intercation implementation...
r541 {
m_item->setPen(pen);
}
sauimone
minor code review issues. indent, spaces, brackets etc.
r743 void setBrush(const QBrush &brush)
Michal Klocek
Adds missing scatter intercation implementation...
r541 {
m_item->setBrush(brush);
}
void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget)
{
m_item->paint(painter,option,widget);
}
protected:
Tero Ahola
Squashed bunch of warnings
r611 void mousePressEvent(QGraphicsSceneMouseEvent *event)
Michal Klocek
Adds missing scatter intercation implementation...
r541 {
Tero Ahola
Squashed bunch of warnings
r611 Q_UNUSED(event)
Michal Klocek
Adds missing scatter intercation implementation...
r541 m_parent->markerSelected(this);
}
private:
QAbstractGraphicsShapeItem* m_item;
ScatterChartItem* m_parent;
Michal Klocek
Fixes and improvments to series API...
r1057 QPointF m_point;
Michal Klocek
Adds missing scatter intercation implementation...
r541 };
Michal Klocek
Refactor scatter chart to fit the other classes...
r470 QTCOMMERCIALCHART_END_NAMESPACE
#endif // SCATTERPRESENTER_H