##// END OF EJS Templates
Fix zooming when presenter dimensions are not integers...
Fix zooming when presenter dimensions are not integers If presenter width (or height) is not an integer, zooming using vertical (or horizontal) rubberband will cause the fixed dimension to change, because rubberband uses QRect instead of QRectF. Fixed by forcing the corresponding plotArea dimension for the fixed rubberband dimension when calling zoomIn() in mouseReleaseEvent. Task-number: QTRD-1905 Reviewed-by: Mika Salmela

File last commit:

r2104:f8a933676fbd
r2416:25b2e1c316cb
Show More
pieslicedata_p.h
141 lines | 3.8 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$
**
****************************************************************************/
unknown
Added missing warning about private implementation
r1366 // W A R N I N G
// -------------
//
// This file is not part of the QtCommercial 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.
Jani Honkonen
Move PieSliceData to own header
r675 #ifndef PIESLICEDATA_P_H
#define PIESLICEDATA_P_H
Jani Honkonen
Refactoring QPieSlice private implementation. Removes the useless QPieSlicePrivate layer and uses PieSliceData directly.
r818 #include "qchartglobal.h"
#include "qpieslice.h"
Jani Honkonen
Move PieSliceData to own header
r675 #include <QPen>
#include <QBrush>
QTCOMMERCIALCHART_BEGIN_NAMESPACE
Jani Honkonen
Fix setting custom color to pie. Now the pie knows if the color is set by the user.
r691 template <class T>
class Themed : public T
{
public:
Jani Honkonen
more coding style fixes for src-folder...
r2104 Themed(): m_isThemed(true) {}
Jani Honkonen
Fix setting custom color to pie. Now the pie knows if the color is set by the user.
r691
inline T &operator=(const T &other) { return T::operator =(other); }
Jani Honkonen
Add license headers
r794 inline bool operator!=(const T &other) const { return T::operator !=(other); }
inline bool operator!=(const Themed &other) const
Jani Honkonen
Fix setting custom color to pie. Now the pie knows if the color is set by the user.
r691 {
if (T::operator !=(other))
return true;
if (m_isThemed != other.m_isThemed)
return true;
return false;
}
inline void setThemed(bool state) { m_isThemed = state; }
inline bool isThemed() const { return m_isThemed; }
private:
bool m_isThemed;
};
Jani Honkonen
Move PieSliceData to own header
r675 class PieSliceData
{
public:
Jani Honkonen
Fix some more Cppcheck findings
r1921 PieSliceData() :
m_value(0),
m_isExploded(false),
m_explodeDistanceFactor(0.15),
m_isLabelVisible(false),
m_labelPosition(QPieSlice::LabelOutside),
m_labelArmLengthFactor(0.15),
m_percentage(0),
m_radius(0),
m_startAngle(0),
m_angleSpan(0),
m_holeRadius(0)
Jani Honkonen
Move PieSliceData to own header
r675 {
Jani Honkonen
Fix setting custom color to pie. Now the pie knows if the color is set by the user.
r691 }
Jani Honkonen
more coding style fixes for src-folder...
r2104 bool operator!=(const PieSliceData &other) const {
Jani Honkonen
Use qFuzzyIsNull to compare (in)equality of real values
r768 if (!qFuzzyIsNull(m_value - other.m_value))
Jani Honkonen
Fix setting custom color to pie. Now the pie knows if the color is set by the user.
r691 return true;
if (m_slicePen != other.m_slicePen ||
m_sliceBrush != other.m_sliceBrush)
return true;
if (m_isExploded != other.m_isExploded ||
Jani Honkonen
Fix issues with comparing equality of floating values in pie
r765 !qFuzzyIsNull(m_explodeDistanceFactor - other.m_explodeDistanceFactor))
Jani Honkonen
Fix setting custom color to pie. Now the pie knows if the color is set by the user.
r691 return true;
if (m_isLabelVisible != other.m_isLabelVisible ||
m_labelText != other.m_labelText ||
m_labelFont != other.m_labelFont ||
Jani Honkonen
pie: add label position to slice
r1450 m_labelPosition != other.m_labelPosition ||
Jani Honkonen
Fix issues with comparing equality of floating values in pie
r765 !qFuzzyIsNull(m_labelArmLengthFactor - other.m_labelArmLengthFactor) ||
Tero Ahola
Use labelBrush instead of labelPen for text labels
r1307 m_labelBrush != other.m_labelBrush)
Jani Honkonen
Fix setting custom color to pie. Now the pie knows if the color is set by the user.
r691 return true;
Jani Honkonen
Fix issues with comparing equality of floating values in pie
r765 if (!qFuzzyIsNull(m_percentage - other.m_percentage) ||
Jani Honkonen
Fix setting custom color to pie. Now the pie knows if the color is set by the user.
r691 m_center != other.m_center ||
Jani Honkonen
Fix issues with comparing equality of floating values in pie
r765 !qFuzzyIsNull(m_radius - other.m_radius) ||
!qFuzzyIsNull(m_startAngle - other.m_startAngle) ||
!qFuzzyIsNull(m_angleSpan - other.m_angleSpan))
Jani Honkonen
Fix setting custom color to pie. Now the pie knows if the color is set by the user.
r691 return true;
return false;
Jani Honkonen
Move PieSliceData to own header
r675 }
qreal m_value;
Jani Honkonen
Fix setting custom color to pie. Now the pie knows if the color is set by the user.
r691 Themed<QPen> m_slicePen;
Themed<QBrush> m_sliceBrush;
Jani Honkonen
Move PieSliceData to own header
r675
bool m_isExploded;
qreal m_explodeDistanceFactor;
Jani Honkonen
Fix setting custom color to pie. Now the pie knows if the color is set by the user.
r691 bool m_isLabelVisible;
Jani Honkonen
Move PieSliceData to own header
r675 QString m_labelText;
Jani Honkonen
Fix setting custom color to pie. Now the pie knows if the color is set by the user.
r691 Themed<QFont> m_labelFont;
Jani Honkonen
pie: add label position to slice
r1450 QPieSlice::LabelPosition m_labelPosition;
Jani Honkonen
Move PieSliceData to own header
r675 qreal m_labelArmLengthFactor;
Tero Ahola
Use labelBrush instead of labelPen for text labels
r1307 Themed<QBrush> m_labelBrush;
Jani Honkonen
Move PieSliceData to own header
r675
qreal m_percentage;
QPointF m_center;
qreal m_radius;
qreal m_startAngle;
qreal m_angleSpan;
Marek Rosa
Added QDonutGroup class
r1671
Marek Rosa
Donut support simplified. Examples updated
r1838 qreal m_holeRadius;
Jani Honkonen
Move PieSliceData to own header
r675 };
QTCOMMERCIALCHART_END_NAMESPACE
#endif // PIESLICEDATA_P_H