summaryrefslogtreecommitdiff
path: root/sfx2/source/doc/docmacromode.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'sfx2/source/doc/docmacromode.cxx')
-rw-r--r--sfx2/source/doc/docmacromode.cxx29
1 files changed, 22 insertions, 7 deletions
diff --git a/sfx2/source/doc/docmacromode.cxx b/sfx2/source/doc/docmacromode.cxx
index 999ab2076aa5..6f105075b0a4 100644
--- a/sfx2/source/doc/docmacromode.cxx
+++ b/sfx2/source/doc/docmacromode.cxx
@@ -318,17 +318,11 @@ namespace sfx2
}
//--------------------------------------------------------------------
- sal_Bool DocumentMacroMode::hasMacroLibrary() const
+ sal_Bool DocumentMacroMode::containerHasBasicMacros( const Reference< XLibraryContainer >& xContainer )
{
sal_Bool bHasMacroLib = sal_False;
-#ifndef DISABLE_SCRIPTING
try
{
- Reference< XEmbeddedScripts > xScripts( m_pData->m_rDocumentAccess.getEmbeddedDocumentScripts() );
- Reference< XLibraryContainer > xContainer;
- if ( xScripts.is() )
- xContainer.set( xScripts->getBasicLibraries(), UNO_QUERY_THROW );
-
if ( xContainer.is() )
{
// a library container exists; check if it's empty
@@ -368,6 +362,27 @@ namespace sfx2
{
DBG_UNHANDLED_EXCEPTION();
}
+ return bHasMacroLib;
+ }
+
+ //--------------------------------------------------------------------
+ sal_Bool DocumentMacroMode::hasMacroLibrary() const
+ {
+ sal_Bool bHasMacroLib = sal_False;
+#ifndef DISABLE_SCRIPTING
+ try
+ {
+ Reference< XEmbeddedScripts > xScripts( m_pData->m_rDocumentAccess.getEmbeddedDocumentScripts() );
+ Reference< XLibraryContainer > xContainer;
+ if ( xScripts.is() )
+ xContainer.set( xScripts->getBasicLibraries(), UNO_QUERY_THROW );
+ bHasMacroLib = containerHasBasicMacros( xContainer );
+
+ }
+ catch( const Exception& )
+ {
+ DBG_UNHANDLED_EXCEPTION();
+ }
#endif
return bHasMacroLib;
}