#include <KDChartMeasure>
Collaboration diagram for KDChart::Measure:
font sizes.
Definition at line 57 of file KDChartMeasure.h.
Public Member Functions | |
qreal | calculatedValue (const QSizeF &autoSize, KDChartEnums::MeasureOrientation autoOrientation) const |
qreal | calculatedValue (const QObject *autoArea, KDChartEnums::MeasureOrientation autoOrientation) const |
The reference area must either be derived from AbstractArea or be derived from QWidget, so e.g. | |
KDChartEnums::MeasureCalculationMode | calculationMode () const |
Measure (const Measure &) | |
Measure (qreal value, KDChartEnums::MeasureCalculationMode mode=KDChartEnums::MeasureCalculationModeAuto, KDChartEnums::MeasureOrientation orientation=KDChartEnums::MeasureOrientationAuto) | |
Measure () | |
bool | operator!= (const Measure &other) const |
Measure & | operator= (const Measure &) |
bool | operator== (const Measure &) const |
const QObject * | referenceArea () const |
The returned reference area will either be derived from AbstractArea or be derived from QWidget. | |
KDChartEnums::MeasureOrientation | referenceOrientation () const |
void | setAbsoluteValue (qreal val) |
This is a convenience method for specifying a value, with implicitely setting the calculation mode to MeasureCalculationModeAbsolute. | |
void | setCalculationMode (KDChartEnums::MeasureCalculationMode mode) |
void | setReferenceArea (const QObject *area) |
The reference area must either be derived from AbstractArea or be derived from QWidget, so e.g. | |
void | setReferenceOrientation (KDChartEnums::MeasureOrientation orientation) |
void | setRelativeMode (const QObject *area, KDChartEnums::MeasureOrientation orientation) |
The reference area must either be derived from AbstractArea or be derived from QWidget, so e.g. | |
void | setValue (qreal val) |
const QSizeF | sizeOfArea (const QObject *area) const |
qreal | value () const |
KDChart::Measure::Measure | ( | ) |
Definition at line 41 of file KDChartMeasure.cpp.
00042 : mValue( 0.0 ), 00043 mMode( KDChartEnums::MeasureCalculationModeAuto ), 00044 mArea( 0 ), 00045 mOrientation( KDChartEnums::MeasureOrientationAuto ) 00046 { 00047 // this bloc left empty intentionally 00048 }
KDChart::Measure::Measure | ( | qreal | value, | |
KDChartEnums::MeasureCalculationMode | mode = KDChartEnums::MeasureCalculationModeAuto , |
|||
KDChartEnums::MeasureOrientation | orientation = KDChartEnums::MeasureOrientationAuto | |||
) |
Definition at line 50 of file KDChartMeasure.cpp.
00053 : mValue( value ), 00054 mMode( mode ), 00055 mArea( 0 ), 00056 mOrientation( orientation ) 00057 { 00058 // this bloc left empty intentionally 00059 }
KDChart::Measure::Measure | ( | const Measure & | ) |
Definition at line 61 of file KDChartMeasure.cpp.
00062 : mValue( r.value() ), 00063 mMode( r.calculationMode() ), 00064 mArea( r.referenceArea() ), 00065 mOrientation( r.referenceOrientation() ) 00066 { 00067 // this bloc left empty intentionally 00068 }
qreal KDChart::Measure::calculatedValue | ( | const QSizeF & | autoSize, | |
KDChartEnums::MeasureOrientation | autoOrientation | |||
) | const |
Definition at line 83 of file KDChartMeasure.cpp.
References KDChartEnums::MeasureCalculationModeAbsolute, KDChartEnums::MeasureCalculationModeAuto, KDChartEnums::MeasureCalculationModeAutoArea, KDChartEnums::MeasureCalculationModeAutoOrientation, KDChartEnums::MeasureCalculationModeRelative, KDChartEnums::MeasureOrientationAuto, KDChartEnums::MeasureOrientationHorizontal, KDChartEnums::MeasureOrientationMaximum, KDChartEnums::MeasureOrientationMinimum, KDChartEnums::MeasureOrientationVertical, sizeOfArea(), and value().
00085 { 00086 if( mMode == KDChartEnums::MeasureCalculationModeAbsolute ){ 00087 return mValue; 00088 }else{ 00089 qreal value = 0.0; 00090 const QObject theAutoArea; 00091 const QObject* autoArea = &theAutoArea; 00092 const QObject* area = mArea ? mArea : autoArea; 00093 KDChartEnums::MeasureOrientation orientation = mOrientation; 00094 switch( mMode ){ 00095 case KDChartEnums::MeasureCalculationModeAuto: 00096 area = autoArea; 00097 orientation = autoOrientation; 00098 break; 00099 case KDChartEnums::MeasureCalculationModeAutoArea: 00100 area = autoArea; 00101 break; 00102 case KDChartEnums::MeasureCalculationModeAutoOrientation: 00103 orientation = autoOrientation; 00104 break; 00105 case KDChartEnums::MeasureCalculationModeAbsolute: // fall through intended 00106 case KDChartEnums::MeasureCalculationModeRelative: 00107 break; 00108 } 00109 if( area ){ 00110 QSizeF size; 00111 if( area == autoArea ) 00112 size = autoSize; 00113 else 00114 size = sizeOfArea( area ); 00115 //qDebug() << "size" << size; 00116 qreal referenceValue; 00117 switch( orientation ){ 00118 case KDChartEnums::MeasureOrientationAuto: // fall through intended 00119 case KDChartEnums::MeasureOrientationMinimum: 00120 referenceValue = qMin( size.width(), size.height() ); 00121 break; 00122 case KDChartEnums::MeasureOrientationMaximum: 00123 referenceValue = qMax( size.width(), size.height() ); 00124 break; 00125 case KDChartEnums::MeasureOrientationHorizontal: 00126 referenceValue = size.width(); 00127 break; 00128 case KDChartEnums::MeasureOrientationVertical: 00129 referenceValue = size.height(); 00130 break; 00131 } 00132 value = mValue / 1000.0 * referenceValue; 00133 } 00134 return value; 00135 } 00136 }
qreal KDChart::Measure::calculatedValue | ( | const QObject * | autoArea, | |
KDChartEnums::MeasureOrientation | autoOrientation | |||
) | const |
The reference area must either be derived from AbstractArea or be derived from QWidget, so e.g.
it could be derived from AbstractAreaWidget too.
Definition at line 139 of file KDChartMeasure.cpp.
References sizeOfArea().
Referenced by KDChart::TextAttributes::calculatedFontSize(), and KDChart::RelativePosition::calculatedPoint().
00141 { 00142 return calculatedValue( sizeOfArea( autoArea ), autoOrientation); 00143 }
KDChartEnums::MeasureCalculationMode KDChart::Measure::calculationMode | ( | ) | const |
Definition at line 71 of file KDChartMeasure.h.
Referenced by operator<<(), operator=(), and operator==().
bool KDChart::Measure::operator!= | ( | const Measure & | other | ) | const |
Definition at line 70 of file KDChartMeasure.cpp.
References calculationMode(), referenceArea(), referenceOrientation(), and value().
00071 { 00072 if( this != &r ){ 00073 mValue = r.value(); 00074 mMode = r.calculationMode(); 00075 mArea = r.referenceArea(); 00076 mOrientation = r.referenceOrientation(); 00077 } 00078 00079 return *this; 00080 }
bool KDChart::Measure::operator== | ( | const Measure & | ) | const |
Definition at line 177 of file KDChartMeasure.cpp.
References calculationMode(), referenceArea(), referenceOrientation(), and value().
00178 { 00179 return( mValue == r.value() && 00180 mMode == r.calculationMode() && 00181 mArea == r.referenceArea() && 00182 mOrientation == r.referenceOrientation() ); 00183 }
const QObject* KDChart::Measure::referenceArea | ( | ) | const |
The returned reference area will either be derived from AbstractArea or be derived from QWidget.
Definition at line 112 of file KDChartMeasure.h.
Referenced by operator<<(), operator=(), and operator==().
KDChartEnums::MeasureOrientation KDChart::Measure::referenceOrientation | ( | ) | const |
Definition at line 115 of file KDChartMeasure.h.
Referenced by operator<<(), operator=(), and operator==().
void KDChart::Measure::setAbsoluteValue | ( | qreal | val | ) |
This is a convenience method for specifying a value, with implicitely setting the calculation mode to MeasureCalculationModeAbsolute.
Calling setAbsoluteValue( value ) is the same as calling
setValue( value ); setCalculationMode( KDChartEnums::MeasureCalculationModeAbsolute );
Definition at line 96 of file KDChartMeasure.h.
References KDChartEnums::MeasureCalculationModeAbsolute.
00097 { 00098 mMode = KDChartEnums::MeasureCalculationModeAbsolute; 00099 mValue = val; 00100 }
void KDChart::Measure::setCalculationMode | ( | KDChartEnums::MeasureCalculationMode | mode | ) |
void KDChart::Measure::setReferenceArea | ( | const QObject * | area | ) |
The reference area must either be derived from AbstractArea or be derived from QWidget, so e.g.
it could be derived from AbstractAreaWidget too.
Definition at line 107 of file KDChartMeasure.h.
void KDChart::Measure::setReferenceOrientation | ( | KDChartEnums::MeasureOrientation | orientation | ) |
void KDChart::Measure::setRelativeMode | ( | const QObject * | area, | |
KDChartEnums::MeasureOrientation | orientation | |||
) |
The reference area must either be derived from AbstractArea or be derived from QWidget, so e.g.
it could be derived from AbstractAreaWidget too.
Definition at line 78 of file KDChartMeasure.h.
References KDChartEnums::MeasureCalculationModeRelative.
00080 { 00081 mMode = KDChartEnums::MeasureCalculationModeRelative; 00082 mArea = area; 00083 mOrientation = orientation; 00084 }
void KDChart::Measure::setValue | ( | qreal | val | ) |
const QSizeF KDChart::Measure::sizeOfArea | ( | const QObject * | area | ) | const |
Definition at line 146 of file KDChartMeasure.cpp.
References KDChart::GlobalMeasureScaling::currentFactors(), KDChart::GlobalMeasureScaling::instance(), and KDChartEnums::MeasureCalculationModeAbsolute.
Referenced by calculatedValue().
00147 { 00148 QSizeF size; 00149 const AbstractArea* kdcArea = dynamic_cast<const AbstractArea*>(area); 00150 if( kdcArea ){ 00151 size = kdcArea->geometry().size(); 00152 //qDebug() << "Measure::sizeOfArea() found kdcArea with size" << size; 00153 }else{ 00154 const QWidget* widget = dynamic_cast<const QWidget*>(area); 00155 if( widget ){ 00156 /* ATTENTION: Using the layout does not work: The Legend will never get the right size then! 00157 const QLayout * layout = widget->layout(); 00158 if( layout ){ 00159 size = layout->geometry().size(); 00160 //qDebug() << "Measure::sizeOfArea() found widget with layout size" << size; 00161 }else*/ 00162 { 00163 size = widget->geometry().size(); 00164 //qDebug() << "Measure::sizeOfArea() found widget with size" << size; 00165 } 00166 }else if( mMode != KDChartEnums::MeasureCalculationModeAbsolute ){ 00167 size = QSizeF(1.0, 1.0); 00168 //qDebug("Measure::sizeOfArea() got no valid area."); 00169 } 00170 } 00171 const QPair< qreal, qreal > factors 00172 = GlobalMeasureScaling::instance()->currentFactors(); 00173 return QSizeF(size.width() * factors.first, size.height() * factors.second); 00174 }
qreal KDChart::Measure::value | ( | ) | const |
Definition at line 68 of file KDChartMeasure.h.
Referenced by calculatedValue(), operator<<(), operator=(), and operator==().