summaryrefslogtreecommitdiff
path: root/sc/source/ui/vba/vbachartobject.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'sc/source/ui/vba/vbachartobject.cxx')
-rw-r--r--sc/source/ui/vba/vbachartobject.cxx159
1 files changed, 0 insertions, 159 deletions
diff --git a/sc/source/ui/vba/vbachartobject.cxx b/sc/source/ui/vba/vbachartobject.cxx
deleted file mode 100644
index 68b76f553..000000000
--- a/sc/source/ui/vba/vbachartobject.cxx
+++ /dev/null
@@ -1,159 +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.
- *
- ************************************************************************/
-#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 <com/sun/star/script/BasicErrorException.hpp>
-#include <basic/sberrors.hxx>
-#include "vbachartobject.hxx"
-#include "vbachartobjects.hxx"
-
-using namespace ::com::sun::star;
-using namespace ::ooo::vba;
-
-const rtl::OUString CHART_NAME( RTL_CONSTASCII_USTRINGPARAM("Name") );
-const rtl::OUString PERSIST_NAME( RTL_CONSTASCII_USTRINGPARAM("PersistName") );
-
-ScVbaChartObject::ScVbaChartObject( const css::uno::Reference< ov::XHelperInterface >& _xParent, const css::uno::Reference< css::uno::XComponentContext >& _xContext, const css::uno::Reference< css::table::XTableChart >& _xTableChart, const css::uno::Reference< css::drawing::XDrawPageSupplier >& _xDrawPageSupplier ) : ChartObjectImpl_BASE( _xParent, _xContext ), xTableChart( _xTableChart ), xDrawPageSupplier( _xDrawPageSupplier )
-{
- xDrawPage = xDrawPageSupplier->getDrawPage();
- xEmbeddedObjectSupplier.set( xTableChart, uno::UNO_QUERY_THROW );
- xNamed.set( xTableChart, uno::UNO_QUERY_THROW );
- sPersistName = getPersistName();
- xShape = setShape();
- setName(sPersistName);
- oShapeHelper.reset(new ShapeHelper(xShape));
-}
-
-rtl::OUString ScVbaChartObject::getPersistName()
-{
- if ( !sPersistName.getLength() )
- sPersistName = xNamed->getName();
- return sPersistName;
-}
-
-uno::Reference< drawing::XShape >
-ScVbaChartObject::setShape() throw ( script::BasicErrorException )
-{
- try
- {
- sal_Int32 nItems = xDrawPage->getCount();
- for (int i = 0; i < nItems; i++)
- {
- xShape.set( xDrawPage->getByIndex(i), uno::UNO_QUERY_THROW );
- if (xShape->getShapeType().compareToAscii("com.sun.star.drawing.OLE2Shape") == 0 )
- {
- uno::Reference< beans::XPropertySet > xShapePropertySet(xShape, uno::UNO_QUERY_THROW );
- rtl::OUString sName;
- xShapePropertySet->getPropertyValue(PERSIST_NAME ) >>=sName;
- if ( sName.equals(sPersistName))
- {
- xNamedShape.set( xShape, uno::UNO_QUERY_THROW );
- return xShape;
- }
- }
- }
- }
- catch (uno::Exception& )
- {
- throw script::BasicErrorException( rtl::OUString(), uno::Reference< uno::XInterface >(), SbERR_METHOD_FAILED, rtl::OUString() );
- }
- return NULL;
-}
-
-void SAL_CALL
-ScVbaChartObject::setName( const rtl::OUString& sName ) throw (css::uno::RuntimeException)
-{
- xNamedShape->setName(sName);
-}
-
-
-::rtl::OUString SAL_CALL
-ScVbaChartObject::getName() throw (css::uno::RuntimeException)
-{
- return xNamedShape->getName();
-}
-
-void SAL_CALL
-ScVbaChartObject::Delete() throw ( css::script::BasicErrorException )
-{
- // parent of this object is sheet
- uno::Reference< excel::XWorksheet > xParent( getParent(), uno::UNO_QUERY_THROW );
- uno::Reference< excel::XChartObjects > xColl( xParent->ChartObjects( uno::Any() ), uno::UNO_QUERY_THROW );
- ScVbaChartObjects* pChartObjectsImpl = static_cast< ScVbaChartObjects* >( xColl.get() );
- if (pChartObjectsImpl)
- pChartObjectsImpl->removeByName( getPersistName() );
- else
- throw script::BasicErrorException( rtl::OUString(), uno::Reference< uno::XInterface >(), SbERR_METHOD_FAILED, rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Parent is not ChartObjects" ) ) );
-}
-
-void
-ScVbaChartObject::Activate() throw ( script::BasicErrorException )
-{
- try
- {
- // #TODO #FIXME should be ThisWorkbook or equivelant, or in
- // fact probably the chart object should be created with
- // the XModel owner
- //uno::Reference< view::XSelectionSupplier > xSelectionSupplier( getXModel().getCurrentController());
- uno::Reference< view::XSelectionSupplier > xSelectionSupplier( getCurrentExcelDoc(mxContext)->getCurrentController(), uno::UNO_QUERY_THROW );
- xSelectionSupplier->select(uno::makeAny(xShape));
- }
- catch (uno::Exception& )
- {
- throw script::BasicErrorException( rtl::OUString(), uno::Reference< uno::XInterface >(), SbERR_METHOD_FAILED, rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "ChartObject Activate internal error" ) ) );
- }
-}
-
-uno::Reference< excel::XChart > SAL_CALL
-ScVbaChartObject::getChart() throw (css::uno::RuntimeException)
-{
- return new ScVbaChart( this, mxContext, xEmbeddedObjectSupplier->getEmbeddedObject(), xTableChart );
-}
-
-rtl::OUString&
-ScVbaChartObject::getServiceImplName()
-{
- static rtl::OUString sImplName( RTL_CONSTASCII_USTRINGPARAM("ScVbaChartObject") );
- return sImplName;
-}
-
-uno::Sequence< rtl::OUString >
-ScVbaChartObject::getServiceNames()
-{
- static uno::Sequence< rtl::OUString > aServiceNames;
- if ( aServiceNames.getLength() == 0 )
- {
- aServiceNames.realloc( 1 );
- aServiceNames[ 0 ] = rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("ooo.vba.excel.ChartObject" ) );
- }
- return aServiceNames;
-}
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */