vbaworksheets.cxx (b3f79822) | vbaworksheets.cxx (7a164331) |
---|---|
1/************************************************************** 2 * 3 * Licensed to the Apache Software Foundation (ASF) under one 4 * or more contributor license agreements. See the NOTICE file 5 * distributed with this work for additional information 6 * regarding copyright ownership. The ASF licenses this file 7 * to you under the Apache License, Version 2.0 (the 8 * "License"); you may not use this file except in compliance --- 42 unchanged lines hidden (view full) --- 51#include "unonames.hxx" 52 53using namespace ::ooo::vba; 54using namespace ::com::sun::star; 55 56 57typedef ::cppu::WeakImplHelper1< container::XEnumeration > SheetEnumeration_BASE; 58typedef ::cppu::WeakImplHelper3< container::XNameAccess, container::XIndexAccess, container::XEnumerationAccess > SheetCollectionHelper_BASE; | 1/************************************************************** 2 * 3 * Licensed to the Apache Software Foundation (ASF) under one 4 * or more contributor license agreements. See the NOTICE file 5 * distributed with this work for additional information 6 * regarding copyright ownership. The ASF licenses this file 7 * to you under the Apache License, Version 2.0 (the 8 * "License"); you may not use this file except in compliance --- 42 unchanged lines hidden (view full) --- 51#include "unonames.hxx" 52 53using namespace ::ooo::vba; 54using namespace ::com::sun::star; 55 56 57typedef ::cppu::WeakImplHelper1< container::XEnumeration > SheetEnumeration_BASE; 58typedef ::cppu::WeakImplHelper3< container::XNameAccess, container::XIndexAccess, container::XEnumerationAccess > SheetCollectionHelper_BASE; |
59// a map ( or hashmap ) wont do as we need also to preserve the order | 59// a map ( or hashmap ) won't do as we need also to preserve the order |
60// (as added ) of the items 61typedef std::vector< uno::Reference< sheet::XSpreadsheet > > SheetMap; 62 63 64// #FIXME #TODO the implementation of the Sheets collections sucks, 65// e.g. there is no support for tracking sheets added/removed from the collection 66 67class WorkSheetsEnumeration : public SheetEnumeration_BASE --- 83 unchanged lines hidden (view full) --- 151 152 virtual uno::Any SAL_CALL nextElement( ) throw (container::NoSuchElementException, lang::WrappedTargetException, uno::RuntimeException) 153 { 154 uno::Reference< sheet::XSpreadsheet > xSheet( m_xEnumeration->nextElement(), uno::UNO_QUERY_THROW ); 155 uno::Reference< XHelperInterface > xIf = excel::getUnoSheetModuleObj( xSheet ); 156 uno::Any aRet; 157 if ( !xIf.is() ) 158 { | 60// (as added ) of the items 61typedef std::vector< uno::Reference< sheet::XSpreadsheet > > SheetMap; 62 63 64// #FIXME #TODO the implementation of the Sheets collections sucks, 65// e.g. there is no support for tracking sheets added/removed from the collection 66 67class WorkSheetsEnumeration : public SheetEnumeration_BASE --- 83 unchanged lines hidden (view full) --- 151 152 virtual uno::Any SAL_CALL nextElement( ) throw (container::NoSuchElementException, lang::WrappedTargetException, uno::RuntimeException) 153 { 154 uno::Reference< sheet::XSpreadsheet > xSheet( m_xEnumeration->nextElement(), uno::UNO_QUERY_THROW ); 155 uno::Reference< XHelperInterface > xIf = excel::getUnoSheetModuleObj( xSheet ); 156 uno::Any aRet; 157 if ( !xIf.is() ) 158 { |
159 // if the Sheet is in a document created by the api unfortunately ( at the 160 // moment, it actually wont have the special Document modules | 159 // if the Sheet is in a document created by the api unfortunately (at the 160 // moment), it actually won't have the special Document modules |
161 uno::Reference< excel::XWorksheet > xNewSheet( new ScVbaWorksheet( m_xParent, m_xContext, xSheet, m_xModel ) ); 162 aRet <<= xNewSheet; 163 } 164 else 165 aRet <<= xIf; 166 return aRet; 167 } 168 --- 29 unchanged lines hidden (view full) --- 198uno::Any 199ScVbaWorksheets::createCollectionObject( const uno::Any& aSource ) 200{ 201 uno::Reference< sheet::XSpreadsheet > xSheet( aSource, uno::UNO_QUERY ); 202 uno::Reference< XHelperInterface > xIf = excel::getUnoSheetModuleObj( xSheet ); 203 uno::Any aRet; 204 if ( !xIf.is() ) 205 { | 161 uno::Reference< excel::XWorksheet > xNewSheet( new ScVbaWorksheet( m_xParent, m_xContext, xSheet, m_xModel ) ); 162 aRet <<= xNewSheet; 163 } 164 else 165 aRet <<= xIf; 166 return aRet; 167 } 168 --- 29 unchanged lines hidden (view full) --- 198uno::Any 199ScVbaWorksheets::createCollectionObject( const uno::Any& aSource ) 200{ 201 uno::Reference< sheet::XSpreadsheet > xSheet( aSource, uno::UNO_QUERY ); 202 uno::Reference< XHelperInterface > xIf = excel::getUnoSheetModuleObj( xSheet ); 203 uno::Any aRet; 204 if ( !xIf.is() ) 205 { |
206 // if the Sheet is in a document created by the api unfortunately ( at the 207 // moment, it actually wont have the special Document modules | 206 // if the Sheet is in a document created by the api unfortunately (at the 207 // moment), it actually won't have the special Document modules |
208 uno::Reference< excel::XWorksheet > xNewSheet( new ScVbaWorksheet( getParent(), mxContext, xSheet, mxModel ) ); 209 aRet <<= xNewSheet; 210 } 211 else 212 aRet <<= xIf; 213 return aRet; 214} 215 --- 265 unchanged lines hidden --- | 208 uno::Reference< excel::XWorksheet > xNewSheet( new ScVbaWorksheet( getParent(), mxContext, xSheet, mxModel ) ); 209 aRet <<= xNewSheet; 210 } 211 else 212 aRet <<= xIf; 213 return aRet; 214} 215 --- 265 unchanged lines hidden --- |