summaryrefslogtreecommitdiff
path: root/sc/source
diff options
context:
space:
mode:
authorRüdiger Timm <rt@openoffice.org>2007-04-25 15:02:54 +0000
committerRüdiger Timm <rt@openoffice.org>2007-04-25 15:02:54 +0000
commit85a1dd45aafa06efd7a81d25a09c31845fc1f95f (patch)
tree3bdcc53331c5fd5db7e8ef46ee94b1ef6486a4e6 /sc/source
parentb33df0e356f36c799147bd116f17778cc2e7141a (diff)
INTEGRATION: CWS npower6 (1.1.2); FILE ADDED
2007/02/21 17:29:17 npower 1.1.2.2: #i74096 add license 2007/02/07 21:17:49 npower 1.1.2.1: #i74096# add compatibility api implementation
Diffstat (limited to 'sc/source')
-rw-r--r--sc/source/ui/vba/vbachart.hxx57
-rw-r--r--sc/source/ui/vba/vbachartobject.cxx108
-rw-r--r--sc/source/ui/vba/vbachartobject.hxx58
3 files changed, 223 insertions, 0 deletions
diff --git a/sc/source/ui/vba/vbachart.hxx b/sc/source/ui/vba/vbachart.hxx
new file mode 100644
index 000000000000..58964ead90ff
--- /dev/null
+++ b/sc/source/ui/vba/vbachart.hxx
@@ -0,0 +1,57 @@
+/*************************************************************************
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * $RCSfile: vbachart.hxx,v $
+ *
+ * $Revision: 1.2 $
+ *
+ * last change: $Author: rt $ $Date: 2007-04-25 16:02:31 $
+ *
+ * The Contents of this file are made available subject to
+ * the terms of GNU Lesser General Public License Version 2.1.
+ *
+ *
+ * GNU Lesser General Public License Version 2.1
+ * =============================================
+ * Copyright 2005 by Sun Microsystems, Inc.
+ * 901 San Antonio Road, Palo Alto, CA 94303, USA
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1, as published by the Free Software Foundation.
+ *
+ * This library 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 for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
+ *
+ ************************************************************************/
+#ifndef SC_VBA_CHART_HXX
+#define SC_VBA_CHART_HXX
+#include <cppuhelper/implbase1.hxx>
+#include <com/sun/star/uno/XComponentContext.hpp>
+#include <com/sun/star/chart/XChartDocument.hpp>
+#include <org/openoffice/excel/XChart.hpp>
+#include "vbahelper.hxx"
+
+typedef ::cppu::WeakImplHelper1<oo::excel::XChart > ChartImpl_BASE;
+
+class ScVbaChart : public ChartImpl_BASE
+{
+
+ css::uno::Reference< css::uno::XComponentContext > m_xContext;
+ css::uno::Reference< css::chart::XChartDocument > m_xChartDoc;
+public:
+ ScVbaChart( const css::uno::Reference< css::uno::XComponentContext >& xContext, const css::uno::Reference< css::chart::XChartDocument >& xChartDoc ) : m_xContext(xContext), m_xChartDoc( xChartDoc ) {}
+ virtual ::rtl::OUString SAL_CALL getName() throw (css::uno::RuntimeException);
+ virtual css::uno::Any SAL_CALL SeriesCollection(const css::uno::Any&) throw (css::uno::RuntimeException);
+
+};
+
+#endif //SC_VBA_WINDOW_HXX
diff --git a/sc/source/ui/vba/vbachartobject.cxx b/sc/source/ui/vba/vbachartobject.cxx
new file mode 100644
index 000000000000..f6d5d4e20c91
--- /dev/null
+++ b/sc/source/ui/vba/vbachartobject.cxx
@@ -0,0 +1,108 @@
+/*************************************************************************
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * $RCSfile: vbachartobject.cxx,v $
+ *
+ * $Revision: 1.2 $
+ *
+ * last change: $Author: rt $ $Date: 2007-04-25 16:02:44 $
+ *
+ * The Contents of this file are made available subject to
+ * the terms of GNU Lesser General Public License Version 2.1.
+ *
+ *
+ * GNU Lesser General Public License Version 2.1
+ * =============================================
+ * Copyright 2005 by Sun Microsystems, Inc.
+ * 901 San Antonio Road, Palo Alto, CA 94303, USA
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1, as published by the Free Software Foundation.
+ *
+ * This library 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 for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
+ *
+ ************************************************************************/
+#include "vbachart.hxx"
+#include <com/sun/star/beans/XPropertySet.hpp>
+#include <com/sun/star/document/XEmbeddedObjectSupplier.hpp>
+#include <com/sun/star/container/XNamed.hpp>
+
+#include "vbachartobject.hxx"
+
+using namespace ::com::sun::star;
+using namespace ::org::openoffice;
+
+const rtl::OUString CHART_NAME( RTL_CONSTASCII_USTRINGPARAM("Name") );
+
+::rtl::OUString SAL_CALL
+ScVbaChartObject::getName() throw (css::uno::RuntimeException)
+{
+ rtl::OUString sName;
+ uno::Reference< container::XNamed > xNamed( m_xTableChart, uno::UNO_QUERY );
+ if ( xNamed.is() )
+ sName = xNamed->getName();
+ return sName;
+}
+
+
+
+uno::Reference< excel::XChart > SAL_CALL
+ScVbaChartObject::getChart() throw (css::uno::RuntimeException)
+{
+ uno::Reference< document::XEmbeddedObjectSupplier > xEmbed( m_xTableChart, uno::UNO_QUERY_THROW );
+ uno::Reference< chart::XChartDocument > xChart( xEmbed->getEmbeddedObject(), uno::UNO_QUERY_THROW );
+
+ // #TODO check with vba to see whether its valid to return a
+ // null object for the Chart property. atm, we throw ( i.e. if in
+ // doubt... throw )
+
+ return new ScVbaChart( m_xContext, xChart );
+}
+/*
+#include<cppuhelper/implbase1.hxx>
+#include<org/openoffice/vba/XChartObject.hpp>
+#include"vbacollectionimpl.hxx"
+
+typedef ::cppu::ImplInheritanceHelper1< ScVbaCollectionBaseImpl, oo::vba::XChartObject > XSeriesCollectionBase;
+class MyCollectionImpl : public XSeriesCollectionBase
+{
+public:
+ //MyCollectionImpl( css::uno::Reference< css::uno::XComponentContext >& xContext ) : ScVbaCollectionBaseImpl( xContext ) {}
+ MyCollectionImpl( css::uno::Reference< css::uno::XComponentContext >& xContext ) : XSeriesCollectionBase( xContext ) {}
+ virtual ::rtl::OUString SAL_CALL getName() throw (css::uno::RuntimeException)
+ {
+ OSL_TRACE("**** In Get Name for mangled object");
+ rtl::OUString dummy;
+ return dummy;
+ }
+ virtual css::uno::Any test() throw (css::uno::RuntimeException)
+ {
+ OSL_TRACE("**** In test for mangled object");
+ return uno::Any();
+ }
+ virtual css::uno::Reference< oo::vba::XChart > SAL_CALL getChart() throw (css::uno::RuntimeException)
+ {
+ OSL_TRACE("**** In getChart for mangled object");
+ return css::uno::Reference< oo::vba::XChart >();
+ }
+
+};
+*/
+
+uno::Any SAL_CALL
+ScVbaChartObject::test()throw (css::uno::RuntimeException)
+{
+ return uno::Any();
+}
+
+
diff --git a/sc/source/ui/vba/vbachartobject.hxx b/sc/source/ui/vba/vbachartobject.hxx
new file mode 100644
index 000000000000..1ea7b5d50484
--- /dev/null
+++ b/sc/source/ui/vba/vbachartobject.hxx
@@ -0,0 +1,58 @@
+/*************************************************************************
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * $RCSfile: vbachartobject.hxx,v $
+ *
+ * $Revision: 1.2 $
+ *
+ * last change: $Author: rt $ $Date: 2007-04-25 16:02:54 $
+ *
+ * The Contents of this file are made available subject to
+ * the terms of GNU Lesser General Public License Version 2.1.
+ *
+ *
+ * GNU Lesser General Public License Version 2.1
+ * =============================================
+ * Copyright 2005 by Sun Microsystems, Inc.
+ * 901 San Antonio Road, Palo Alto, CA 94303, USA
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1, as published by the Free Software Foundation.
+ *
+ * This library 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 for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
+ *
+ ************************************************************************/
+#ifndef SC_VBA_CHARTOBJECT_HXX
+#define SC_VBA_CHARTOBJECT_HXX
+#include <cppuhelper/implbase1.hxx>
+#include <com/sun/star/uno/XComponentContext.hpp>
+#include <com/sun/star/table/XTableChart.hpp>
+#include <org/openoffice/excel/XChartObject.hpp>
+#include "vbahelper.hxx"
+
+typedef ::cppu::WeakImplHelper1<oo::excel::XChartObject > ChartObjectImpl_BASE;
+
+class ScVbaChartObject : public ChartObjectImpl_BASE
+{
+
+ css::uno::Reference< css::uno::XComponentContext > m_xContext;
+ css::uno::Reference< css::table::XTableChart > m_xTableChart;
+public:
+ ScVbaChartObject( const css::uno::Reference< css::uno::XComponentContext >& xContext, const css::uno::Reference< css::table::XTableChart >& xTableChart ) : m_xContext(xContext), m_xTableChart( xTableChart ) {}
+ virtual ::rtl::OUString SAL_CALL getName() throw (css::uno::RuntimeException);
+ virtual css::uno::Reference< oo::excel::XChart > SAL_CALL getChart() throw (css::uno::RuntimeException);
+
+ virtual css::uno::Any SAL_CALL test( ) throw (css::uno::RuntimeException);
+};
+
+#endif //SC_VBA_WINDOW_HXX