diff options
author | RĂ¼diger Timm <rt@openoffice.org> | 2008-07-08 07:02:25 +0000 |
---|---|---|
committer | RĂ¼diger Timm <rt@openoffice.org> | 2008-07-08 07:02:25 +0000 |
commit | f29357792f91eff287e36ab16ccfa5f8655600eb (patch) | |
tree | 37320c2243e73166fa29531db79486f001db4d28 /sw/source/filter/xml/wrtxml.cxx | |
parent | INTEGRATION: CWS fwk90 (1.47.88); FILE MERGED (diff) | |
download | core-f29357792f91eff287e36ab16ccfa5f8655600eb.tar.gz core-f29357792f91eff287e36ab16ccfa5f8655600eb.zip |
INTEGRATION: CWS fwk90 (1.61.90); FILE MERGED
2008/06/16 09:06:30 mav 1.61.90.2: fix typo
2008/06/06 11:31:39 mav 1.61.90.1: #i60623# store meta-information for database embedded forms
Diffstat (limited to 'sw/source/filter/xml/wrtxml.cxx')
-rw-r--r-- | sw/source/filter/xml/wrtxml.cxx | 24 |
1 files changed, 21 insertions, 3 deletions
diff --git a/sw/source/filter/xml/wrtxml.cxx b/sw/source/filter/xml/wrtxml.cxx index 38a81f48d8b3..e944ad81aba7 100644 --- a/sw/source/filter/xml/wrtxml.cxx +++ b/sw/source/filter/xml/wrtxml.cxx @@ -7,7 +7,7 @@ * OpenOffice.org - a multi-platform office productivity suite * * $RCSfile: wrtxml.cxx,v $ - * $Revision: 1.61 $ + * $Revision: 1.62 $ * * This file is part of OpenOffice.org. * @@ -40,6 +40,7 @@ #include <com/sun/star/xml/sax/XDocumentHandler.hpp> #include <com/sun/star/document/XExporter.hpp> #include <com/sun/star/document/XFilter.hpp> +#include <com/sun/star/frame/XModule.hpp> #include <comphelper/processfactory.hxx> #include <comphelper/genericpropertyset.hxx> #include <unotools/streamwrap.hxx> @@ -365,8 +366,25 @@ pGraphicHelper = SvXMLGraphicHelper::Create( xStg, sal_Bool bWarn = sal_False, bErr = sal_False; String sWarnFile, sErrFile; - if( !bOrganizerMode && !bBlock && - SFX_CREATE_MODE_EMBEDDED != pDoc->GetDocShell()->GetCreateMode() ) + sal_Bool bStoreMeta = ( SFX_CREATE_MODE_EMBEDDED != pDoc->GetDocShell()->GetCreateMode() ); + if ( !bStoreMeta ) + { + try + { + Reference< frame::XModule > xModule( xModelComp, UNO_QUERY ); + if ( xModule.is() ) + { + ::rtl::OUString aModuleID = xModule->getIdentifier(); + bStoreMeta = ( aModuleID.getLength() + && ( aModuleID.equals( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.sdb.FormDesign" ) ) ) + || aModuleID.equals( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.sdb.TextReportDesign" ) ) ) ) ); + } + } + catch( uno::Exception& ) + {} + } + + if( !bOrganizerMode && !bBlock && bStoreMeta ) { if( !WriteThroughComponent( xModelComp, "meta.xml", xServiceFactory, |