diff options
author | Noel Power <noel.power@suse.com> | 2013-03-01 17:07:06 +0000 |
---|---|---|
committer | Noel Power <noel.power@suse.com> | 2013-03-01 17:12:29 +0000 |
commit | ec583253c3d761847c93a77fa10c065fc334fab9 (patch) | |
tree | 8c93913029ade491470e75389c8426fb87795ed9 /sfx2/source/doc/docmacromode.cxx | |
parent | 58c30a3545a5725d704eabd79071db02f1f2cb23 (diff) |
raise warning when saving macro laden doc as a macro-free format bnc#791777
Change-Id: Ic947ceef71c86e31fbf0bce74b064aaf91f47178
Diffstat (limited to 'sfx2/source/doc/docmacromode.cxx')
-rw-r--r-- | sfx2/source/doc/docmacromode.cxx | 29 |
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; } |