diff options
author | Noel Power <noel.power@novell.com> | 2010-10-06 10:16:50 +0100 |
---|---|---|
committer | Noel Power <noel.power@novell.com> | 2010-10-06 10:16:50 +0100 |
commit | 9a3f243c89bd53b0dc06c19bdccaa402c9e32c14 (patch) | |
tree | 136e33fe6d405ea1175c45246c8e13385fc28a4b /sw/source/ui/vba/vbatable.cxx | |
parent | c1369970be1d2c0cb19edcac4e1d010635c89730 (diff) |
initial commit for vba blob ( not including container_control stuff )
Diffstat (limited to 'sw/source/ui/vba/vbatable.cxx')
-rw-r--r-- | sw/source/ui/vba/vbatable.cxx | 24 |
1 files changed, 23 insertions, 1 deletions
diff --git a/sw/source/ui/vba/vbatable.cxx b/sw/source/ui/vba/vbatable.cxx index 11969d6717a0..73d91ad492c8 100644 --- a/sw/source/ui/vba/vbatable.cxx +++ b/sw/source/ui/vba/vbatable.cxx @@ -9,11 +9,13 @@ #include <com/sun/star/container/XNamed.hpp> #include "vbaborders.hxx" #include "vbapalette.hxx" +#include "vbarows.hxx" +#include "vbacolumns.hxx" using namespace ::ooo::vba; using namespace ::com::sun::star; -SwVbaTable::SwVbaTable( const uno::Reference< ooo::vba::XHelperInterface >& rParent, const uno::Reference< uno::XComponentContext >& rContext, const css::uno::Reference< css::text::XTextDocument >& rDocument, const uno::Reference< css::text::XTextTable >& xTextTable) throw ( uno::RuntimeException ) : SwVbaTable_BASE( rParent, rContext ), mxTextDocument( rDocument ) +SwVbaTable::SwVbaTable( const uno::Reference< ooo::vba::XHelperInterface >& rParent, const uno::Reference< uno::XComponentContext >& rContext, const uno::Reference< text::XTextDocument >& rDocument, const uno::Reference< text::XTextTable >& xTextTable) throw ( uno::RuntimeException ) : SwVbaTable_BASE( rParent, rContext ), mxTextDocument( rDocument ) { mxTextTable.set( xTextTable, uno::UNO_QUERY_THROW ); } @@ -75,6 +77,26 @@ SwVbaTable::Borders( const uno::Any& index ) throw (uno::RuntimeException) return uno::makeAny( xCol ); } +uno::Any SAL_CALL +SwVbaTable::Rows( const uno::Any& index ) throw (uno::RuntimeException) +{ + uno::Reference< table::XTableRows > xTableRows( mxTextTable->getRows(), uno::UNO_QUERY_THROW ); + uno::Reference< XCollection > xCol( new SwVbaRows( this, mxContext, mxTextTable, xTableRows ) ); + if ( index.hasValue() ) + return xCol->Item( index, uno::Any() ); + return uno::makeAny( xCol ); +} + +uno::Any SAL_CALL +SwVbaTable::Columns( const uno::Any& index ) throw (uno::RuntimeException) +{ + uno::Reference< table::XTableColumns > xTableColumns( mxTextTable->getColumns(), uno::UNO_QUERY_THROW ); + uno::Reference< XCollection > xCol( new SwVbaColumns( this, mxContext, mxTextTable, xTableColumns ) ); + if ( index.hasValue() ) + return xCol->Item( index, uno::Any() ); + return uno::makeAny( xCol ); +} + // XHelperInterface rtl::OUString& SwVbaTable::getServiceImplName() |