summaryrefslogtreecommitdiffstats
path: root/libkdchart/KDChartVectorSeries.cpp
diff options
context:
space:
mode:
authortpearson <tpearson@283d02a7-25f6-0310-bc7c-ecb5cbfe19da>2011-07-04 22:38:03 +0000
committertpearson <tpearson@283d02a7-25f6-0310-bc7c-ecb5cbfe19da>2011-07-04 22:38:03 +0000
commitdadc34655c3ab961b0b0b94a10eaaba710f0b5e8 (patch)
tree99e72842fe687baea16376a147619b6048d7e441 /libkdchart/KDChartVectorSeries.cpp
downloadkmymoney-dadc34655c3ab961b0b0b94a10eaaba710f0b5e8.tar.gz
kmymoney-dadc34655c3ab961b0b0b94a10eaaba710f0b5e8.zip
Added kmymoney
git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/applications/kmymoney@1239792 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
Diffstat (limited to 'libkdchart/KDChartVectorSeries.cpp')
-rw-r--r--libkdchart/KDChartVectorSeries.cpp126
1 files changed, 126 insertions, 0 deletions
diff --git a/libkdchart/KDChartVectorSeries.cpp b/libkdchart/KDChartVectorSeries.cpp
new file mode 100644
index 0000000..79b4374
--- /dev/null
+++ b/libkdchart/KDChartVectorSeries.cpp
@@ -0,0 +1,126 @@
+/* -*- Mode: C++ -*-
+ KDChart - a multi-platform charting engine
+ */
+
+/****************************************************************************
+ ** Copyright (C) 2001-2003 Klarälvdalens Datakonsult AB. All rights reserved.
+ **
+ ** This file is part of the KDChart library.
+ **
+ ** This file may be distributed and/or modified under the terms of the
+ ** GNU General Public License version 2 as published by the Free Software
+ ** Foundation and appearing in the file LICENSE.GPL included in the
+ ** packaging of this file.
+ **
+ ** Licensees holding valid commercial KDChart licenses may use this file in
+ ** accordance with the KDChart Commercial License Agreement provided with
+ ** the Software.
+ **
+ ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
+ ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
+ **
+ ** See http://www.klaralvdalens-datakonsult.se/?page=products for
+ ** information about KDChart Commercial License Agreements.
+ **
+ ** Contact info@klaralvdalens-datakonsult.se if any conditions of this
+ ** licensing are not clear to you.
+ **
+ **********************************************************************/
+
+#include "KDChartVectorSeries.h"
+#include "KDChartSeriesCollection.h"
+
+
+KDChartVectorSeries::~KDChartVectorSeries()
+{
+}
+
+
+
+uint KDChartVectorSeries::rows() const
+{
+ return size();
+}
+
+const KDChartData& KDChartVectorSeries::cell( uint row ) const
+{
+ Q_ASSERT( row < size() );
+ // make it compile on windows using qt232
+ return this->at(row);
+}
+
+void KDChartVectorSeries::setCell( uint row, const KDChartData& element)
+{
+ Q_ASSERT( row < size() );
+ // make it compile on windows using qt232
+ this->at(row) = element;
+}
+
+void KDChartVectorSeries::expand( uint rows )
+{
+ resize(rows);
+}
+
+
+// we return !ok if its on the infinite axis
+double KDChartVectorSeries::maxValue( int coordinate, bool &ok ) const
+{
+ double maxValue = 0.0;
+ bool bStart = true;
+
+#if COMPAT_QT_VERSION >= 0x030000
+ KDChartVectorSeries::const_iterator i;
+#else
+ KDChartVectorSeries::ConstIterator i;
+#endif
+
+ for ( i = begin(); i != end(); i ++ )
+ {
+ const KDChartData& d = *i;
+ if ( d.isDouble( coordinate ) )
+ {
+ if ( bStart )
+ {
+ maxValue = d.doubleValue( coordinate );
+ bStart = false;
+ }
+ else
+ maxValue = QMAX( maxValue, d.doubleValue( coordinate ) );
+ }
+ }
+
+ ok = !bStart;
+ return maxValue;
+}
+
+
+
+double KDChartVectorSeries::minValue( int coordinate, bool &ok ) const
+{
+ double minValue = 0.0;
+ bool bStart = true;
+
+#if COMPAT_QT_VERSION >= 0x030000
+ KDChartVectorSeries::const_iterator i;
+#else
+ KDChartVectorSeries::ConstIterator i;
+#endif
+
+ for ( i = begin(); i != end(); i ++ )
+ {
+ const KDChartData& d = *i;
+ if ( d.isDouble( coordinate ) )
+ {
+ if ( bStart )
+ {
+ minValue = d.doubleValue( coordinate );
+ bStart = false;
+ }
+ else
+ minValue = QMIN( minValue, d.doubleValue( coordinate ) );
+ }
+ }
+
+ ok = !bStart;
+ return minValue;
+}