summaryrefslogtreecommitdiff
path: root/oox
diff options
context:
space:
mode:
authorMarkus Mohrhard <markus.mohrhard@googlemail.com>2015-08-15 04:13:41 +0200
committerMarkus Mohrhard <markus.mohrhard@googlemail.com>2015-09-10 02:12:39 +0200
commit400c2a1a0ab14eea159cdded5f8e592287590d56 (patch)
treecb66f86b40639434cdd039b020e5e6fadbceefbe /oox
parente1c1a5da515ba3ec10b9e68b148433c841f51ff7 (diff)
list all libraries used in the document
Diffstat (limited to 'oox')
-rw-r--r--oox/source/ole/vbaexport.cxx17
1 files changed, 16 insertions, 1 deletions
diff --git a/oox/source/ole/vbaexport.cxx b/oox/source/ole/vbaexport.cxx
index e2ec0459b606..253d43e64348 100644
--- a/oox/source/ole/vbaexport.cxx
+++ b/oox/source/ole/vbaexport.cxx
@@ -308,7 +308,8 @@ void VBACompression::write()
VbaExport::VbaExport(css::uno::Reference<css::frame::XModel> xModel):
mxModel(xModel)
{
- maProjectName = "How to get the correct project name?";
+ // TODO: how do we get the correct project name
+ maProjectName = "VBAProject";
}
namespace {
@@ -606,6 +607,14 @@ void VbaExport::exportVBA()
VBACompression aCompression(aCompressedStream, aMemoryStream);
aCompression.write();
+
+ css::uno::Reference<css::container::XNameContainer> xNameContainer = getBasicLibrary();
+ css::uno::Sequence<OUString> aElementNames = xNameContainer->getElementNames();
+ sal_Int32 n = aElementNames.getLength();
+ for (sal_Int32 i = 0; i < n; ++i)
+ {
+ SAL_DEBUG(aElementNames[i]);
+ }
}
css::uno::Reference<css::container::XNameContainer> VbaExport::getBasicLibrary()
@@ -615,6 +624,12 @@ css::uno::Reference<css::container::XNameContainer> VbaExport::getBasicLibrary()
{
oox::PropertySet aDocProp(mxModel);
css::uno::Reference<css::script::XLibraryContainer> xLibContainer(aDocProp.getAnyProperty(oox::PROP_BasicLibraries), css::uno::UNO_QUERY_THROW);
+ css::uno::Sequence<OUString> aElementNames = xLibContainer->getElementNames();
+ sal_Int32 n = aElementNames.getLength();
+ for (sal_Int32 i = 0; i < n; ++i)
+ {
+ SAL_DEBUG(aElementNames[i]);
+ }
xLibrary.set( xLibContainer->getByName(maProjectName), css::uno::UNO_QUERY_THROW );
}
catch(...)