[Libreoffice-commits] .: 4 commits - chart2/AllLangResTarget_chartcontroller.mk chart2/inc chart2/Library_chartcontroller.mk chart2/Library_chartmodel.mk chart2/Library_charttools.mk chart2/Library_chartview.mk chart2/Module_chart2.mk chart2/Package_uiconfig.mk chart2/prj chart2/qa chart2/source chart2/util
David Tardon
dtardon at kemper.freedesktop.org
Fri Apr 15 03:54:47 PDT 2011
chart2/AllLangResTarget_chartcontroller.mk | 221 ++++
chart2/Library_chartcontroller.mk | 220 ++++
chart2/Library_chartmodel.mk | 118 ++
chart2/Library_charttools.mk | 131 ++
chart2/Library_chartview.mk | 118 ++
chart2/Module_chart2.mk | 9
chart2/Package_uiconfig.mk | 44
chart2/inc/makefile.mk | 47
chart2/prj/build.lst | 25
chart2/prj/d.lst | 27
chart2/prj/makefile.mk | 40
chart2/qa/makefile.mk | 70 -
chart2/source/controller/accessibility/makefile.mk | 54 -
chart2/source/controller/chartapiwrapper/makefile.mk | 77 -
chart2/source/controller/dialogs/makefile.mk | 192 ---
chart2/source/controller/drawinglayer/makefile.mk | 49
chart2/source/controller/itemsetwrapper/makefile.mk | 60 -
chart2/source/controller/main/makefile.mk | 81 -
chart2/source/controller/makefile.mk | 132 --
chart2/source/controller/menus/makefile.mk | 63 -
chart2/source/inc/NamedFillProperties.hxx | 78 -
chart2/source/inc/NamedLineProperties.hxx | 78 -
chart2/source/inc/NamedProperties.hxx | 65 -
chart2/source/model/filter/makefile.mk | 49
chart2/source/model/main/LayoutContainer.cxx | 141 --
chart2/source/model/main/LayoutContainer.hxx | 93 -
chart2/source/model/main/makefile.mk | 68 -
chart2/source/model/makefile.mk | 109 --
chart2/source/model/template/makefile.mk | 82 -
chart2/source/tools/NamedFillProperties.cxx | 116 --
chart2/source/tools/NamedLineProperties.cxx | 101 --
chart2/source/tools/NamedProperties.cxx | 61 -
chart2/source/tools/makefile.mk | 185 ---
chart2/source/view/axes/TickmarkHelper.cxx | 947 -------------------
chart2/source/view/axes/Tickmarks_Equidistant.cxx | 12
chart2/source/view/axes/makefile.mk | 66 -
chart2/source/view/charttypes/makefile.mk | 55 -
chart2/source/view/diagram/makefile.mk | 48
chart2/source/view/main/makefile.mk | 67 -
chart2/source/view/makefile.mk | 125 --
chart2/util/makefile.mk | 60 -
41 files changed, 913 insertions(+), 3471 deletions(-)
New commits:
commit fcfea215f256424cb84eda5ea3e2d1bdba53f20b
Author: David Tardon <dtardon at redhat.com>
Date: Fri Apr 15 12:42:33 2011 +0200
check for the value being outside the numeric limit of 32-bit int
Apply the original commit a05213c822ed62256af12690abea62b12aa5dedd to
the right file.
diff --git a/chart2/source/view/axes/Tickmarks_Equidistant.cxx b/chart2/source/view/axes/Tickmarks_Equidistant.cxx
index 61d46f7..0c8c22b 100644
--- a/chart2/source/view/axes/Tickmarks_Equidistant.cxx
+++ b/chart2/source/view/axes/Tickmarks_Equidistant.cxx
@@ -31,6 +31,8 @@
#include "ViewDefines.hxx"
#include <rtl/math.hxx>
#include <tools/debug.hxx>
+
+#include <limits>
#include <memory>
//.............................................................................
@@ -214,7 +216,12 @@ sal_Int32 EquidistantTickFactory::getMaxTickCount( sal_Int32 nDepth ) const
if (!isFinite(fSub))
return 0;
- sal_Int32 nIntervalCount = static_cast<sal_Int32>( fSub / m_rIncrement.Distance );
+ double fIntervalCount = fSub / m_rIncrement.Distance;
+ if (fIntervalCount > std::numeric_limits<sal_Int32>::max())
+ // Interval count too high! Bail out.
+ return 0;
+
+ sal_Int32 nIntervalCount = static_cast<sal_Int32>(fIntervalCount);
nIntervalCount+=3;
for(sal_Int32 nN=0; nN<nDepth-1; nN++)
commit b610373c085d386cc62db3a90ca8a12c467b7b26
Author: David Tardon <dtardon at redhat.com>
Date: Fri Apr 15 12:39:25 2011 +0200
fdo#34350 make sure these values are positive
Apply the original commit 1e3b1a7a8c939a0ae08a14d5efdd65b17355dae9 to
the right file.
diff --git a/chart2/source/view/axes/Tickmarks_Equidistant.cxx b/chart2/source/view/axes/Tickmarks_Equidistant.cxx
index 99a17b4..61d46f7 100644
--- a/chart2/source/view/axes/Tickmarks_Equidistant.cxx
+++ b/chart2/source/view/axes/Tickmarks_Equidistant.cxx
@@ -328,6 +328,9 @@ void EquidistantTickFactory::getAllTicks( ::std::vector< ::std::vector< TickInfo
sal_Int32 nDepthCount = this->getTickDepth();
sal_Int32 nMaxMajorTickCount = this->getMaxTickCount( 0 );
+ if (nDepthCount <= 0 || nMaxMajorTickCount <= 0)
+ return;
+
aAllTicks.realloc(nDepthCount);
aAllTicks[0].realloc(nMaxMajorTickCount);
commit 090f7ad0b9b314fc871030a0fc8171d87dbc8ea8
Author: David Tardon <dtardon at redhat.com>
Date: Fri Apr 15 12:04:41 2011 +0200
remove unused files
diff --git a/chart2/source/inc/NamedFillProperties.hxx b/chart2/source/inc/NamedFillProperties.hxx
deleted file mode 100644
index 210a701..0000000
--- a/chart2/source/inc/NamedFillProperties.hxx
+++ /dev/null
@@ -1,78 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-#ifndef CHART_NAMEDFILLPROPERTIES_HXX
-#define CHART_NAMEDFILLPROPERTIES_HXX
-
-#error "Deprecated, do not include this file"
-
-#include "PropertyHelper.hxx"
-#include "FastPropertyIdRanges.hxx"
-#include <com/sun/star/beans/Property.hpp>
-
-#include <vector>
-
-namespace chart
-{
-
-// CHANGED! : these are the UNnamed properties!
-// @deprecated
-class NamedFillProperties
-{
-public:
- // FastProperty Ids for properties
- enum
- {
- // com.sun.star.drawing.FillProperties (only named properties)
- //optional properties:
- PROP_FILL_TRANSPARENCE_GRADIENT,
- PROP_FILL_GRADIENT,
- PROP_FILL_HATCH,
- PROP_FILL_BITMAP,
-
- FAST_PROPERTY_ID_END_NAMED_FILL_PROP
- };
-
- static void AddPropertiesToVector(
- ::std::vector< ::com::sun::star::beans::Property > & rOutProperties );
-
- static void AddDefaultsToMap( ::chart::tPropertyValueMap & rOutMap );
-
- //will return e.g. "FillGradientName" for nHandle == PROP_FILL_GRADIENT_NAME
- static ::rtl::OUString GetPropertyNameForHandle( sal_Int32 nHandle );
-
-private:
- // not implemented
- NamedFillProperties();
-};
-
-} // namespace chart
-
-// CHART_NAMEDFILLPROPERTIES_HXX
-#endif
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/chart2/source/inc/NamedLineProperties.hxx b/chart2/source/inc/NamedLineProperties.hxx
deleted file mode 100644
index 07a04ad..0000000
--- a/chart2/source/inc/NamedLineProperties.hxx
+++ /dev/null
@@ -1,78 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-#ifndef CHART_NAMEDLINEPROPERTIES_HXX
-#define CHART_NAMEDLINEPROPERTIES_HXX
-
-#error "Deprecated, do not include this file"
-
-#include "PropertyHelper.hxx"
-#include "FastPropertyIdRanges.hxx"
-#include <com/sun/star/beans/Property.hpp>
-
-#include <vector>
-
-namespace chart
-{
-
-
-// @depreated !!
-class NamedLineProperties
-{
-public:
- // FastProperty Ids for properties
- enum
- {
- // com.sun.star.drawing.LineProperties (only named properties)
- PROP_LINE_DASH_NAME = FAST_PROPERTY_ID_START_NAMED_LINE_PROP,
- PROP_LINE_END_NAME,
- PROP_LINE_START_NAME,
-
- FAST_PROPERTY_ID_END_NAMED_LINE_PROP
- };
-
- static void AddPropertiesToVector(
- ::std::vector< ::com::sun::star::beans::Property > & rOutProperties,
- bool bIncludeLineEnds = false );
-
- static void AddDefaultsToMap( ::chart::tPropertyValueMap & rOutMap,
- bool bIncludeLineEnds = false );
-
- //will return e.g. "LineDashName" for PROP_LINE_DASH_NAME
- static ::rtl::OUString GetPropertyNameForHandle( sal_Int32 nHandle );
-
-private:
- // not implemented
- NamedLineProperties();
-};
-
-} // namespace chart
-
-// CHART_NAMEDLINEPROPERTIES_HXX
-#endif
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/chart2/source/inc/NamedProperties.hxx b/chart2/source/inc/NamedProperties.hxx
deleted file mode 100644
index d273ae3..0000000
--- a/chart2/source/inc/NamedProperties.hxx
+++ /dev/null
@@ -1,65 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-#ifndef CHART_NAMEDPROPERTIES_HXX
-#define CHART_NAMEDPROPERTIES_HXX
-
-#include "NamedLineProperties.hxx"
-#include "NamedFillProperties.hxx"
-
-#include "PropertyHelper.hxx"
-#include <com/sun/star/beans/Property.hpp>
-
-#include <vector>
-
-namespace chart
-{
-
-class NamedProperties
-{
- /** this class combines the classes NamedFillAttributes and NamedLineAttributes
- thus you can handle all named properties with one call if you like
- */
-public:
-
- static void AddPropertiesToVector(
- ::std::vector< ::com::sun::star::beans::Property > & rOutProperties );
-
- //will return e.g. "FillGradientName" for nHandle == PROP_FILL_GRADIENT_NAME
- static ::rtl::OUString GetPropertyNameForHandle( sal_Int32 nHandle );
-
-private:
- // not implemented
- NamedProperties();
-};
-
-} // namespace chart
-
-// CHART_NAMEDPROPERTIES_HXX
-#endif
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/chart2/source/model/main/LayoutContainer.cxx b/chart2/source/model/main/LayoutContainer.cxx
deleted file mode 100644
index 3ee73f8..0000000
--- a/chart2/source/model/main/LayoutContainer.cxx
+++ /dev/null
@@ -1,141 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_chart2.hxx"
-#include "LayoutContainer.hxx"
-#include "macros.hxx"
-#include "ContainerHelper.hxx"
-
-#include <algorithm>
-
-using namespace ::com::sun::star;
-
-namespace
-{
-
-static const ::rtl::OUString lcl_aServiceName(
- RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.comp.layout.LayoutContainer" ));
-} // anonymous namespace
-
-namespace chart
-{
-
-LayoutContainer::LayoutContainer()
-{}
-
-LayoutContainer::~LayoutContainer()
-{}
-
-// ____ XLayoutContainer ____
-void SAL_CALL LayoutContainer::addConstrainedElementByIdentifier(
- const ::rtl::OUString& aIdentifier,
- const layout::Constraint& Constraint )
- throw (layout::IllegalConstraintException,
- lang::IllegalArgumentException,
- uno::RuntimeException)
-{
- addElementByIdentifier( aIdentifier );
- m_aConstraints[ aIdentifier ] = Constraint;
-}
-
-void SAL_CALL LayoutContainer::addElementByIdentifier( const ::rtl::OUString& aIdentifier )
- throw (lang::IllegalArgumentException,
- uno::RuntimeException)
-{
- if( ::std::find( m_aLayoutElements.begin(),
- m_aLayoutElements.end(),
- aIdentifier ) != m_aLayoutElements.end())
- throw lang::IllegalArgumentException();
-
- m_aLayoutElements.push_back( aIdentifier );
-}
-
-void SAL_CALL LayoutContainer::removeElementByIdentifier( const ::rtl::OUString& aIdentifier )
- throw (container::NoSuchElementException,
- uno::RuntimeException)
-{
- tLayoutElements::iterator aIt(
- ::std::find( m_aLayoutElements.begin(),
- m_aLayoutElements.end(),
- aIdentifier ));
-
- if( aIt == m_aLayoutElements.end())
- throw container::NoSuchElementException();
-
- m_aLayoutElements.erase( aIt );
- m_aConstraints.erase( aIdentifier );
-}
-
-void SAL_CALL LayoutContainer::setConstraintByIdentifier(
- const ::rtl::OUString& aIdentifier,
- const layout::Constraint& Constraint )
- throw (container::NoSuchElementException,
- uno::RuntimeException)
-{
- if( ::std::find( m_aLayoutElements.begin(),
- m_aLayoutElements.end(),
- aIdentifier ) == m_aLayoutElements.end())
- throw container::NoSuchElementException();
-
- m_aConstraints[ aIdentifier ] = Constraint;
-}
-
-layout::Constraint SAL_CALL LayoutContainer::getConstraintByIdentifier( const ::rtl::OUString& aIdentifier )
- throw (container::NoSuchElementException,
- uno::RuntimeException)
-{
- tConstraintsMap::const_iterator aIt( m_aConstraints.find( aIdentifier ));
- if( aIt == m_aConstraints.end())
- throw container::NoSuchElementException();
-
- return (*aIt).second;
-}
-
-uno::Sequence< ::rtl::OUString > SAL_CALL LayoutContainer::getElementIdentifiers()
- throw (uno::RuntimeException)
-{
- return ContainerHelper::ContainerToSequence( m_aLayoutElements );
-}
-
-uno::Sequence< ::rtl::OUString > LayoutContainer::getSupportedServiceNames_Static()
-{
- uno::Sequence< ::rtl::OUString > aServices( 1 );
-
- aServices[ 0 ] = C2U( "com.sun.star.layout.LayoutContainer" );
- return aServices;
-}
-
-// --------------------------------------------------------------------------------
-
-// implement XServiceInfo methods basing upon getSupportedServiceNames_Static
-APPHELPER_XSERVICEINFO_IMPL( LayoutContainer, lcl_aServiceName );
-
-} // namespace chart
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/chart2/source/model/main/LayoutContainer.hxx b/chart2/source/model/main/LayoutContainer.hxx
deleted file mode 100644
index 71d9c6d..0000000
--- a/chart2/source/model/main/LayoutContainer.hxx
+++ /dev/null
@@ -1,93 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-#ifndef CHART_LAYOUTCONTAINER_HXX
-#define CHART_LAYOUTCONTAINER_HXX
-
-#include <cppuhelper/implbase2.hxx>
-#include <com/sun/star/lang/XServiceInfo.hpp>
-#include <com/sun/star/layout/XLayoutContainer.hpp>
-
-#include "ServiceMacros.hxx"
-
-#include <vector>
-#include <map>
-
-namespace chart
-{
-
-class LayoutContainer : public
- ::cppu::WeakImplHelper2<
- ::com::sun::star::lang::XServiceInfo,
- ::com::sun::star::layout::XLayoutContainer >
-{
-public:
- LayoutContainer();
- virtual ~LayoutContainer();
-
- /// XServiceInfo declarations
- APPHELPER_XSERVICEINFO_DECL()
-
-protected:
- // ____ XLayoutContainer ____
- virtual void SAL_CALL addConstrainedElementByIdentifier( const ::rtl::OUString& aIdentifier, const ::com::sun::star::layout::Constraint& Constraint )
- throw (::com::sun::star::layout::IllegalConstraintException,
- ::com::sun::star::lang::IllegalArgumentException,
- ::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL addElementByIdentifier( const ::rtl::OUString& aIdentifier )
- throw (::com::sun::star::lang::IllegalArgumentException,
- ::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL removeElementByIdentifier( const ::rtl::OUString& aIdentifier )
- throw (::com::sun::star::container::NoSuchElementException,
- ::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL setConstraintByIdentifier( const ::rtl::OUString& aIdentifier, const ::com::sun::star::layout::Constraint& Constraint )
- throw (::com::sun::star::container::NoSuchElementException,
- ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::layout::Constraint SAL_CALL getConstraintByIdentifier( const ::rtl::OUString& aIdentifier )
- throw (::com::sun::star::container::NoSuchElementException,
- ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Sequence<
- ::rtl::OUString > SAL_CALL getElementIdentifiers()
- throw (::com::sun::star::uno::RuntimeException);
-
-private:
- typedef ::std::vector< ::rtl::OUString > tLayoutElements;
-
- typedef ::std::map<
- ::rtl::OUString,
- ::com::sun::star::layout::Constraint > tConstraintsMap;
-
- tLayoutElements m_aLayoutElements;
- tConstraintsMap m_aConstraints;
-};
-
-} // namespace chart
-
-// CHART_LAYOUTCONTAINER_HXX
-#endif
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/chart2/source/tools/NamedFillProperties.cxx b/chart2/source/tools/NamedFillProperties.cxx
deleted file mode 100644
index 3faa883..0000000
--- a/chart2/source/tools/NamedFillProperties.cxx
+++ /dev/null
@@ -1,116 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_chart2.hxx"
-
-#include "NamedFillProperties.hxx"
-#include "macros.hxx"
-#include <com/sun/star/beans/PropertyAttribute.hpp>
-#include <com/sun/star/awt/Gradient.hpp>
-#include <com/sun/star/drawing/Hatch.hpp>
-#include <com/sun/star/chart2/FillBitmap.hpp>
-
-using namespace ::com::sun::star;
-
-using ::com::sun::star::beans::Property;
-using ::rtl::OUString;
-
-namespace chart
-{
-
-void NamedFillProperties::AddPropertiesToVector(
- ::std::vector< Property > & rOutProperties )
-{
- const uno::Type tCppuTypeString = ::getCppuType( reinterpret_cast< const OUString * >(0));
-
- // Fill Properties
- // ---------------
-
- //optional property:
- rOutProperties.push_back(
- Property( C2U( "FillTransparenceGradient" ),
- PROP_FILL_TRANSPARENCE_GRADIENT,
- ::getCppuType( reinterpret_cast< const awt::Gradient * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT
- | beans::PropertyAttribute::MAYBEVOID ));
-
- //optional property:
- rOutProperties.push_back(
- Property( C2U( "FillGradient" ),
- PROP_FILL_GRADIENT,
- ::getCppuType( reinterpret_cast< const awt::Gradient * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT
- | beans::PropertyAttribute::MAYBEVOID ));
-
- //optional property:
- rOutProperties.push_back(
- Property( C2U( "FillHatch" ),
- PROP_FILL_HATCH,
- ::getCppuType( reinterpret_cast< const drawing::Hatch * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT
- | beans::PropertyAttribute::MAYBEVOID ));
-
- //optional property:
- rOutProperties.push_back(
- Property( C2U( "FillBitmapURL" ),
- PROP_FILL_BITMAP,
- ::getCppuType( reinterpret_cast< const ::rtl::OUString * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT
- | beans::PropertyAttribute::MAYBEVOID ));
-}
-
-void NamedFillProperties::AddDefaultsToMap(
- ::chart::tPropertyValueMap & rOutMap )
-{
-}
-
-OUString NamedFillProperties::GetPropertyNameForHandle( sal_Int32 nHandle )
-{
- //will return e.g. "FillGradientName" for PROP_FILL_GRADIENT_NAME
- switch( nHandle )
- {
- case PROP_FILL_GRADIENT_NAME:
- return C2U( "FillGradientName" );
- case PROP_FILL_HATCH_NAME:
- return C2U( "FillHatchName" );
- case PROP_FILL_BITMAP_NAME:
- return C2U( "FillBitmapName" );
- case PROP_FILL_TRANSPARENCY_GRADIENT_NAME:
- return C2U( "FillTransparenceGradientName" );
- }
- return OUString();
-}
-
-} // namespace chart
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/chart2/source/tools/NamedLineProperties.cxx b/chart2/source/tools/NamedLineProperties.cxx
deleted file mode 100644
index a9ac1aa..0000000
--- a/chart2/source/tools/NamedLineProperties.cxx
+++ /dev/null
@@ -1,101 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_chart2.hxx"
-
-#include "NamedLineProperties.hxx"
-#include "macros.hxx"
-#include <com/sun/star/beans/PropertyAttribute.hpp>
-
-using namespace ::com::sun::star;
-
-using ::com::sun::star::beans::Property;
-using ::rtl::OUString;
-
-namespace chart
-{
-
-// @deprecated !!
-void NamedLineProperties::AddPropertiesToVector(
- ::std::vector< Property > & rOutProperties )
-{
- const uno::Type tCppuTypeString = ::getCppuType( reinterpret_cast< const OUString * >(0));
-
- // Line Properties
- // ---------------
- rOutProperties.push_back(
- Property( C2U( "LineDash" ),
- PROP_LINE_DASH,
- ::getCppuType( reinterpret_cast< const drawing::LineDash * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEVOID ));
-
- if( bIncludeLineEnds )
- {
- rOutProperties.push_back(
- Property( C2U( "LineStartName" ),
- PROP_LINE_START_NAME,
- tCppuTypeString,
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT
- | beans::PropertyAttribute::MAYBEVOID ));
-
- rOutProperties.push_back(
- Property( C2U( "LineEndName" ),
- PROP_LINE_END_NAME,
- tCppuTypeString,
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT
- | beans::PropertyAttribute::MAYBEVOID ));
- }
-}
-
-void NamedLineProperties::AddDefaultsToMap(
- ::chart::tPropertyValueMap & rOutMap,
- bool bIncludeLineEnds /* = false */ )
-{
-}
-
-OUString NamedLineProperties::GetPropertyNameForHandle( sal_Int32 nHandle )
-{
- //will return e.g. "LineDashName" for PROP_LINE_DASH_NAME
- switch( nHandle )
- {
- case PROP_LINE_DASH_NAME:
- return C2U( "LineDashName" );
- case PROP_LINE_START_NAME:
- case PROP_LINE_END_NAME:
- break;
- }
- return OUString();
-}
-
-} // namespace chart
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/chart2/source/tools/NamedProperties.cxx b/chart2/source/tools/NamedProperties.cxx
deleted file mode 100644
index 3665792..0000000
--- a/chart2/source/tools/NamedProperties.cxx
+++ /dev/null
@@ -1,61 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_chart2.hxx"
-
-#include "NamedProperties.hxx"
-#include "macros.hxx"
-#include <com/sun/star/beans/PropertyAttribute.hpp>
-
-using namespace ::com::sun::star;
-
-using ::com::sun::star::beans::Property;
-using ::rtl::OUString;
-
-namespace chart
-{
-
-void NamedProperties::AddPropertiesToVector(
- ::std::vector< Property > & rOutProperties )
-{
- NamedFillProperties::AddPropertiesToVector( rOutProperties );
- NamedLineProperties::AddPropertiesToVector( rOutProperties );
-}
-
-OUString NamedProperties::GetPropertyNameForHandle( sal_Int32 nHandle )
-{
- OUString aName = NamedFillProperties::GetPropertyNameForHandle( nHandle );
- if( !aName.getLength() )
- aName = NamedLineProperties::GetPropertyNameForHandle( nHandle );
- return aName;
-}
-
-} // namespace chart
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/chart2/source/view/axes/TickmarkHelper.cxx b/chart2/source/view/axes/TickmarkHelper.cxx
deleted file mode 100644
index c7e58d3..0000000
--- a/chart2/source/view/axes/TickmarkHelper.cxx
+++ /dev/null
@@ -1,947 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_chart2.hxx"
-#include "TickmarkHelper.hxx"
-#include "ViewDefines.hxx"
-#include <rtl/math.hxx>
-#include <tools/debug.hxx>
-#include <memory>
-#include <limits>
-
-//.............................................................................
-namespace chart
-{
-//.............................................................................
-using namespace ::com::sun::star;
-using namespace ::com::sun::star::chart2;
-using namespace ::rtl::math;
-using ::basegfx::B2DVector;
-
-TickInfo::TickInfo()
-: fScaledTickValue( 0.0 )
-, fUnscaledTickValue( 0.0 )
-, aTickScreenPosition(0.0,0.0)
-, bPaintIt( true )
-, xTextShape( NULL )
-, nFactorForLimitedTextWidth(1)
-{
-}
-
-void TickInfo::updateUnscaledValue( const uno::Reference< XScaling >& xInverseScaling )
-{
- if( xInverseScaling.is() )
- this->fUnscaledTickValue = xInverseScaling->doScaling( this->fScaledTickValue );
- else
- this->fUnscaledTickValue = this->fScaledTickValue;
-}
-
-sal_Int32 TickInfo::getScreenDistanceBetweenTicks( const TickInfo& rOherTickInfo ) const
-{
- //return the positive distance between the two first tickmarks in screen values
-
- B2DVector aDistance = rOherTickInfo.aTickScreenPosition - aTickScreenPosition;
- sal_Int32 nRet = static_cast<sal_Int32>(aDistance.getLength());
- if(nRet<0)
- nRet *= -1;
- return nRet;
-}
-
-PureTickIter::PureTickIter( ::std::vector< TickInfo >& rTickInfoVector )
- : m_rTickVector(rTickInfoVector)
- , m_aTickIter(m_rTickVector.begin())
-{
-}
-PureTickIter::~PureTickIter()
-{
-}
-TickInfo* PureTickIter::firstInfo()
-{
- m_aTickIter = m_rTickVector.begin();
- if(m_aTickIter!=m_rTickVector.end())
- return &*m_aTickIter;
- return 0;
-}
-TickInfo* PureTickIter::nextInfo()
-{
- m_aTickIter++;
- if(m_aTickIter!=m_rTickVector.end())
- return &*m_aTickIter;
- return 0;
-}
-
-EquidistantTickIter::EquidistantTickIter( const uno::Sequence< uno::Sequence< double > >& rTicks
- , const ExplicitIncrementData& rIncrement
- , sal_Int32 nMinDepth, sal_Int32 nMaxDepth )
- : m_pSimpleTicks(&rTicks)
- , m_pInfoTicks(0)
- , m_rIncrement(rIncrement)
- , m_nMinDepth(0), m_nMaxDepth(0)
- , m_nTickCount(0), m_pnPositions(NULL)
- , m_pnPreParentCount(NULL), m_pbIntervalFinished(NULL)
- , m_nCurrentDepth(-1), m_nCurrentPos(-1), m_fCurrentValue( 0.0 )
-{
- initIter( nMinDepth, nMaxDepth );
-}
-
-EquidistantTickIter::EquidistantTickIter( ::std::vector< ::std::vector< TickInfo > >& rTicks
- , const ExplicitIncrementData& rIncrement
- , sal_Int32 nMinDepth, sal_Int32 nMaxDepth )
- : m_pSimpleTicks(NULL)
- , m_pInfoTicks(&rTicks)
- , m_rIncrement(rIncrement)
- , m_nMinDepth(0), m_nMaxDepth(0)
- , m_nTickCount(0), m_pnPositions(NULL)
- , m_pnPreParentCount(NULL), m_pbIntervalFinished(NULL)
- , m_nCurrentDepth(-1), m_nCurrentPos(-1), m_fCurrentValue( 0.0 )
-{
- initIter( nMinDepth, nMaxDepth );
-}
-
-void EquidistantTickIter::initIter( sal_Int32 /*nMinDepth*/, sal_Int32 nMaxDepth )
-{
- m_nMaxDepth = nMaxDepth;
- if(nMaxDepth<0 || m_nMaxDepth>getMaxDepth())
- m_nMaxDepth=getMaxDepth();
-
- sal_Int32 nDepth = 0;
- for( nDepth = 0; nDepth<=m_nMaxDepth ;nDepth++ )
- m_nTickCount += getTickCount(nDepth);
-
- if(!m_nTickCount)
- return;
-
- m_pnPositions = new sal_Int32[m_nMaxDepth+1];
-
- m_pnPreParentCount = new sal_Int32[m_nMaxDepth+1];
- m_pbIntervalFinished = new bool[m_nMaxDepth+1];
- m_pnPreParentCount[0] = 0;
- m_pbIntervalFinished[0] = false;
- double fParentValue = getTickValue(0,0);
- for( nDepth = 1; nDepth<=m_nMaxDepth ;nDepth++ )
- {
- m_pbIntervalFinished[nDepth] = false;
-
- sal_Int32 nPreParentCount = 0;
- sal_Int32 nCount = getTickCount(nDepth);
- for(sal_Int32 nN = 0; nN<nCount; nN++)
- {
- if(getTickValue(nDepth,nN) < fParentValue)
- nPreParentCount++;
- else
- break;
- }
- m_pnPreParentCount[nDepth] = nPreParentCount;
- if(nCount)
- {
- double fNextParentValue = getTickValue(nDepth,0);
- if( fNextParentValue < fParentValue )
- fParentValue = fNextParentValue;
- }
- }
-}
-
-EquidistantTickIter::~EquidistantTickIter()
-{
- delete[] m_pnPositions;
- delete[] m_pnPreParentCount;
- delete[] m_pbIntervalFinished;
-}
-
-sal_Int32 EquidistantTickIter::getStartDepth() const
-{
- //find the depth of the first visible tickmark:
- //it is the depth of the smallest value
- sal_Int32 nReturnDepth=0;
- double fMinValue = DBL_MAX;
- for(sal_Int32 nDepth = 0; nDepth<=m_nMaxDepth ;nDepth++ )
- {
- sal_Int32 nCount = getTickCount(nDepth);
- if( !nCount )
- continue;
- double fThisValue = getTickValue(nDepth,0);
- if(fThisValue<fMinValue)
- {
- nReturnDepth = nDepth;
- fMinValue = fThisValue;
- }
- }
- return nReturnDepth;
-}
-
-double* EquidistantTickIter::firstValue()
-{
- if( gotoFirst() )
- {
- m_fCurrentValue = getTickValue(m_nCurrentDepth, m_pnPositions[m_nCurrentDepth]);
- return &m_fCurrentValue;
- }
- return NULL;
-}
-
-TickInfo* EquidistantTickIter::firstInfo()
-{
- if( m_pInfoTicks && gotoFirst() )
- return &(*m_pInfoTicks)[m_nCurrentDepth][m_pnPositions[m_nCurrentDepth]];
- return NULL;
-}
-
-sal_Int32 EquidistantTickIter::getIntervalCount( sal_Int32 nDepth )
-{
- if(nDepth>m_rIncrement.SubIncrements.getLength() || nDepth<0)
- return 0;
-
- if(!nDepth)
- return m_nTickCount;
-
- return m_rIncrement.SubIncrements[nDepth-1].IntervalCount;
-}
-
-bool EquidistantTickIter::isAtLastPartTick()
-{
- if(!m_nCurrentDepth)
- return false;
- sal_Int32 nIntervalCount = getIntervalCount( m_nCurrentDepth );
- if(!nIntervalCount || nIntervalCount == 1)
- return true;
- if( m_pbIntervalFinished[m_nCurrentDepth] )
- return false;
- sal_Int32 nPos = m_pnPositions[m_nCurrentDepth]+1;
- if(m_pnPreParentCount[m_nCurrentDepth])
- nPos += nIntervalCount-1 - m_pnPreParentCount[m_nCurrentDepth];
- bool bRet = nPos && nPos % (nIntervalCount-1) == 0;
- if(!nPos && !m_pnPreParentCount[m_nCurrentDepth]
- && m_pnPositions[m_nCurrentDepth-1]==-1 )
- bRet = true;
- return bRet;
-}
-
-bool EquidistantTickIter::gotoFirst()
-{
- if( m_nMaxDepth<0 )
- return false;
- if( !m_nTickCount )
- return false;
-
- for(sal_Int32 nDepth = 0; nDepth<=m_nMaxDepth ;nDepth++ )
- m_pnPositions[nDepth] = -1;
-
- m_nCurrentPos = 0;
- m_nCurrentDepth = getStartDepth();
- m_pnPositions[m_nCurrentDepth] = 0;
- return true;
-}
-
-bool EquidistantTickIter::gotoNext()
-{
- if( m_nCurrentPos < 0 )
- return false;
- m_nCurrentPos++;
-
- if( m_nCurrentPos >= m_nTickCount )
- return false;
-
- if( m_nCurrentDepth==m_nMaxDepth && isAtLastPartTick() )
- {
- do
- {
- m_pbIntervalFinished[m_nCurrentDepth] = true;
- m_nCurrentDepth--;
- }
- while( m_nCurrentDepth && isAtLastPartTick() );
- }
- else if( m_nCurrentDepth<m_nMaxDepth )
- {
- do
- {
- m_nCurrentDepth++;
- }
- while( m_nCurrentDepth<m_nMaxDepth );
- }
- m_pbIntervalFinished[m_nCurrentDepth] = false;
- m_pnPositions[m_nCurrentDepth] = m_pnPositions[m_nCurrentDepth]+1;
- return true;
-}
-
-bool EquidistantTickIter::gotoIndex( sal_Int32 nTickIndex )
-{
- if( nTickIndex < 0 )
- return false;
- if( nTickIndex >= m_nTickCount )
- return false;
-
- if( nTickIndex < m_nCurrentPos )
- if( !gotoFirst() )
- return false;
-
- while( nTickIndex > m_nCurrentPos )
- if( !gotoNext() )
- return false;
-
- return true;
-}
-
-sal_Int32 EquidistantTickIter::getCurrentIndex() const
-{
- return m_nCurrentPos;
-}
-sal_Int32 EquidistantTickIter::getMaxIndex() const
-{
- return m_nTickCount-1;
-}
-
-double* EquidistantTickIter::nextValue()
-{
- if( gotoNext() )
- {
- m_fCurrentValue = getTickValue(m_nCurrentDepth, m_pnPositions[m_nCurrentDepth]);
- return &m_fCurrentValue;
- }
- return NULL;
-}
-
-TickInfo* EquidistantTickIter::nextInfo()
-{
- if( m_pInfoTicks && gotoNext() &&
- static_cast< sal_Int32 >(
- (*m_pInfoTicks)[m_nCurrentDepth].size()) > m_pnPositions[m_nCurrentDepth] )
- {
- return &(*m_pInfoTicks)[m_nCurrentDepth][m_pnPositions[m_nCurrentDepth]];
- }
- return NULL;
-}
-
-//-----------------------------------------------------------------------------
-//-----------------------------------------------------------------------------
-//-----------------------------------------------------------------------------
-
-double TickmarkHelper::getMinimumAtIncrement( double fMin, const ExplicitIncrementData& rIncrement )
-{
- //the returned value will be <= fMin and on a Major Tick given by rIncrement
- if(rIncrement.Distance<=0.0)
- return fMin;
-
- double fRet = rIncrement.BaseValue +
- floor( approxSub( fMin, rIncrement.BaseValue )
- / rIncrement.Distance)
- *rIncrement.Distance;
-
- if( fRet > fMin )
- {
- if( !approxEqual(fRet, fMin) )
- fRet -= rIncrement.Distance;
- }
- return fRet;
-}
-
-double TickmarkHelper::getMaximumAtIncrement( double fMax, const ExplicitIncrementData& rIncrement )
-{
- //the returned value will be >= fMax and on a Major Tick given by rIncrement
- if(rIncrement.Distance<=0.0)
- return fMax;
-
- double fRet = rIncrement.BaseValue +
- floor( approxSub( fMax, rIncrement.BaseValue )
- / rIncrement.Distance)
- *rIncrement.Distance;
-
- if( fRet < fMax )
- {
- if( !approxEqual(fRet, fMax) )
- fRet += rIncrement.Distance;
- }
- return fRet;
-}
-
-//-----------------------------------------------------------------------------
-//-----------------------------------------------------------------------------
-//-----------------------------------------------------------------------------
-
-TickmarkHelper::TickmarkHelper(
- const ExplicitScaleData& rScale, const ExplicitIncrementData& rIncrement )
- : m_rScale( rScale )
- , m_rIncrement( rIncrement )
- , m_xInverseScaling(NULL)
- , m_pfCurrentValues(NULL)
-{
- //@todo: make sure that the scale is valid for the scaling
-
- m_pfCurrentValues = new double[getTickDepth()];
-
- if( m_rScale.Scaling.is() )
- {
- m_xInverseScaling = m_rScale.Scaling->getInverseScaling();
- DBG_ASSERT( m_xInverseScaling.is(), "each Scaling needs to return a inverse Scaling" );
- }
-
- double fMin = m_fScaledVisibleMin = m_rScale.Minimum;
- if( m_xInverseScaling.is() )
- {
- m_fScaledVisibleMin = m_rScale.Scaling->doScaling(m_fScaledVisibleMin);
- if(m_rIncrement.PostEquidistant )
- fMin = m_fScaledVisibleMin;
- }
-
- double fMax = m_fScaledVisibleMax = m_rScale.Maximum;
- if( m_xInverseScaling.is() )
- {
- m_fScaledVisibleMax = m_rScale.Scaling->doScaling(m_fScaledVisibleMax);
- if(m_rIncrement.PostEquidistant )
- fMax = m_fScaledVisibleMax;
- }
-
- //--
- m_fOuterMajorTickBorderMin = TickmarkHelper::getMinimumAtIncrement( fMin, m_rIncrement );
- m_fOuterMajorTickBorderMax = TickmarkHelper::getMaximumAtIncrement( fMax, m_rIncrement );
- //--
-
- m_fOuterMajorTickBorderMin_Scaled = m_fOuterMajorTickBorderMin;
- m_fOuterMajorTickBorderMax_Scaled = m_fOuterMajorTickBorderMax;
- if(!m_rIncrement.PostEquidistant && m_xInverseScaling.is() )
- {
- m_fOuterMajorTickBorderMin_Scaled = m_rScale.Scaling->doScaling(m_fOuterMajorTickBorderMin);
- m_fOuterMajorTickBorderMax_Scaled = m_rScale.Scaling->doScaling(m_fOuterMajorTickBorderMax);
-
- //check validity of new range: m_fOuterMajorTickBorderMin <-> m_fOuterMajorTickBorderMax
- //it is assumed here, that the original range in the given Scale is valid
- if( !rtl::math::isFinite(m_fOuterMajorTickBorderMin_Scaled) )
- {
- m_fOuterMajorTickBorderMin += m_rIncrement.Distance;
- m_fOuterMajorTickBorderMin_Scaled = m_rScale.Scaling->doScaling(m_fOuterMajorTickBorderMin);
- }
- if( !rtl::math::isFinite(m_fOuterMajorTickBorderMax_Scaled) )
- {
- m_fOuterMajorTickBorderMax -= m_rIncrement.Distance;
- m_fOuterMajorTickBorderMax_Scaled = m_rScale.Scaling->doScaling(m_fOuterMajorTickBorderMax);
- }
- }
-}
-
-TickmarkHelper* TickmarkHelper::createShiftedTickmarkHelper() const
-{
- ExplicitIncrementData aShiftedIncrement( m_rIncrement );
- aShiftedIncrement.BaseValue = m_rIncrement.BaseValue-m_rIncrement.Distance/2.0;
- return new TickmarkHelper( m_rScale, aShiftedIncrement );
-}
-
-TickmarkHelper::~TickmarkHelper()
-{
- delete[] m_pfCurrentValues;
-}
-
-sal_Int32 TickmarkHelper::getTickDepth() const
-{
- return m_rIncrement.SubIncrements.getLength() + 1;
-}
-
-sal_Int32 TickmarkHelper::getMaxTickCount( sal_Int32 nDepth ) const
-{
- //return the maximum amount of ticks
- //possibly open intervals at the two ends of the region are handled as if they were completely visible
- //(this is necessary for calculating the sub ticks at the borders correctly)
-
- if( nDepth >= getTickDepth() )
- return 0;
- if( m_fOuterMajorTickBorderMax < m_fOuterMajorTickBorderMin )
- return 0;
- if( m_rIncrement.Distance<=0.0)
- return 0;
-
- double fSub;
- if(m_rIncrement.PostEquidistant )
- fSub = approxSub( m_fScaledVisibleMax, m_fScaledVisibleMin );
- else
- fSub = approxSub( m_rScale.Maximum, m_rScale.Minimum );
-
- if (!isFinite(fSub))
- return 0;
-
- double fIntervalCount = fSub / m_rIncrement.Distance;
- if (fIntervalCount > std::numeric_limits<sal_Int32>::max())
- // Interval count too high! Bail out.
- return 0;
-
- sal_Int32 nIntervalCount = static_cast<sal_Int32>(fIntervalCount);
-
- nIntervalCount+=3;
- for(sal_Int32 nN=0; nN<nDepth-1; nN++)
- {
- if( m_rIncrement.SubIncrements[nN].IntervalCount>1 )
- nIntervalCount *= m_rIncrement.SubIncrements[nN].IntervalCount;
- }
-
- sal_Int32 nTickCount = nIntervalCount;
- if(nDepth>0 && m_rIncrement.SubIncrements[nDepth-1].IntervalCount>1)
- nTickCount = nIntervalCount * (m_rIncrement.SubIncrements[nDepth-1].IntervalCount-1);
-
- return nTickCount;
-}
-
-double* TickmarkHelper::getMajorTick( sal_Int32 nTick ) const
-{
- m_pfCurrentValues[0] = m_fOuterMajorTickBorderMin + nTick*m_rIncrement.Distance;
-
- if(m_pfCurrentValues[0]>m_fOuterMajorTickBorderMax)
- {
- if( !approxEqual(m_pfCurrentValues[0],m_fOuterMajorTickBorderMax) )
- return NULL;
- }
- if(m_pfCurrentValues[0]<m_fOuterMajorTickBorderMin)
- {
- if( !approxEqual(m_pfCurrentValues[0],m_fOuterMajorTickBorderMin) )
- return NULL;
- }
-
- //return always the value after scaling
- if(!m_rIncrement.PostEquidistant && m_xInverseScaling.is() )
- m_pfCurrentValues[0] = m_rScale.Scaling->doScaling( m_pfCurrentValues[0] );
-
- return &m_pfCurrentValues[0];
-}
-
-double* TickmarkHelper::getMinorTick( sal_Int32 nTick, sal_Int32 nDepth
- , double fStartParentTick, double fNextParentTick ) const
-{
- //check validity of arguments
- {
- //DBG_ASSERT( fStartParentTick < fNextParentTick, "fStartParentTick >= fNextParentTick");
- if(fStartParentTick >= fNextParentTick)
- return NULL;
- if(nDepth>m_rIncrement.SubIncrements.getLength() || nDepth<=0)
- return NULL;
-
- //subticks are only calculated if they are laying between parent ticks:
- if(nTick<=0)
- return NULL;
- if(nTick>=m_rIncrement.SubIncrements[nDepth-1].IntervalCount)
- return NULL;
- }
-
- bool bPostEquidistant = m_rIncrement.SubIncrements[nDepth-1].PostEquidistant;
-
- double fAdaptedStartParent = fStartParentTick;
- double fAdaptedNextParent = fNextParentTick;
-
- if( !bPostEquidistant && m_xInverseScaling.is() )
- {
- fAdaptedStartParent = m_xInverseScaling->doScaling(fStartParentTick);
- fAdaptedNextParent = m_xInverseScaling->doScaling(fNextParentTick);
- }
-
- double fDistance = (fAdaptedNextParent - fAdaptedStartParent)/m_rIncrement.SubIncrements[nDepth-1].IntervalCount;
-
- m_pfCurrentValues[nDepth] = fAdaptedStartParent + nTick*fDistance;
-
- //return always the value after scaling
- if(!bPostEquidistant && m_xInverseScaling.is() )
- m_pfCurrentValues[nDepth] = m_rScale.Scaling->doScaling( m_pfCurrentValues[nDepth] );
-
- if( !isWithinOuterBorder( m_pfCurrentValues[nDepth] ) )
- return NULL;
-
- return &m_pfCurrentValues[nDepth];
-}
-
-bool TickmarkHelper::isWithinOuterBorder( double fScaledValue ) const
-{
- if(fScaledValue>m_fOuterMajorTickBorderMax_Scaled)
- return false;
- if(fScaledValue<m_fOuterMajorTickBorderMin_Scaled)
- return false;
-
- return true;
-}
-
-
-bool TickmarkHelper::isVisible( double fScaledValue ) const
-{
- if(fScaledValue>m_fScaledVisibleMax)
- {
- if( !approxEqual(fScaledValue,m_fScaledVisibleMax) )
- return false;
- }
- if(fScaledValue<m_fScaledVisibleMin)
- {
- if( !approxEqual(fScaledValue,m_fScaledVisibleMin) )
- return false;
- }
- return true;
-}
-
-void TickmarkHelper::getAllTicks( ::std::vector< ::std::vector< TickInfo > >& rAllTickInfos ) const
-{
- uno::Sequence< uno::Sequence< double > > aAllTicks;
-
- //create point sequences for each tick depth
- sal_Int32 nDepthCount = this->getTickDepth();
- sal_Int32 nMaxMajorTickCount = this->getMaxTickCount( 0 );
-
- if (nDepthCount <= 0 || nMaxMajorTickCount <= 0)
- return;
-
- aAllTicks.realloc(nDepthCount);
- aAllTicks[0].realloc(nMaxMajorTickCount);
-
- sal_Int32 nRealMajorTickCount = 0;
- double* pValue = NULL;
- for( sal_Int32 nMajorTick=0; nMajorTick<nMaxMajorTickCount; nMajorTick++ )
- {
- pValue = this->getMajorTick( nMajorTick );
- if(!pValue)
- continue;
- aAllTicks[0][nRealMajorTickCount] = *pValue;
- nRealMajorTickCount++;
- }
- if(!nRealMajorTickCount)
- return;
- aAllTicks[0].realloc(nRealMajorTickCount);
-
- if(nDepthCount>0)
- this->addSubTicks( 1, aAllTicks );
-
- //so far we have added all ticks between the outer major tick marks
- //this was necessary to create sub ticks correctly
- //now we reduce all ticks to the visible ones that lie between the real borders
- sal_Int32 nDepth = 0;
- sal_Int32 nTick = 0;
- for( nDepth = 0; nDepth < nDepthCount; nDepth++)
- {
- sal_Int32 nInvisibleAtLowerBorder = 0;
- sal_Int32 nInvisibleAtUpperBorder = 0;
- //we need only to check all ticks within the first major interval at each border
- sal_Int32 nCheckCount = 1;
- for(sal_Int32 nN=0; nN<nDepth; nN++)
- {
- if( m_rIncrement.SubIncrements[nN].IntervalCount>1 )
- nCheckCount *= m_rIncrement.SubIncrements[nN].IntervalCount;
- }
- uno::Sequence< double >& rTicks = aAllTicks[nDepth];
- sal_Int32 nCount = rTicks.getLength();
- //check lower border
- for( nTick=0; nTick<nCheckCount && nTick<nCount; nTick++)
- {
- if( !isVisible( rTicks[nTick] ) )
- nInvisibleAtLowerBorder++;
- }
- //check upper border
- for( nTick=nCount-1; nTick>nCount-1-nCheckCount && nTick>=0; nTick--)
- {
- if( !isVisible( rTicks[nTick] ) )
- nInvisibleAtUpperBorder++;
- }
- //resize sequence
- if( !nInvisibleAtLowerBorder && !nInvisibleAtUpperBorder)
- continue;
- if( !nInvisibleAtLowerBorder )
- rTicks.realloc(nCount-nInvisibleAtUpperBorder);
- else
- {
- sal_Int32 nNewCount = nCount-nInvisibleAtUpperBorder-nInvisibleAtLowerBorder;
- if(nNewCount<0)
- nNewCount=0;
-
- uno::Sequence< double > aOldTicks(rTicks);
- rTicks.realloc(nNewCount);
- for(nTick = 0; nTick<nNewCount; nTick++)
- rTicks[nTick] = aOldTicks[nInvisibleAtLowerBorder+nTick];
- }
- }
-
- //fill return value
- rAllTickInfos.resize(aAllTicks.getLength());
- for( nDepth=0 ;nDepth<aAllTicks.getLength(); nDepth++ )
- {
- sal_Int32 nCount = aAllTicks[nDepth].getLength();
- rAllTickInfos[nDepth].resize( nCount );
- for(sal_Int32 nN = 0; nN<nCount; nN++)
- {
- rAllTickInfos[nDepth][nN].fScaledTickValue = aAllTicks[nDepth][nN];
- }
- }
-}
-
-void TickmarkHelper::getAllTicksShifted( ::std::vector< ::std::vector< TickInfo > >& rAllTickInfos ) const
-{
- std::auto_ptr< TickmarkHelper > apShiftedTickmarkHelper( createShiftedTickmarkHelper() );
- apShiftedTickmarkHelper->getAllTicks( rAllTickInfos );
-}
-
-void TickmarkHelper::addSubTicks( sal_Int32 nDepth, uno::Sequence< uno::Sequence< double > >& rParentTicks ) const
-{
- EquidistantTickIter aIter( rParentTicks, m_rIncrement, 0, nDepth-1 );
- double* pfNextParentTick = aIter.firstValue();
- if(!pfNextParentTick)
- return;
- double fLastParentTick = *pfNextParentTick;
- pfNextParentTick = aIter.nextValue();
- if(!pfNextParentTick)
- return;
-
- sal_Int32 nMaxSubTickCount = this->getMaxTickCount( nDepth );
- if(!nMaxSubTickCount)
- return;
-
- uno::Sequence< double > aSubTicks(nMaxSubTickCount);
- sal_Int32 nRealSubTickCount = 0;
- sal_Int32 nIntervalCount = m_rIncrement.SubIncrements[nDepth-1].IntervalCount;
-
- double* pValue = NULL;
- for(; pfNextParentTick; fLastParentTick=*pfNextParentTick, pfNextParentTick = aIter.nextValue())
- {
- for( sal_Int32 nPartTick = 1; nPartTick<nIntervalCount; nPartTick++ )
- {
- pValue = this->getMinorTick( nPartTick, nDepth
- , fLastParentTick, *pfNextParentTick );
- if(!pValue)
- continue;
-
- aSubTicks[nRealSubTickCount] = *pValue;
- nRealSubTickCount++;
- }
- }
-
- aSubTicks.realloc(nRealSubTickCount);
- rParentTicks[nDepth] = aSubTicks;
- if(m_rIncrement.SubIncrements.getLength()>nDepth)
- addSubTicks( nDepth+1, rParentTicks );
-}
-
-//-----------------------------------------------------------------------------
-// ___TickmarkHelper_2D___
-//-----------------------------------------------------------------------------
-TickmarkHelper_2D::TickmarkHelper_2D(
- const ExplicitScaleData& rScale, const ExplicitIncrementData& rIncrement
- //, double fStrech_SceneToScreen, double fOffset_SceneToScreen )
- , const B2DVector& rStartScreenPos, const B2DVector& rEndScreenPos
- , const B2DVector& rAxisLineToLabelLineShift )
- : TickmarkHelper( rScale, rIncrement )
- , m_aAxisStartScreenPosition2D(rStartScreenPos)
- , m_aAxisEndScreenPosition2D(rEndScreenPos)
- , m_aAxisLineToLabelLineShift(rAxisLineToLabelLineShift)
- , m_fStrech_LogicToScreen(1.0)
- , m_fOffset_LogicToScreen(0.0)
-{
- double fWidthY = m_fScaledVisibleMax - m_fScaledVisibleMin;
- if( AxisOrientation_MATHEMATICAL==m_rScale.Orientation )
- {
- m_fStrech_LogicToScreen = 1.0/fWidthY;
- m_fOffset_LogicToScreen = -m_fScaledVisibleMin;
- }
- else
- {
- B2DVector aSwap(m_aAxisStartScreenPosition2D);
- m_aAxisStartScreenPosition2D = m_aAxisEndScreenPosition2D;
- m_aAxisEndScreenPosition2D = aSwap;
-
- m_fStrech_LogicToScreen = -1.0/fWidthY;
- m_fOffset_LogicToScreen = -m_fScaledVisibleMax;
- }
-}
-
-TickmarkHelper* TickmarkHelper_2D::createShiftedTickmarkHelper() const
-{
- ExplicitIncrementData aShiftedIncrement( m_rIncrement );
- aShiftedIncrement.BaseValue = m_rIncrement.BaseValue-m_rIncrement.Distance/2.0;
-
- ::basegfx::B2DVector aStart( m_aAxisStartScreenPosition2D );
- ::basegfx::B2DVector aEnd( m_aAxisEndScreenPosition2D );
- if( AxisOrientation_MATHEMATICAL==m_rScale.Orientation )
- std::swap( aStart, aEnd );
-
- return new TickmarkHelper_2D( m_rScale, aShiftedIncrement, aStart, aEnd, m_aAxisLineToLabelLineShift );
-}
-
-TickmarkHelper_2D::~TickmarkHelper_2D()
-{
-}
-
-bool TickmarkHelper_2D::isHorizontalAxis() const
-{
- return ( m_aAxisStartScreenPosition2D.getY() == m_aAxisEndScreenPosition2D.getY() );
-}
-bool TickmarkHelper_2D::isVerticalAxis() const
-{
- return ( m_aAxisStartScreenPosition2D.getX() == m_aAxisEndScreenPosition2D.getX() );
-}
-
-sal_Int32 TickmarkHelper_2D::getTickScreenDistance( TickIter& rIter )
-{
- //return the positive distance between the two first tickmarks in screen values
- //if there are less than two tickmarks -1 is returned
-
- const TickInfo* pFirstTickInfo = rIter.firstInfo();
- const TickInfo* pSecondTickInfo = rIter.nextInfo();
- if(!pSecondTickInfo || !pFirstTickInfo)
- return -1;
-
- return pFirstTickInfo->getScreenDistanceBetweenTicks( *pSecondTickInfo );
-}
-
-B2DVector TickmarkHelper_2D::getTickScreenPosition2D( double fScaledLogicTickValue ) const
-{
- B2DVector aRet(m_aAxisStartScreenPosition2D);
- aRet += (m_aAxisEndScreenPosition2D-m_aAxisStartScreenPosition2D)
- *((fScaledLogicTickValue+m_fOffset_LogicToScreen)*m_fStrech_LogicToScreen);
- return aRet;
-}
-
-void TickmarkHelper_2D::addPointSequenceForTickLine( drawing::PointSequenceSequence& rPoints
- , sal_Int32 nSequenceIndex
- , double fScaledLogicTickValue, double fInnerDirectionSign
- , const TickmarkProperties& rTickmarkProperties
- , bool bPlaceAtLabels ) const
-{
- if( fInnerDirectionSign==0.0 )
- fInnerDirectionSign = 1.0;
-
- B2DVector aTickScreenPosition = this->getTickScreenPosition2D(fScaledLogicTickValue);
- if( bPlaceAtLabels )
- aTickScreenPosition += m_aAxisLineToLabelLineShift;
-
- B2DVector aMainDirection = m_aAxisEndScreenPosition2D-m_aAxisStartScreenPosition2D;
- aMainDirection.normalize();
- B2DVector aOrthoDirection(-aMainDirection.getY(),aMainDirection.getX());
- aOrthoDirection *= fInnerDirectionSign;
- aOrthoDirection.normalize();
-
- B2DVector aStart = aTickScreenPosition + aOrthoDirection*rTickmarkProperties.RelativePos;
- B2DVector aEnd = aStart - aOrthoDirection*rTickmarkProperties.Length;
-
- rPoints[nSequenceIndex].realloc(2);
- rPoints[nSequenceIndex][0].X = static_cast<sal_Int32>(aStart.getX());
- rPoints[nSequenceIndex][0].Y = static_cast<sal_Int32>(aStart.getY());
- rPoints[nSequenceIndex][1].X = static_cast<sal_Int32>(aEnd.getX());
- rPoints[nSequenceIndex][1].Y = static_cast<sal_Int32>(aEnd.getY());
-}
-
-B2DVector TickmarkHelper_2D::getDistanceAxisTickToText( const AxisProperties& rAxisProperties, bool bIncludeFarAwayDistanceIfSo, bool bIncludeSpaceBetweenTickAndText ) const
-{
- bool bFarAwayLabels = false;
- if( ::com::sun::star::chart::ChartAxisLabelPosition_OUTSIDE_START == rAxisProperties.m_eLabelPos
- || ::com::sun::star::chart::ChartAxisLabelPosition_OUTSIDE_END == rAxisProperties.m_eLabelPos )
- bFarAwayLabels = true;
-
- double fInnerDirectionSign = rAxisProperties.m_fInnerDirectionSign;
- if( fInnerDirectionSign==0.0 )
- fInnerDirectionSign = 1.0;
-
- B2DVector aMainDirection = m_aAxisEndScreenPosition2D-m_aAxisStartScreenPosition2D;
- aMainDirection.normalize();
- B2DVector aOrthoDirection(-aMainDirection.getY(),aMainDirection.getX());
- aOrthoDirection *= fInnerDirectionSign;
- aOrthoDirection.normalize();
-
- B2DVector aStart(0,0), aEnd(0,0);
- if( bFarAwayLabels )
- {
- TickmarkProperties aProps( AxisProperties::getBiggestTickmarkProperties() );
- aStart = aOrthoDirection*aProps.RelativePos;
- aEnd = aStart - aOrthoDirection*aProps.Length;
- }
- else
- {
- for( sal_Int32 nN=rAxisProperties.m_aTickmarkPropertiesList.size();nN--;)
- {
- const TickmarkProperties& rProps = rAxisProperties.m_aTickmarkPropertiesList[nN];
- B2DVector aNewStart = aOrthoDirection*rProps.RelativePos;
- B2DVector aNewEnd = aNewStart - aOrthoDirection*rProps.Length;
- if(aNewStart.getLength()>aStart.getLength())
- aStart=aNewStart;
- if(aNewEnd.getLength()>aEnd.getLength())
- aEnd=aNewEnd;
- }
- }
-
- B2DVector aLabelDirection(aStart);
- if( rAxisProperties.m_fInnerDirectionSign != rAxisProperties.m_fLabelDirectionSign )
- aLabelDirection = aEnd;
-
- B2DVector aOrthoLabelDirection(aOrthoDirection);
- if( rAxisProperties.m_fInnerDirectionSign != rAxisProperties.m_fLabelDirectionSign )
- aOrthoLabelDirection*=-1.0;
- aOrthoLabelDirection.normalize();
- if( bIncludeSpaceBetweenTickAndText )
- aLabelDirection += aOrthoLabelDirection*AXIS2D_TICKLABELSPACING;
- if( bFarAwayLabels && bIncludeFarAwayDistanceIfSo )
- aLabelDirection += m_aAxisLineToLabelLineShift;
- return aLabelDirection;
-}
-
-void TickmarkHelper_2D::createPointSequenceForAxisMainLine( drawing::PointSequenceSequence& rPoints ) const
-{
- rPoints[0].realloc(2);
- rPoints[0][0].X = static_cast<sal_Int32>(m_aAxisStartScreenPosition2D.getX());
- rPoints[0][0].Y = static_cast<sal_Int32>(m_aAxisStartScreenPosition2D.getY());
- rPoints[0][1].X = static_cast<sal_Int32>(m_aAxisEndScreenPosition2D.getX());
- rPoints[0][1].Y = static_cast<sal_Int32>(m_aAxisEndScreenPosition2D.getY());
-}
-
-void TickmarkHelper_2D::updateScreenValues( ::std::vector< ::std::vector< TickInfo > >& rAllTickInfos ) const
-{
- //get the transformed screen values for all tickmarks in rAllTickInfos
- ::std::vector< ::std::vector< TickInfo > >::iterator aDepthIter = rAllTickInfos.begin();
- const ::std::vector< ::std::vector< TickInfo > >::const_iterator aDepthEnd = rAllTickInfos.end();
- for( ; aDepthIter != aDepthEnd; aDepthIter++ )
- {
- ::std::vector< TickInfo >::iterator aTickIter = (*aDepthIter).begin();
- const ::std::vector< TickInfo >::const_iterator aTickEnd = (*aDepthIter).end();
- for( ; aTickIter != aTickEnd; aTickIter++ )
- {
- TickInfo& rTickInfo = (*aTickIter);
- rTickInfo.aTickScreenPosition =
- this->getTickScreenPosition2D( rTickInfo.fScaledTickValue );
- }
- }
-}
-
-//-----------------------------------------------------------------------------
-// ___TickmarkHelper_3D___
-//-----------------------------------------------------------------------------
-TickmarkHelper_3D::TickmarkHelper_3D(
- const ExplicitScaleData& rScale, const ExplicitIncrementData& rIncrement )
- : TickmarkHelper( rScale, rIncrement )
-{
-}
-
-TickmarkHelper* TickmarkHelper_3D::createShiftedTickmarkHelper() const
-{
- ExplicitIncrementData aShiftedIncrement( m_rIncrement );
- aShiftedIncrement.BaseValue = m_rIncrement.BaseValue-m_rIncrement.Distance/2.0;
- return new TickmarkHelper_3D( m_rScale, aShiftedIncrement );
-}
-
-TickmarkHelper_3D::~TickmarkHelper_3D()
-{
-}
-
-//.............................................................................
-} //namespace chart
-//.............................................................................
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
commit 6b0ed964454cfa35a319050fcd0a1dd8c3dc7676
Author: David Tardon <dtardon at redhat.com>
Date: Fri Apr 15 10:35:13 2011 +0200
gbuildize chart2
diff --git a/chart2/AllLangResTarget_chartcontroller.mk b/chart2/AllLangResTarget_chartcontroller.mk
new file mode 100644
index 0000000..af98dd5
--- /dev/null
+++ b/chart2/AllLangResTarget_chartcontroller.mk
@@ -0,0 +1,221 @@
+# Version: MPL 1.1 / GPLv3+ / LGPLv3+
+#
+# The contents of this file are subject to the Mozilla Public License Version
+# 1.1 (the "License"); you may not use this file except in compliance with
+# the License or as specified alternatively below. You may obtain a copy of
+# the License at http://www.mozilla.org/MPL/
+#
+# Software distributed under the License is distributed on an "AS IS" basis,
+# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+# for the specific language governing rights and limitations under the
+# License.
+#
+# The Initial Developer of the Original Code is
+# David Tardon, Red Hat Inc. <dtardon at redhat.com>
+# Portions created by the Initial Developer are Copyright (C) 2010 the
+# Initial Developer. All Rights Reserved.
+#
+# Major Contributor(s):
+#
+# For minor contributions see the git repository.
+#
+# Alternatively, the contents of this file may be used under the terms of
+# either the GNU General Public License Version 3 or later (the "GPLv3+"), or
+# the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
+# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
+# instead of those above.
+
+$(eval $(call gb_AllLangResTarget_AllLangResTarget,chartcontroller))
+
+$(eval $(call gb_AllLangResTarget_set_reslocation,chartcontroller,chart2))
+
+$(eval $(call gb_AllLangResTarget_add_srs,chartcontroller,\
+ chart2/res \
+))
+
+$(eval $(call gb_SrsTarget_SrsTarget,chart2/res))
+
+$(eval $(call gb_SrsTarget_set_include,chart2/res,\
+ $$(INCLUDE) \
+ -I$(realpath $(SRCDIR)/chart2/source/controller/dialogs) \
+ -I$(realpath $(SRCDIR)/chart2/source/controller/inc) \
+ -I$(realpath $(SRCDIR)/chart2/source/controller/main) \
+ -I$(realpath $(SRCDIR)/chart2/source/inc) \
+ -I$(WORKDIR)/chart2/inc \
+ -I$(OUTDIR)/inc \
+))
+
+$(eval $(call gb_SrsTarget_add_files,chart2/res,\
+ chart2/source/controller/dialogs/Bitmaps.src \
+ chart2/source/controller/dialogs/dlg_ChartType.src \
+ chart2/source/controller/dialogs/dlg_CreationWizard.src \
+ chart2/source/controller/dialogs/dlg_DataEditor.src \
+ chart2/source/controller/dialogs/dlg_DataSource.src \
+ chart2/source/controller/dialogs/dlg_InsertAxis_Grid.src \
+ chart2/source/controller/dialogs/dlg_InsertDataLabel.src \
+ chart2/source/controller/dialogs/dlg_InsertErrorBars.src \
+ chart2/source/controller/dialogs/dlg_InsertLegend.src \
+ chart2/source/controller/dialogs/dlg_InsertTitle.src \
+ chart2/source/controller/dialogs/dlg_InsertTrendline.src \
+ chart2/source/controller/dialogs/dlg_ObjectProperties.src \
+ chart2/source/controller/dialogs/dlg_ShapeFont.src \
+ chart2/source/controller/dialogs/dlg_ShapeParagraph.src \
+ chart2/source/controller/dialogs/dlg_View3D.src \
+ chart2/source/controller/dialogs/res_BarGeometry.src \
+ chart2/source/controller/dialogs/res_TextSeparator.src \
+ chart2/source/controller/dialogs/Strings_AdditionalControls.src \
+ chart2/source/controller/dialogs/Strings_ChartTypes.src \
+ chart2/source/controller/dialogs/Strings_Scale.src \
+ chart2/source/controller/dialogs/Strings.src \
+ chart2/source/controller/dialogs/Strings_Statistic.src \
+ chart2/source/controller/dialogs/tp_3D_SceneAppearance.src \
+ chart2/source/controller/dialogs/tp_3D_SceneGeometry.src \
+ chart2/source/controller/dialogs/tp_3D_SceneIllumination.src \
+ chart2/source/controller/dialogs/tp_AxisLabel.src \
+ chart2/source/controller/dialogs/tp_AxisPositions.src \
+ chart2/source/controller/dialogs/tp_ChartType.src \
+ chart2/source/controller/dialogs/tp_DataLabel.src \
+ chart2/source/controller/dialogs/tp_DataSource.src \
+ chart2/source/controller/dialogs/tp_ErrorBars.src \
+ chart2/source/controller/dialogs/tp_LegendPosition.src \
+ chart2/source/controller/dialogs/tp_PointGeometry.src \
+ chart2/source/controller/dialogs/tp_PolarOptions.src \
+ chart2/source/controller/dialogs/tp_RangeChooser.src \
+ chart2/source/controller/dialogs/tp_Scale.src \
+ chart2/source/controller/dialogs/tp_SeriesToAxis.src \
+ chart2/source/controller/dialogs/tp_TitleRotation.src \
+ chart2/source/controller/dialogs/tp_Trendline.src \
+ chart2/source/controller/dialogs/tp_Wizard_TitlesAndObjects.src \
+ chart2/source/controller/menus/ShapeContextMenu.src \
+ chart2/source/controller/menus/ShapeEditContextMenu.src \
+))
+
+chart2_HrcPartTarget__get_target = $(subst _tmpl,,$(notdir $(1)))
+
+define chart2_HrcPartTarget_get_target
+$(call chart2_HrcTarget__get_inc_dir,$(1))/$(call chart2_HrcPartTarget__get_target,$(1))
+endef
+
+define chart2_HrcPartTarget_HrcPartTarget
+ifeq ($(strip $(WITH_LANG)),)
+$(call chart2_HrcPartTarget_get_target,$(1)) : $(SRCDIR)/$(1)
+ mkdir -p $$(dir $$@) && cp $$< $$@
+else
+$(call chart2_HrcPartTarget_get_target,$(1)) :| $(gb_SrsPartMergeTarget_TRANSEXTARGET)
+$(call chart2_HrcPartTarget_get_target,$(1)) : $$(SDF)
+$(call chart2_HrcPartTarget_get_target,$(1)) : $(SRCDIR)/$(1)
+ $$(call gb_SrsPartMergeTarget__command,$$@,$(1),$$<)
+endif
+endef
+
+define chart2_HrcPartTarget_create_src_dep
+$(call gb_SrsPartTarget_get_target,$(2)) : $(call chart2_HrcPartTarget_get_target,$(1))
+endef
+
+define chart2_HrcPartTarget_create_src_deps
+$(foreach src,$(2),$(eval $(call chart2_HrcPartTarget_create_src_dep,$(1),$(src))))
+endef
+
+chart2_HrcTarget__TARGET_DIR = $(WORKDIR)/chart2
+
+chart2_HrcTarget__get_merged_target = $(chart2_HrcTarget__TARGET_DIR)/merged
+chart2_HrcTarget__get_unmerged_target = $(chart2_HrcTarget__TARGET_DIR)/unmerged
+
+ifeq ($(strip $(WITH_LANG)),)
+chart2_HrcTarget_get_target = $(call chart2_HrcTarget__get_unmerged_target,$(1))
+chart2_HrcTarget__get_update_target = $(call chart2_HrcTarget__get_merged_target,$(1))
+else
+chart2_HrcTarget_get_target = $(call chart2_HrcTarget__get_merged_target,$(1))
+chart2_HrcTarget__get_update_target = $(call chart2_HrcTarget__get_unmerged_target,$(1))
+endif
+
+chart2_HrcTarget__get_inc_dir = $(chart2_HrcTarget__TARGET_DIR)/inc
+
+chart2_HrcTarget_get_clean_target = $(WORKDIR)/Clean/chart2/$(1)
+
+define chart2_HrcTarget_HrcTarget
+$(call chart2_HrcTarget_get_target,$(1)) : PARTS :=
+$(call chart2_HrcTarget_get_clean_target,$(1)) : PARTS :=
+$(call chart2_HrcTarget_get_target,$(1)) : $(call chart2_HrcTarget__get_update_target,$(1))
+ mkdir -p $$(dir $$@) && touch $$@
+$(call chart2_HrcTarget__get_update_target,$(1)) : $(gb_Helper_DUMMY)
+ mkdir -p $$(dir $$@) && touch $$@
+endef
+
+$(call chart2_HrcTarget_get_clean_target,%) : $(gb_Helper_DUMMY)
+ $(call gb_Output_announce,$*,$(false),HRC,4)
+ rm -f $(foreach part,$(PARTS),$(call chart2_HrcPartTarget_get_target,$(part))) \
+ $(call chart2_HrcTarget__get_merged_target,$@) \
+ $(call chart2_HrcTarget__get_unmerged_target,$@)
+
+define chart2_HrcTarget_add_file
+$(call chart2_HrcPartTarget_HrcPartTarget,$(2))
+$(call chart2_HrcTarget_get_target,$(1)) : PARTS += $(2)
+$(call chart2_HrcTarget_get_clean_target,$(1)) : PARTS += $(2)
+$(call chart2_HrcTarget_get_target,$(1)) : $(call chart2_HrcPartTarget_get_target,$(2))
+$(call chart2_HrcPartTarget_get_target,$(2)) : $(call chart2_HrcTarget__get_update_target,$(1))
+ifneq ($(strip $(WITH_LANG)),)
+$(call chart2_HrcPartTarget_get_target,$(2)) : SDF := $(gb_SrsPartMergeTarget_SDFLOCATION)$(dir $(2))localize.sdf
+endif
+endef
+
+define chart2_HrcTarget_add_files
+$(foreach file,$(2),$(eval $(call chart2_HrcTarget_add_file,$(1),$(file))))
+endef
+
+define chart2_HrcTarget_register
+$(call gb_SrsTarget_get_target,$(2)) :| $(call chart2_HrcTarget_get_target,$(1))
+$(call gb_SrsTarget_get_clean_target,$(2)) : $(call chart2_HrcTarget_get_clean_target,$(1))
+endef
+
+$(eval $(call chart2_HrcTarget_HrcTarget,chart2_hrc))
+
+$(eval $(call chart2_HrcTarget_register,chart2_hrc,chart2/res))
+
+$(eval $(call chart2_HrcTarget_add_files,chart2_hrc,\
+ chart2/source/controller/dialogs/res_DataLabel_tmpl.hrc \
+ chart2/source/controller/dialogs/res_ErrorBar_tmpl.hrc \
+ chart2/source/controller/dialogs/res_LegendPosition_tmpl.hrc \
+ chart2/source/controller/dialogs/res_SecondaryAxisCheckBoxes_tmpl.hrc \
+ chart2/source/controller/dialogs/res_Titlesx_tmpl.hrc \
+ chart2/source/controller/dialogs/res_Trendline_tmpl.hrc \
+))
+
+$(eval $(call chart2_HrcPartTarget_create_src_deps,\
+ chart2/source/controller/dialogs/res_DataLabel_tmpl.hrc,\
+ chart2/source/controller/dialogs/dlg_InsertDataLabel.src \
+ chart2/source/controller/dialogs/tp_DataLabel.src \
+))
+
+$(eval $(call chart2_HrcPartTarget_create_src_deps,\
+ chart2/source/controller/dialogs/res_ErrorBar_tmpl.hrc,\
+ chart2/source/controller/dialogs/dlg_InsertErrorBars.src \
+ chart2/source/controller/dialogs/tp_ErrorBars.src \
+))
+
+$(eval $(call chart2_HrcPartTarget_create_src_deps,\
+ chart2/source/controller/dialogs/res_LegendPosition_tmpl.hrc,\
+ chart2/source/controller/dialogs/dlg_InsertLegend.src \
+ chart2/source/controller/dialogs/tp_LegendPosition.src \
+ chart2/source/controller/dialogs/tp_Wizard_TitlesAndObjects.src \
+))
+
+$(eval $(call chart2_HrcPartTarget_create_src_deps,\
+ chart2/source/controller/dialogs/res_SecondaryAxisCheckBoxes_tmpl.hrc,\
+ chart2/source/controller/dialogs/dlg_InsertAxis_Grid.src \
+ chart2/source/controller/dialogs/tp_Wizard_TitlesAndObjects.src \
+))
+
+$(eval $(call chart2_HrcPartTarget_create_src_deps,\
+ chart2/source/controller/dialogs/res_Titlesx_tmpl.hrc,\
+ chart2/source/controller/dialogs/dlg_InsertTitle.src \
+ chart2/source/controller/dialogs/tp_Wizard_TitlesAndObjects.src \
+))
+
+$(eval $(call chart2_HrcPartTarget_create_src_deps,\
+ chart2/source/controller/dialogs/res_Trendline_tmpl.hrc,\
+ chart2/source/controller/dialogs/dlg_InsertTrendline.src \
+ chart2/source/controller/dialogs/tp_Trendline.src \
+))
+
+# vim: set noet ts=4 sw=4:
diff --git a/chart2/Library_chartcontroller.mk b/chart2/Library_chartcontroller.mk
new file mode 100644
index 0000000..b717c2d
--- /dev/null
+++ b/chart2/Library_chartcontroller.mk
@@ -0,0 +1,220 @@
+# Version: MPL 1.1 / GPLv3+ / LGPLv3+
+#
+# The contents of this file are subject to the Mozilla Public License Version
+# 1.1 (the "License"); you may not use this file except in compliance with
+# the License or as specified alternatively below. You may obtain a copy of
+# the License at http://www.mozilla.org/MPL/
+#
+# Software distributed under the License is distributed on an "AS IS" basis,
+# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+# for the specific language governing rights and limitations under the
+# License.
+#
+# The Initial Developer of the Original Code is
+# David Tardon, Red Hat Inc. <dtardon at redhat.com>
+# Portions created by the Initial Developer are Copyright (C) 2010 the
+# Initial Developer. All Rights Reserved.
+#
+# Major Contributor(s):
+#
+# For minor contributions see the git repository.
+#
+# Alternatively, the contents of this file may be used under the terms of
+# either the GNU General Public License Version 3 or later (the "GPLv3+"), or
+# the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
+# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
+# instead of those above.
+
+$(eval $(call gb_Library_Library,chartcontroller))
+
+$(eval $(call gb_Library_add_precompiled_header,chartcontroller,$(SRCDIR)/chart2/inc/pch/precompiled_chart2))
+
+$(eval $(call gb_Library_set_include,chartcontroller,\
+ $$(INCLUDE) \
+ -I$(realpath $(SRCDIR)/chart2/inc/pch) \
+ -I$(realpath $(SRCDIR)/chart2/source/controller/inc) \
+ -I$(realpath $(SRCDIR)/chart2/source/inc) \
+ -I$(OUTDIR)/inc \
+ -I$(OUTDIR)/inc/offuh \
+))
+
+# TODO: is this still necessary?
+# (from chart2/source/controller/dialogs/makefile.mk)
+# # i26518 the gcc-3.0.4 requires to enhance the template-depth
+# # this seems to be a compiler issue, so we recommend not to use 3.0.x anymore
+# .IF "$(COM)"=="GCC"
+# CFLAGS+=-ftemplate-depth-128
+# .ENDIF
+
+$(eval $(call gb_Library_add_linked_libs,chartcontroller,\
+ basegfx \
+ charttools \
+ chartview \
+ comphelper \
+ cppu \
+ cppuhelper \
+ drawinglayer \
+ editeng \
+ sal \
+ sfx \
+ sot \
+ svl \
+ svt \
+ svxcore \
+ svx \
+ tk \
+ tl \
+ ucbhelper \
+ utl \
+ vcl \
+ $(gb_STDLIBS) \
+))
+
+$(eval $(call gb_Library_set_componentfile,chartcontroller,chart2/source/controller/chartcontroller))
+
+$(eval $(call gb_Library_add_exception_objects,chartcontroller,\
+ chart2/source/controller/accessibility/AccessibleBase \
+ chart2/source/controller/accessibility/AccessibleChartElement \
+ chart2/source/controller/accessibility/AccessibleChartShape \
+ chart2/source/controller/accessibility/AccessibleChartView \
+ chart2/source/controller/accessibility/AccessibleTextHelper \
+ chart2/source/controller/accessibility/AccessibleViewForwarder \
+ chart2/source/controller/accessibility/ChartElementFactory \
+ chart2/source/controller/chartapiwrapper/AreaWrapper \
+ chart2/source/controller/chartapiwrapper/AxisWrapper \
+ chart2/source/controller/chartapiwrapper/Chart2ModelContact \
+ chart2/source/controller/chartapiwrapper/ChartDataWrapper \
+ chart2/source/controller/chartapiwrapper/ChartDocumentWrapper \
+ chart2/source/controller/chartapiwrapper/DataSeriesPointWrapper \
+ chart2/source/controller/chartapiwrapper/DiagramWrapper \
+ chart2/source/controller/chartapiwrapper/GridWrapper \
+ chart2/source/controller/chartapiwrapper/LegendWrapper \
+ chart2/source/controller/chartapiwrapper/MinMaxLineWrapper \
+ chart2/source/controller/chartapiwrapper/TitleWrapper \
+ chart2/source/controller/chartapiwrapper/UpDownBarWrapper \
+ chart2/source/controller/chartapiwrapper/WallFloorWrapper \
+ chart2/source/controller/chartapiwrapper/WrappedAddInProperty \
+ chart2/source/controller/chartapiwrapper/WrappedAutomaticPositionProperties \
+ chart2/source/controller/chartapiwrapper/WrappedAxisAndGridExistenceProperties \
+ chart2/source/controller/chartapiwrapper/WrappedCharacterHeightProperty \
+ chart2/source/controller/chartapiwrapper/WrappedDataCaptionProperties \
+ chart2/source/controller/chartapiwrapper/WrappedGapwidthProperty \
+ chart2/source/controller/chartapiwrapper/WrappedNumberFormatProperty \
+ chart2/source/controller/chartapiwrapper/WrappedScaleProperty \
+ chart2/source/controller/chartapiwrapper/WrappedScaleTextProperties \
+ chart2/source/controller/chartapiwrapper/WrappedSceneProperty \
+ chart2/source/controller/chartapiwrapper/WrappedSeriesAreaOrLineProperty \
+ chart2/source/controller/chartapiwrapper/WrappedSplineProperties \
+ chart2/source/controller/chartapiwrapper/WrappedStatisticProperties \
+ chart2/source/controller/chartapiwrapper/WrappedStockProperties \
+ chart2/source/controller/chartapiwrapper/WrappedSymbolProperties \
+ chart2/source/controller/chartapiwrapper/WrappedTextRotationProperty \
+ chart2/source/controller/dialogs/ChangingResource \
+ chart2/source/controller/dialogs/ChartTypeDialogController \
+ chart2/source/controller/dialogs/DataBrowser \
+ chart2/source/controller/dialogs/DataBrowserModel \
+ chart2/source/controller/dialogs/DialogModel \
+ chart2/source/controller/dialogs/dlg_ChartType \
+ chart2/source/controller/dialogs/dlg_ChartType_UNO \
+ chart2/source/controller/dialogs/dlg_CreationWizard \
+ chart2/source/controller/dialogs/dlg_CreationWizard_UNO \
+ chart2/source/controller/dialogs/dlg_DataEditor \
+ chart2/source/controller/dialogs/dlg_DataSource \
+ chart2/source/controller/dialogs/dlg_InsertAxis_Grid \
+ chart2/source/controller/dialogs/dlg_InsertDataLabel \
+ chart2/source/controller/dialogs/dlg_InsertErrorBars \
+ chart2/source/controller/dialogs/dlg_InsertLegend \
+ chart2/source/controller/dialogs/dlg_InsertTitle \
+ chart2/source/controller/dialogs/dlg_InsertTrendline \
+ chart2/source/controller/dialogs/dlg_NumberFormat \
+ chart2/source/controller/dialogs/dlg_ObjectProperties \
+ chart2/source/controller/dialogs/dlg_ShapeFont \
+ chart2/source/controller/dialogs/dlg_ShapeParagraph \
+ chart2/source/controller/dialogs/dlg_View3D \
+ chart2/source/controller/dialogs/ObjectNameProvider \
+ chart2/source/controller/dialogs/RangeEdit \
+ chart2/source/controller/dialogs/RangeSelectionButton \
+ chart2/source/controller/dialogs/RangeSelectionHelper \
+ chart2/source/controller/dialogs/RangeSelectionListener \
+ chart2/source/controller/dialogs/res_BarGeometry \
+ chart2/source/controller/dialogs/res_DataLabel \
+ chart2/source/controller/dialogs/res_ErrorBar \
+ chart2/source/controller/dialogs/res_LegendPosition \
+ chart2/source/controller/dialogs/res_TextSeparator \
+ chart2/source/controller/dialogs/res_Titles \
+ chart2/source/controller/dialogs/res_Trendline \
+ chart2/source/controller/dialogs/TextDirectionListBox \
+ chart2/source/controller/dialogs/TimerTriggeredControllerLock \
+ chart2/source/controller/dialogs/TitleDialogData \
+ chart2/source/controller/dialogs/tp_3D_SceneAppearance \
+ chart2/source/controller/dialogs/tp_3D_SceneGeometry \
+ chart2/source/controller/dialogs/tp_3D_SceneIllumination \
+ chart2/source/controller/dialogs/tp_AxisLabel \
+ chart2/source/controller/dialogs/tp_AxisPositions \
+ chart2/source/controller/dialogs/tp_ChartType \
+ chart2/source/controller/dialogs/tp_DataLabel \
+ chart2/source/controller/dialogs/tp_DataSourceControls \
+ chart2/source/controller/dialogs/tp_DataSource \
+ chart2/source/controller/dialogs/tp_ErrorBars \
+ chart2/source/controller/dialogs/tp_LegendPosition \
+ chart2/source/controller/dialogs/tp_PointGeometry \
+ chart2/source/controller/dialogs/tp_PolarOptions \
+ chart2/source/controller/dialogs/tp_RangeChooser \
+ chart2/source/controller/dialogs/tp_Scale \
+ chart2/source/controller/dialogs/tp_SeriesToAxis \
+ chart2/source/controller/dialogs/tp_TitleRotation \
+ chart2/source/controller/dialogs/tp_Trendline \
+ chart2/source/controller/dialogs/tp_Wizard_TitlesAndObjects \
+ chart2/source/controller/drawinglayer/DrawViewWrapper \
+ chart2/source/controller/drawinglayer/ViewElementListProvider \
+ chart2/source/controller/itemsetwrapper/AxisItemConverter \
+ chart2/source/controller/itemsetwrapper/CharacterPropertyItemConverter \
+ chart2/source/controller/itemsetwrapper/DataPointItemConverter \
+ chart2/source/controller/itemsetwrapper/ErrorBarItemConverter \
+ chart2/source/controller/itemsetwrapper/GraphicPropertyItemConverter \
+ chart2/source/controller/itemsetwrapper/ItemConverter \
+ chart2/source/controller/itemsetwrapper/LegendItemConverter \
+ chart2/source/controller/itemsetwrapper/MultipleChartConverters \
+ chart2/source/controller/itemsetwrapper/MultipleItemConverter \
+ chart2/source/controller/itemsetwrapper/RegressionCurveItemConverter \
+ chart2/source/controller/itemsetwrapper/RegressionEquationItemConverter \
+ chart2/source/controller/itemsetwrapper/SeriesOptionsItemConverter \
+ chart2/source/controller/itemsetwrapper/StatisticsItemConverter \
+ chart2/source/controller/itemsetwrapper/TitleItemConverter \
+ chart2/source/controller/main/ChartController \
+ chart2/source/controller/main/ChartController_EditData \
+ chart2/source/controller/main/ChartController_Insert \
+ chart2/source/controller/main/ChartController_Position \
+ chart2/source/controller/main/ChartController_Properties \
+ chart2/source/controller/main/ChartController_TextEdit \
+ chart2/source/controller/main/ChartController_Tools \
+ chart2/source/controller/main/ChartController_Window \
+ chart2/source/controller/main/ChartDropTargetHelper \
+ chart2/source/controller/main/ChartFrameloader \
+ chart2/source/controller/main/ChartModelClone \
+ chart2/source/controller/main/ChartRenderer \
+ chart2/source/controller/main/ChartTransferable \
+ chart2/source/controller/main/ChartWindow \
+ chart2/source/controller/main/CommandDispatchContainer \
+ chart2/source/controller/main/CommandDispatch \
+ chart2/source/controller/main/ConfigurationAccess \
+ chart2/source/controller/main/ControllerCommandDispatch \
+ chart2/source/controller/main/DragMethod_Base \
+ chart2/source/controller/main/DragMethod_PieSegment \
+ chart2/source/controller/main/DragMethod_RotateDiagram \
+ chart2/source/controller/main/DrawCommandDispatch \
+ chart2/source/controller/main/ElementSelector \
+ chart2/source/controller/main/FeatureCommandDispatchBase \
+ chart2/source/controller/main/ObjectHierarchy \
+ chart2/source/controller/main/PositionAndSizeHelper \
+ chart2/source/controller/main/SelectionHelper \
+ chart2/source/controller/main/_serviceregistration_controller \
+ chart2/source/controller/main/ShapeController \
+ chart2/source/controller/main/ShapeToolbarController \
+ chart2/source/controller/main/StatusBarCommandDispatch \
+ chart2/source/controller/main/UndoActions \
+ chart2/source/controller/main/UndoCommandDispatch \
+ chart2/source/controller/main/UndoGuard \
+))
+
+# vim: set noet ts=4 sw=4:
diff --git a/chart2/Library_chartmodel.mk b/chart2/Library_chartmodel.mk
new file mode 100644
index 0000000..cf25873
--- /dev/null
+++ b/chart2/Library_chartmodel.mk
@@ -0,0 +1,118 @@
+# Version: MPL 1.1 / GPLv3+ / LGPLv3+
+#
+# The contents of this file are subject to the Mozilla Public License Version
+# 1.1 (the "License"); you may not use this file except in compliance with
+# the License or as specified alternatively below. You may obtain a copy of
+# the License at http://www.mozilla.org/MPL/
+#
+# Software distributed under the License is distributed on an "AS IS" basis,
+# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+# for the specific language governing rights and limitations under the
+# License.
+#
+# The Initial Developer of the Original Code is
+# David Tardon, Red Hat Inc. <dtardon at redhat.com>
+# Portions created by the Initial Developer are Copyright (C) 2010 the
+# Initial Developer. All Rights Reserved.
+#
+# Major Contributor(s):
+#
+# For minor contributions see the git repository.
+#
+# Alternatively, the contents of this file may be used under the terms of
+# either the GNU General Public License Version 3 or later (the "GPLv3+"), or
+# the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
+# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
+# instead of those above.
+
+$(eval $(call gb_Library_Library,chartmodel))
+
+$(eval $(call gb_Library_add_precompiled_header,chartmodel,$(SRCDIR)/chart2/inc/pch/precompiled_chart2))
+
+$(eval $(call gb_Library_set_include,chartmodel,\
+ $$(INCLUDE) \
+ -I$(realpath $(SRCDIR)/chart2/inc/pch) \
+ -I$(realpath $(SRCDIR)/chart2/source/model/inc) \
+ -I$(realpath $(SRCDIR)/chart2/source/inc) \
+ -I$(OUTDIR)/inc \
+ -I$(OUTDIR)/inc/offuh \
+))
+
+# TODO: is this still necessary?
+# (from chart2/source/model/template/makefile.mk)
+# # i26518 the gcc-3.0.4 requires to enhance the template-depth
+# # this seems to be a compiler issue, so we recommend not to use 3.0.x anymore
+# .IF "$(COM)"=="GCC"
+# CFLAGS+=-ftemplate-depth-128
+# .ENDIF
+
+$(eval $(call gb_Library_add_linked_libs,chartmodel,\
+ charttools \
+ comphelper \
+ cppu \
+ cppuhelper \
+ fwe \
+ sal \
+ svl \
+ svt \
+ ucbhelper \
+ utl \
+ vcl \
+ $(gb_STDLIBS) \
+))
+
+$(eval $(call gb_Library_set_componentfile,chartmodel,chart2/source/model/chartmodel))
+
+$(eval $(call gb_Library_add_exception_objects,chartmodel,\
+ chart2/source/model/filter/XMLFilter \
+ chart2/source/model/main/Axis \
+ chart2/source/model/main/BaseCoordinateSystem \
+ chart2/source/model/main/CartesianCoordinateSystem \
+ chart2/source/model/main/ChartModel \
+ chart2/source/model/main/ChartModel_Persistence \
+ chart2/source/model/main/DataPoint \
+ chart2/source/model/main/DataPointProperties \
+ chart2/source/model/main/DataSeries \
+ chart2/source/model/main/DataSeriesProperties \
+ chart2/source/model/main/Diagram \
+ chart2/source/model/main/FormattedString \
+ chart2/source/model/main/GridProperties \
+ chart2/source/model/main/Legend \
+ chart2/source/model/main/PageBackground \
+ chart2/source/model/main/PolarCoordinateSystem \
+ chart2/source/model/main/_serviceregistration_model \
+ chart2/source/model/main/StockBar \
+ chart2/source/model/main/Title \
+ chart2/source/model/main/UndoManager \
+ chart2/source/model/main/Wall \
+ chart2/source/model/template/AreaChartType \
+ chart2/source/model/template/AreaChartTypeTemplate \
+ chart2/source/model/template/BarChartType \
+ chart2/source/model/template/BarChartTypeTemplate \
+ chart2/source/model/template/BubbleChartType \
+ chart2/source/model/template/BubbleChartTypeTemplate \
+ chart2/source/model/template/BubbleDataInterpreter \
+ chart2/source/model/template/CandleStickChartType \
+ chart2/source/model/template/ChartType \
+ chart2/source/model/template/ChartTypeManager \
+ chart2/source/model/template/ChartTypeTemplate \
+ chart2/source/model/template/ColumnChartType \
+ chart2/source/model/template/ColumnLineChartTypeTemplate \
+ chart2/source/model/template/ColumnLineDataInterpreter \
+ chart2/source/model/template/DataInterpreter \
+ chart2/source/model/template/FilledNetChartType \
+ chart2/source/model/template/LineChartType \
+ chart2/source/model/template/LineChartTypeTemplate \
+ chart2/source/model/template/NetChartType \
+ chart2/source/model/template/NetChartTypeTemplate \
+ chart2/source/model/template/PieChartType \
+ chart2/source/model/template/PieChartTypeTemplate \
+ chart2/source/model/template/ScatterChartType \
+ chart2/source/model/template/ScatterChartTypeTemplate \
+ chart2/source/model/template/_serviceregistration_charttypes \
+ chart2/source/model/template/StockChartTypeTemplate \
+ chart2/source/model/template/StockDataInterpreter \
+ chart2/source/model/template/XYDataInterpreter \
+))
+
+# vim: set noet ts=4 sw=4:
diff --git a/chart2/Library_charttools.mk b/chart2/Library_charttools.mk
new file mode 100644
index 0000000..2bf40ca
--- /dev/null
+++ b/chart2/Library_charttools.mk
@@ -0,0 +1,131 @@
+# Version: MPL 1.1 / GPLv3+ / LGPLv3+
+#
+# The contents of this file are subject to the Mozilla Public License Version
+# 1.1 (the "License"); you may not use this file except in compliance with
+# the License or as specified alternatively below. You may obtain a copy of
+# the License at http://www.mozilla.org/MPL/
+#
+# Software distributed under the License is distributed on an "AS IS" basis,
+# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+# for the specific language governing rights and limitations under the
+# License.
+#
+# The Initial Developer of the Original Code is
+# David Tardon, Red Hat Inc. <dtardon at redhat.com>
+# Portions created by the Initial Developer are Copyright (C) 2010 the
+# Initial Developer. All Rights Reserved.
+#
+# Major Contributor(s):
+#
+# For minor contributions see the git repository.
+#
+# Alternatively, the contents of this file may be used under the terms of
+# either the GNU General Public License Version 3 or later (the "GPLv3+"), or
+# the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
+# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
+# instead of those above.
+
+$(eval $(call gb_Library_Library,charttools))
+
+$(eval $(call gb_Library_add_precompiled_header,charttools,$(SRCDIR)/chart2/inc/pch/precompiled_chart2))
+
+$(eval $(call gb_Library_set_include,charttools,\
+ $$(INCLUDE) \
+ -I$(realpath $(SRCDIR)/chart2/inc/pch) \
+ -I$(realpath $(SRCDIR)/chart2/source/inc) \
+ -I$(OUTDIR)/inc \
+ -I$(OUTDIR)/inc/offuh \
+))
+
+$(eval $(call gb_Library_set_defs,charttools,\
+ $$(DEFS) \
+ -DOOO_DLLIMPLEMENTATION_CHARTTOOLS \
+))
+
+$(eval $(call gb_Library_add_linked_libs,charttools,\
+ basegfx \
+ comphelper \
+ cppu \
+ cppuhelper \
+ i18nisolang1 \
+ sal \
+ svl \
+ tl \
+ utl \
+ vcl \
+ $(gb_STDLIBS) \
+))
+
+$(eval $(call gb_Library_set_componentfile,charttools,chart2/source/tools/charttools))
+
+$(eval $(call gb_Library_add_exception_objects,charttools,\
+ chart2/source/tools/AxisHelper \
+ chart2/source/tools/BaseGFXHelper \
+ chart2/source/tools/CachedDataSequence \
+ chart2/source/tools/CharacterProperties \
+ chart2/source/tools/ChartDebugTrace \
+ chart2/source/tools/ChartModelHelper \
+ chart2/source/tools/ChartTypeHelper \
+ chart2/source/tools/ChartViewHelper \
+ chart2/source/tools/ColorPerPointHelper \
+ chart2/source/tools/CommonConverters \
+ chart2/source/tools/ConfigColorScheme \
+ chart2/source/tools/ControllerLockGuard \
+ chart2/source/tools/DataSeriesHelper \
+ chart2/source/tools/DataSource \
+ chart2/source/tools/DataSourceHelper \
+ chart2/source/tools/DiagramHelper \
+ chart2/source/tools/ErrorBar \
+ chart2/source/tools/ExplicitCategoriesProvider \
+ chart2/source/tools/ExponentialRegressionCurveCalculator \
+ chart2/source/tools/FillProperties \
+ chart2/source/tools/FormattedStringHelper \
+ chart2/source/tools/ImplOPropertySet \
+ chart2/source/tools/InternalData \
+ chart2/source/tools/InternalDataProvider \
+ chart2/source/tools/LabeledDataSequence \
+ chart2/source/tools/LegendHelper \
+ chart2/source/tools/LifeTime \
+ chart2/source/tools/LinearRegressionCurveCalculator \
+ chart2/source/tools/LineProperties \
+ chart2/source/tools/LogarithmicRegressionCurveCalculator \
+ chart2/source/tools/MeanValueRegressionCurveCalculator \
+ chart2/source/tools/MediaDescriptorHelper \
+ chart2/source/tools/ModifyListenerCallBack \
+ chart2/source/tools/ModifyListenerHelper \
+ chart2/source/tools/MutexContainer \
+ chart2/source/tools/NameContainer \
+ chart2/source/tools/NumberFormatterWrapper \
+ chart2/source/tools/ObjectIdentifier \
+ chart2/source/tools/OPropertySet \
+ chart2/source/tools/PotentialRegressionCurveCalculator \
+ chart2/source/tools/PropertyHelper \
+ chart2/source/tools/RangeHighlighter \
+ chart2/source/tools/ReferenceSizeProvider \
+ chart2/source/tools/RegressionCurveCalculator \
+ chart2/source/tools/RegressionCurveHelper \
+ chart2/source/tools/RegressionCurveModel \
+ chart2/source/tools/RegressionEquation \
+ chart2/source/tools/RelativePositionHelper \
+ chart2/source/tools/RelativeSizeHelper \
+ chart2/source/tools/ResId \
+ chart2/source/tools/RessourceManager \
+ chart2/source/tools/Scaling \
+ chart2/source/tools/SceneProperties \
+ chart2/source/tools/_serviceregistration_tools \
+ chart2/source/tools/StatisticsHelper \
+ chart2/source/tools/ThreeDHelper \
+ chart2/source/tools/TitleHelper \
+ chart2/source/tools/TrueGuard \
+ chart2/source/tools/UncachedDataSequence \
+ chart2/source/tools/UserDefinedProperties \
+ chart2/source/tools/WeakListenerAdapter \
+ chart2/source/tools/WrappedDefaultProperty \
+ chart2/source/tools/WrappedDirectStateProperty \
+ chart2/source/tools/WrappedIgnoreProperty \
+ chart2/source/tools/WrappedProperty \
+ chart2/source/tools/WrappedPropertySet \
+ chart2/source/tools/XMLRangeHelper \
+))
+
+# vim: set noet ts=4 sw=4:
diff --git a/chart2/Library_chartview.mk b/chart2/Library_chartview.mk
new file mode 100644
index 0000000..802a13d
--- /dev/null
+++ b/chart2/Library_chartview.mk
@@ -0,0 +1,118 @@
+# Version: MPL 1.1 / GPLv3+ / LGPLv3+
+#
+# The contents of this file are subject to the Mozilla Public License Version
+# 1.1 (the "License"); you may not use this file except in compliance with
+# the License or as specified alternatively below. You may obtain a copy of
+# the License at http://www.mozilla.org/MPL/
+#
+# Software distributed under the License is distributed on an "AS IS" basis,
+# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+# for the specific language governing rights and limitations under the
+# License.
+#
+# The Initial Developer of the Original Code is
+# David Tardon, Red Hat Inc. <dtardon at redhat.com>
+# Portions created by the Initial Developer are Copyright (C) 2010 the
+# Initial Developer. All Rights Reserved.
+#
+# Major Contributor(s):
+#
+# For minor contributions see the git repository.
+#
+# Alternatively, the contents of this file may be used under the terms of
+# either the GNU General Public License Version 3 or later (the "GPLv3+"), or
+# the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
+# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
+# instead of those above.
+
+$(eval $(call gb_Library_Library,chartview))
+
+$(eval $(call gb_Library_add_precompiled_header,chartview,$(SRCDIR)/chart2/inc/pch/precompiled_chart2))
+
+$(eval $(call gb_Library_set_include,chartview,\
+ $$(INCLUDE) \
+ -I$(realpath $(SRCDIR)/chart2/inc/pch) \
+ -I$(realpath $(SRCDIR)/chart2/source/view/inc) \
+ -I$(realpath $(SRCDIR)/chart2/source/inc) \
+ -I$(OUTDIR)/inc \
+ -I$(OUTDIR)/inc/offuh \
+))
+
+$(eval $(call gb_Library_set_defs,chartview,\
+ $$(DEFS) \
+ -DOOO_DLLIMPLEMENTATION_CHARTVIEW \
+))
+
+$(eval $(call gb_Library_add_linked_libs,chartview,\
+ basegfx \
+ charttools \
+ comphelper \
+ cppu \
+ cppuhelper \
+ editeng \
+ sal \
+ sfx \
+ svl \
+ svt \
+ svxcore \
+ tl \
+ utl \
+ vcl \
+ $(gb_STDLIBS) \
+))
+
+$(eval $(call gb_Library_set_componentfile,chartview,chart2/source/view/chartview))
+
+$(eval $(call gb_Library_add_exception_objects,chartview,\
+ chart2/source/view/axes/DateHelper \
+ chart2/source/view/axes/DateScaling \
+ chart2/source/view/axes/MinimumAndMaximumSupplier \
+ chart2/source/view/axes/ScaleAutomatism \
+ chart2/source/view/axes/Tickmarks \
+ chart2/source/view/axes/Tickmarks_Dates \
+ chart2/source/view/axes/Tickmarks_Equidistant \
+ chart2/source/view/axes/VAxisBase \
+ chart2/source/view/axes/VAxisOrGridBase \
+ chart2/source/view/axes/VAxisProperties \
+ chart2/source/view/axes/VCartesianAxis \
+ chart2/source/view/axes/VCartesianCoordinateSystem \
+ chart2/source/view/axes/VCartesianGrid \
+ chart2/source/view/axes/VCoordinateSystem \
+ chart2/source/view/axes/VPolarAngleAxis \
+ chart2/source/view/axes/VPolarAxis \
+ chart2/source/view/axes/VPolarCoordinateSystem \
+ chart2/source/view/axes/VPolarGrid \
+ chart2/source/view/axes/VPolarRadiusAxis \
+ chart2/source/view/charttypes/AreaChart \
+ chart2/source/view/charttypes/BarChart \
+ chart2/source/view/charttypes/BarPositionHelper \
+ chart2/source/view/charttypes/BubbleChart \
+ chart2/source/view/charttypes/CandleStickChart \
+ chart2/source/view/charttypes/CategoryPositionHelper \
+ chart2/source/view/charttypes/PieChart \
... etc. - the rest is truncated
More information about the Libreoffice-commits
mailing list