##// END OF EJS Templates
Merge remote-tracking branch 'origin/5.6.0' into 5.6...
Merge remote-tracking branch 'origin/5.6.0' into 5.6 Change-Id: I69de781a63b4492ed7802e1d60b319d56a7bdd01

File last commit:

r2845:ae12522d475c
r2874:b2259e94e953 merge
Show More
linearrowitem_p.h
77 lines | 2.1 KiB | text/x-c | CLexer
/******************************************************************************
**
** Copyright (C) 2015 The Qt Company Ltd.
** Contact: http://www.qt.io/licensing/
**
** This file is part of the Qt Charts module.
**
** $QT_BEGIN_LICENSE:COMM$
**
** 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 http://www.qt.io/terms-conditions. For further
** information use the contact form at http://www.qt.io/contact-us.
**
** $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 LINEARROWITEM_P_H
#define LINEARROWITEM_P_H
#include <private/chartaxiselement_p.h>
#include <private/qabstractaxis_p.h>
#include <QtWidgets/QGraphicsLineItem>
QT_CHARTS_BEGIN_NAMESPACE
class LineArrowItem: public QGraphicsLineItem
{
public:
explicit LineArrowItem(ChartAxisElement *axis, QGraphicsItem *parent = 0)
: QGraphicsLineItem(parent),
m_axis(axis),
m_axisOrientation(axis->axis()->orientation())
{
}
protected:
void mousePressEvent(QGraphicsSceneMouseEvent *event)
{
Q_UNUSED(event)
m_axis->axisSelected();
}
QRectF boundingRect() const
{
return shape().boundingRect();
}
QPainterPath shape() const
{
QPainterPath path = QGraphicsLineItem::shape();
QRectF rect = path.boundingRect();
path.addRect(rect.adjusted(0, 0, m_axisOrientation != Qt::Horizontal ? 8 : 0, m_axisOrientation != Qt::Vertical ? 8 : 0));
return path;
}
private:
ChartAxisElement *m_axis;
Qt::Orientation m_axisOrientation;
};
QT_CHARTS_END_NAMESPACE
#endif /* LINEARROWITEM_P_H */