summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--basic/inc/basic/basicmanagerrepository.hxx3
-rw-r--r--comphelper/source/misc/documentinfo.cxx2
-rw-r--r--cui/source/customize/cfgutil.cxx1
-rw-r--r--filter/source/msfilter/msvbahelper.cxx15
-rw-r--r--odk/pack/copying/idl_chapter_refs.txt16
-rw-r--r--offapi/com/sun/star/document/XDocumentSubStorageSupplier.idl3
-rw-r--r--offapi/com/sun/star/sdb/DocumentDefinition.idl3
-rw-r--r--qadevOOo/tests/java/mod/_sc/XMLMetaExporter.java12
-rw-r--r--qadevOOo/tests/java/mod/_sc/XMLMetaImporter.java22
-rw-r--r--qadevOOo/tests/java/mod/_sm/XMLMetaExporter.java14
-rw-r--r--qadevOOo/tests/java/mod/_sm/XMLMetaImporter.java37
-rw-r--r--qadevOOo/tests/java/mod/_sw/XMLMetaExporter.java13
-rw-r--r--qadevOOo/tests/java/mod/_sw/XMLMetaImporter.java22
-rw-r--r--qadevOOo/tests/java/mod/_xmloff/Draw/XMLMetaExporter.java12
-rw-r--r--qadevOOo/tests/java/mod/_xmloff/Draw/XMLMetaImporter.java23
-rw-r--r--qadevOOo/tests/java/mod/_xmloff/Impress/XMLMetaExporter.java14
-rw-r--r--qadevOOo/tests/java/mod/_xmloff/Impress/XMLMetaImporter.java23
-rw-r--r--sd/source/filter/ppt/pptin.cxx2
-rw-r--r--sfx2/inc/guisaveas.hxx5
-rw-r--r--sfx2/source/appl/appopen.cxx2
-rw-r--r--sfx2/source/doc/doctemplates.cxx56
-rw-r--r--sfx2/source/doc/guisaveas.cxx74
-rw-r--r--sfx2/source/doc/objcont.cxx32
-rw-r--r--sfx2/source/doc/objxtor.cxx1
-rw-r--r--svtools/source/contnr/contentenumeration.cxx25
-rw-r--r--svtools/source/contnr/contentenumeration.hxx7
-rw-r--r--sw/source/filter/html/swhtml.cxx2
-rw-r--r--sw/source/filter/ww8/ww8par.cxx7
-rw-r--r--sw/source/ui/vba/vbadocument.cxx9
-rw-r--r--sw/source/ui/vba/vbadocumentproperties.cxx222
-rw-r--r--swext/mediawiki/src/com/sun/star/wiki/Helper.java38
-rw-r--r--vbahelper/source/vbahelper/vbaapplicationbase.cxx1
32 files changed, 416 insertions, 302 deletions
diff --git a/basic/inc/basic/basicmanagerrepository.hxx b/basic/inc/basic/basicmanagerrepository.hxx
index 490457e21a84..411aeadb8545 100644
--- a/basic/inc/basic/basicmanagerrepository.hxx
+++ b/basic/inc/basic/basicmanagerrepository.hxx
@@ -76,7 +76,8 @@ namespace basic
@param _rxDocumentModel
denotes the document model whose BasicManager is to be retrieved. Must not be <NULL/>.
- The document should support the XDocumentInfoSupplier interface, for retrieving
+ The document should support the XDocumentPropertiesSupplier
+ interface, for retrieving
its title, which is needed in some error conditions.
Also it <em>must</em> support the XStorageBasedDocument interface, since we
must be able to retrieve the document's storage. If this interface is <em>not</em>
diff --git a/comphelper/source/misc/documentinfo.cxx b/comphelper/source/misc/documentinfo.cxx
index 9a9994592ed7..0ada1a74f536 100644
--- a/comphelper/source/misc/documentinfo.cxx
+++ b/comphelper/source/misc/documentinfo.cxx
@@ -112,7 +112,7 @@ namespace comphelper {
return sTitle;
}
- // 3. try the UNO DocumentInfo
+ // 3. try the UNO XDocumentProperties
Reference< XDocumentPropertiesSupplier > xDPS( _rxDocument, UNO_QUERY );
if ( xDPS.is() )
{
diff --git a/cui/source/customize/cfgutil.cxx b/cui/source/customize/cfgutil.cxx
index 410cd1090a2c..4043252a4967 100644
--- a/cui/source/customize/cfgutil.cxx
+++ b/cui/source/customize/cfgutil.cxx
@@ -33,7 +33,6 @@
#include <com/sun/star/frame/XDesktop.hpp>
#include <com/sun/star/container/XEnumerationAccess.hpp>
#include <com/sun/star/container/XEnumeration.hpp>
-#include <com/sun/star/document/XDocumentInfoSupplier.hpp>
#include <com/sun/star/document/XScriptInvocationContext.hpp>
#include <com/sun/star/style/XStyleFamiliesSupplier.hpp>
#include <com/sun/star/frame/UICommandDescription.hpp>
diff --git a/filter/source/msfilter/msvbahelper.cxx b/filter/source/msfilter/msvbahelper.cxx
index be76c32806a6..cdfa730bdbeb 100644
--- a/filter/source/msfilter/msvbahelper.cxx
+++ b/filter/source/msfilter/msvbahelper.cxx
@@ -25,7 +25,6 @@
#include <basic/sbmeth.hxx>
#include <com/sun/star/document/XDocumentPropertiesSupplier.hpp>
#include <com/sun/star/document/XDocumentProperties.hpp>
-#include <com/sun/star/document/XDocumentInfoSupplier.hpp>
#include <com/sun/star/script/vba/XVBACompatibility.hpp>
#include <com/sun/star/lang/XUnoTunnel.hpp>
#include <com/sun/star/script/ModuleType.hpp>
@@ -127,11 +126,13 @@ SfxObjectShell* findShellForUrl( const rtl::OUString& sMacroURLOrPath )
if ( sMacroURLOrPath.endsWithIgnoreAsciiCaseAsciiL( ".dot", 4 ) )
{
- uno::Reference< document::XDocumentInfoSupplier > xDocInfoSupp( xModel, uno::UNO_QUERY );
- if( xDocInfoSupp.is() )
+ uno::Reference<document::XDocumentPropertiesSupplier> const
+ xDocPropSupp(xModel, uno::UNO_QUERY);
+ if (xDocPropSupp.is())
{
- uno::Reference< document::XDocumentPropertiesSupplier > xDocPropSupp( xDocInfoSupp->getDocumentInfo(), uno::UNO_QUERY_THROW );
- uno::Reference< document::XDocumentProperties > xDocProps( xDocPropSupp->getDocumentProperties(), uno::UNO_QUERY_THROW );
+ uno::Reference< document::XDocumentProperties > const
+ xDocProps(xDocPropSupp->getDocumentProperties(),
+ uno::UNO_QUERY_THROW);
rtl::OUString sCurrName = xDocProps->getTemplateName();
if( sMacroURLOrPath.lastIndexOf( sCurrName ) >= 0 )
{
@@ -391,8 +392,8 @@ MacroResolvedInfo resolveVBAMacro( SfxObjectShell* pShell, const rtl::OUString&
if ( xPrjNameCache.is() )
{
// is this document created from a template?
- uno::Reference< document::XDocumentInfoSupplier > xDocInfoSupp( pShell->GetModel(), uno::UNO_QUERY_THROW );
- uno::Reference< document::XDocumentPropertiesSupplier > xDocPropSupp( xDocInfoSupp->getDocumentInfo(), uno::UNO_QUERY_THROW );
+ uno::Reference< document::XDocumentPropertiesSupplier > const
+ xDocPropSupp(pShell->GetModel(), uno::UNO_QUERY_THROW);
uno::Reference< document::XDocumentProperties > xDocProps( xDocPropSupp->getDocumentProperties(), uno::UNO_QUERY_THROW );
rtl::OUString sCreatedFrom = xDocProps->getTemplateURL();
diff --git a/odk/pack/copying/idl_chapter_refs.txt b/odk/pack/copying/idl_chapter_refs.txt
index 58d93cce9c1b..852ede042e0f 100644
--- a/odk/pack/copying/idl_chapter_refs.txt
+++ b/odk/pack/copying/idl_chapter_refs.txt
@@ -2088,7 +2088,7 @@ com.sun.star.document.OfficeDocument
com.sun.star.lang.XMultiServiceFactory
com.sun.star.container.XChild
com.sun.star.document.XEventsSupplier
-com.sun.star.document.XDocumentInfoSupplier
+com.sun.star.document.XDocumentPropertiesSupplier
TOPIC:
LINK:Documentation/DevGuide/GUI/The_Example_Listings
@@ -6599,12 +6599,12 @@ com.sun.star.document.ImportFilter
com.sun.star.document.ExportFilter
TOPIC:
-LINK:Documentation/DevGuide/OfficeDev/Component/Models#XDocumentInfoSupplier
-DESCR:OfficeDev - Component - Models - XDocumentInfoSupplier
+LINK:Documentation/DevGuide/OfficeDev/Component/Models#XDocumentPropertiesSupplier
+DESCR:OfficeDev - Component - Models - XDocumentPropertiesSupplier
REF:
-com.sun.star.document.XDocumentInfoSupplier
+com.sun.star.document.XDocumentPropertiesSupplier
TOPIC:
-com.sun.star.document.XDocumentInfoSupplier
+com.sun.star.document.XDocumentPropertiesSupplier
LINK:Documentation/DevGuide/FirstSteps/Struct
DESCR:FirstSteps - Struct
@@ -7024,10 +7024,10 @@ com.sun.star.lang.XComponent
LINK:Documentation/DevGuide/Text/Settings#General_Document_Information
DESCR:Text - Settings - General Document Information
REF:
-com.sun.star.document.DocumentInfo
-com.sun.star.document.XDocumentInfoSupplier
+com.sun.star.document.DocumentProperties
+com.sun.star.document.XDocumentPropertiesSupplier
TOPIC:
-com.sun.star.document.XDocumentInfoSupplier
+com.sun.star.document.XDocumentPropertiesSupplier
LINK:Documentation/DevGuide/Text/Sorting_Text
DESCR:Text - Sorting Text
diff --git a/offapi/com/sun/star/document/XDocumentSubStorageSupplier.idl b/offapi/com/sun/star/document/XDocumentSubStorageSupplier.idl
index 48cddc357914..ce2d7ef56927 100644
--- a/offapi/com/sun/star/document/XDocumentSubStorageSupplier.idl
+++ b/offapi/com/sun/star/document/XDocumentSubStorageSupplier.idl
@@ -31,9 +31,6 @@ module com { module sun { module star { module document {
<p>
A temporary interface to get access to documents substorages.
</p>
-
- @see DocumentInfo
- @see StandaloneDocumentInfo
*/
interface XDocumentSubStorageSupplier: com::sun::star::uno::XInterface
{
diff --git a/offapi/com/sun/star/sdb/DocumentDefinition.idl b/offapi/com/sun/star/sdb/DocumentDefinition.idl
index 1dafb93a9930..3a7220070aba 100644
--- a/offapi/com/sun/star/sdb/DocumentDefinition.idl
+++ b/offapi/com/sun/star/sdb/DocumentDefinition.idl
@@ -51,7 +51,8 @@ service DocumentDefinition
the <code>execute</code> method is the model of the loaded document.</li>
<li><strong>preview</strong>: retrieves an image showing a preview of the sub document.</li>
<li><strong>getDocumentInfo</strong>: retrieves the document information, as
- <type scope="com::sun::star::document">XDocumentInfo</type> instance, of the sub document.</li>
+ <type scope="com::sun::star::document">XDocumentProperties</type>
+ instance, of the sub document.</li>
<li><strong>delete</strong>: deletes the sub document from the database document.</li>
<li><strong>close</strong>: closes the sub document, if it had previously been opened
using either the <code>open</code> or <code>openDesign</code> command. The return value
diff --git a/qadevOOo/tests/java/mod/_sc/XMLMetaExporter.java b/qadevOOo/tests/java/mod/_sc/XMLMetaExporter.java
index 2fde6b2a544d..9732359bf501 100644
--- a/qadevOOo/tests/java/mod/_sc/XMLMetaExporter.java
+++ b/qadevOOo/tests/java/mod/_sc/XMLMetaExporter.java
@@ -28,7 +28,8 @@ import util.SOfficeFactory;
import util.XMLTools;
import com.sun.star.beans.XPropertySet;
-import com.sun.star.document.XDocumentInfoSupplier;
+import com.sun.star.document.XDocumentPropertiesSupplier;
+import com.sun.star.document.XDocumentProperties;
import com.sun.star.document.XExporter;
import com.sun.star.lang.XComponent;
import com.sun.star.lang.XMultiServiceFactory;
@@ -133,11 +134,10 @@ public class XMLMetaExporter extends TestCase {
xEx.setSourceDocument(xSheetDoc);
// Obtaining and changing property values
- XDocumentInfoSupplier infoSup = UnoRuntime.queryInterface (XDocumentInfoSupplier.class,
- xSheetDoc) ;
- XPropertySet docInfo = UnoRuntime.queryInterface
- (XPropertySet.class, infoSup.getDocumentInfo()) ;
- docInfo.setPropertyValue("Title", "TestDocument");
+ XDocumentPropertiesSupplier xPropSup = UnoRuntime.queryInterface
+ (XDocumentPropertiesSupplier.class, xSheetDoc);
+ final XDocumentProperties xDocProps = xPropSup.getDocumentProperties();
+ xDocProps.setTitle("TestDocument");
log.println("fill sheet 1 with contnet...");
util.CalcTools.fillCalcSheetWithContent(xSheetDoc,1, 3, 3, 50, 50);
diff --git a/qadevOOo/tests/java/mod/_sc/XMLMetaImporter.java b/qadevOOo/tests/java/mod/_sc/XMLMetaImporter.java
index f5df59c92d24..c494520f53cc 100644
--- a/qadevOOo/tests/java/mod/_sc/XMLMetaImporter.java
+++ b/qadevOOo/tests/java/mod/_sc/XMLMetaImporter.java
@@ -27,7 +27,8 @@ import lib.TestParameters;
import util.SOfficeFactory;
import com.sun.star.beans.XPropertySet;
-import com.sun.star.document.XDocumentInfoSupplier;
+import com.sun.star.document.XDocumentPropertiesSupplier;
+import com.sun.star.document.XDocumentProperties;
import com.sun.star.document.XImporter;
import com.sun.star.lang.XComponent;
import com.sun.star.lang.XMultiServiceFactory;
@@ -160,24 +161,17 @@ public class XMLMetaImporter extends TestCase {
tEnv.addObjRelation("XDocumentHandler.XMLData", xml) ;
- XDocumentInfoSupplier infoSup = UnoRuntime.queryInterface(XDocumentInfoSupplier.class, xSheetDoc) ;
- final XPropertySet docInfo = UnoRuntime.queryInterface
- (XPropertySet.class, infoSup.getDocumentInfo()) ;
+ XDocumentPropertiesSupplier xPropSup = UnoRuntime.queryInterface
+ (XDocumentPropertiesSupplier.class, xSheetDoc);
+ final XDocumentProperties xDocProps = xPropSup.getDocumentProperties();
final PrintWriter logF = log ;
tEnv.addObjRelation("XDocumentHandler.ImportChecker",
new ifc.xml.sax._XDocumentHandler.ImportChecker() {
public boolean checkImport() {
- try {
- String title = (String) docInfo.getPropertyValue
- ("Title") ;
- logF.println("Title returned = '" + title + "'") ;
- return impTitle.equals(title) ;
- } catch (com.sun.star.uno.Exception e) {
- logF.println("Exception occurred while checking filter :") ;
- e.printStackTrace(logF) ;
- return false ;
- }
+ String title = xDocProps.getTitle();
+ logF.println("Title returned = '" + title + "'") ;
+ return impTitle.equals(title) ;
}
}) ;
diff --git a/qadevOOo/tests/java/mod/_sm/XMLMetaExporter.java b/qadevOOo/tests/java/mod/_sm/XMLMetaExporter.java
index 9c961854c6e4..2c7535cdb13c 100644
--- a/qadevOOo/tests/java/mod/_sm/XMLMetaExporter.java
+++ b/qadevOOo/tests/java/mod/_sm/XMLMetaExporter.java
@@ -27,8 +27,9 @@ import lib.TestParameters;
import util.SOfficeFactory;
import util.XMLTools;
-import com.sun.star.document.XDocumentInfo;
-import com.sun.star.document.XDocumentInfoSupplier;
+import com.sun.star.beans.XPropertyContainer;
+import com.sun.star.document.XDocumentPropertiesSupplier;
+import com.sun.star.document.XDocumentProperties;
import com.sun.star.document.XExporter;
import com.sun.star.lang.XComponent;
import com.sun.star.lang.XMultiServiceFactory;
@@ -126,10 +127,11 @@ public class XMLMetaExporter extends TestCase {
xEx.setSourceDocument(xMathDoc);
// setting a new name and value for user info field
- XDocumentInfoSupplier xDocInfoSup = UnoRuntime.queryInterface(XDocumentInfoSupplier.class, xMathDoc) ;
- XDocumentInfo xDocInfo = xDocInfoSup.getDocumentInfo() ;
- xDocInfo.setUserFieldName((short) 0, expName) ;
- xDocInfo.setUserFieldValue((short) 0, expValue) ;
+ XDocumentPropertiesSupplier xPropSup = UnoRuntime.queryInterface
+ (XDocumentPropertiesSupplier.class, xMathDoc);
+ final XDocumentProperties xDocProps = xPropSup.getDocumentProperties();
+ XPropertyContainer xProps = xDocProps.getUserDefinedProperties();
+ xProps.addProperty(expName, (short)0, expValue);
} catch (com.sun.star.uno.Exception e) {
e.printStackTrace(log) ;
throw new StatusException("Can't create component.", e) ;
diff --git a/qadevOOo/tests/java/mod/_sm/XMLMetaImporter.java b/qadevOOo/tests/java/mod/_sm/XMLMetaImporter.java
index bde9b09712cb..ebd31ebca4e2 100644
--- a/qadevOOo/tests/java/mod/_sm/XMLMetaImporter.java
+++ b/qadevOOo/tests/java/mod/_sm/XMLMetaImporter.java
@@ -27,8 +27,10 @@ import lib.TestParameters;
import util.SOfficeFactory;
import com.sun.star.beans.XPropertySet;
-import com.sun.star.document.XDocumentInfo;
-import com.sun.star.document.XDocumentInfoSupplier;
+import com.sun.star.beans.XPropertySetInfo;
+import com.sun.star.beans.Property;
+import com.sun.star.document.XDocumentPropertiesSupplier;
+import com.sun.star.document.XDocumentProperties;
import com.sun.star.lang.XComponent;
import com.sun.star.lang.XMultiServiceFactory;
import com.sun.star.uno.UnoRuntime;
@@ -114,13 +116,9 @@ public class XMLMetaImporter extends TestCase {
final String impValue = "XMLMetaImporter_Value" ;
final String impTitle = "XMLMetaImporter Title" ;
- final XDocumentInfoSupplier xDocInfoSup ;
try {
oObj = (XInterface)xMSF.createInstance(
"com.sun.star.comp.Math.XMLMetaImporter");
-
- xDocInfoSup = UnoRuntime.queryInterface
- (XDocumentInfoSupplier.class, xMathDoc) ;
} catch (com.sun.star.uno.Exception e) {
e.printStackTrace(log);
throw new StatusException("Unexpected exception", e);
@@ -156,20 +154,29 @@ public class XMLMetaImporter extends TestCase {
new ifc.xml.sax._XDocumentHandler.ImportChecker() {
public boolean checkImport() {
try {
- XDocumentInfo xDocInfo = xDocInfoSup.getDocumentInfo() ;
- XPropertySet xDocInfoProp = UnoRuntime.queryInterface
- (XPropertySet.class, xDocInfo) ;
- boolean result = false ;
- for (short i = 0; i < xDocInfo.getUserFieldCount(); i++) {
- String gName = xDocInfo.getUserFieldName(i) ;
- String gValue = xDocInfo.getUserFieldValue(i) ;
+ XDocumentPropertiesSupplier xPropSup =
+ UnoRuntime.queryInterface
+ (XDocumentPropertiesSupplier.class, xMathDoc);
+ final XDocumentProperties xDocProps =
+ xPropSup.getDocumentProperties();
+
+ XPropertySet xUDProps = UnoRuntime.queryInterface(
+ XPropertySet.class,
+ xDocProps.getUserDefinedProperties());
+ XPropertySetInfo xInfo =
+ xUDProps.getPropertySetInfo();
+ Property[] props = xInfo.getProperties();
+ boolean result = false;
+ for (int i = 0; i < props.length; i++) {
+ String gName = props[i].Name;
+ String gValue = (String)
+ xUDProps.getPropertyValue(gName);
logF.println("Field '" + gName + "' = '"
+ gValue + "'") ;
if (impName.equals(gName) && impValue.equals(gValue))
result = true ;
}
- String gTitle = (String) xDocInfoProp.getPropertyValue
- ("Title");
+ String gTitle = xDocProps.getTitle();
logF.println("Title returned : '" + gTitle + "'");
result &= impTitle.equals(gTitle) ;
diff --git a/qadevOOo/tests/java/mod/_sw/XMLMetaExporter.java b/qadevOOo/tests/java/mod/_sw/XMLMetaExporter.java
index dadcd90ddbd5..1de4f4baee13 100644
--- a/qadevOOo/tests/java/mod/_sw/XMLMetaExporter.java
+++ b/qadevOOo/tests/java/mod/_sw/XMLMetaExporter.java
@@ -28,7 +28,8 @@ import util.SOfficeFactory;
import util.XMLTools;
import com.sun.star.beans.XPropertySet;
-import com.sun.star.document.XDocumentInfoSupplier;
+import com.sun.star.document.XDocumentPropertiesSupplier;
+import com.sun.star.document.XDocumentProperties;
import com.sun.star.document.XExporter;
import com.sun.star.lang.XMultiServiceFactory;
import com.sun.star.text.XTextDocument;
@@ -129,12 +130,10 @@ public class XMLMetaExporter extends TestCase {
xEx.setSourceDocument(xTextDoc);
//set some meta data
- XDocumentInfoSupplier infoSup = UnoRuntime.queryInterface
- (XDocumentInfoSupplier.class, xTextDoc) ;
- XPropertySet docInfo = UnoRuntime.queryInterface
- (XPropertySet.class, infoSup.getDocumentInfo()) ;
- docInfo.setPropertyValue("Title", TITLE);
-
+ XDocumentPropertiesSupplier xPropSup = UnoRuntime.queryInterface
+ (XDocumentPropertiesSupplier.class, xTextDoc);
+ final XDocumentProperties xDocProps = xPropSup.getDocumentProperties();
+ xDocProps.setTitle(TITLE);
} catch (com.sun.star.uno.Exception e) {
e.printStackTrace(log) ;
throw new StatusException("Can't create component.", e) ;
diff --git a/qadevOOo/tests/java/mod/_sw/XMLMetaImporter.java b/qadevOOo/tests/java/mod/_sw/XMLMetaImporter.java
index c234003caf8c..7e071d8e504d 100644
--- a/qadevOOo/tests/java/mod/_sw/XMLMetaImporter.java
+++ b/qadevOOo/tests/java/mod/_sw/XMLMetaImporter.java
@@ -27,7 +27,8 @@ import lib.TestParameters;
import util.SOfficeFactory;
import com.sun.star.beans.XPropertySet;
-import com.sun.star.document.XDocumentInfoSupplier;
+import com.sun.star.document.XDocumentPropertiesSupplier;
+import com.sun.star.document.XDocumentProperties;
import com.sun.star.lang.XMultiServiceFactory;
import com.sun.star.text.XTextDocument;
import com.sun.star.uno.UnoRuntime;
@@ -153,24 +154,17 @@ public class XMLMetaImporter extends TestCase {
tEnv.addObjRelation("XDocumentHandler.XMLData", xml) ;
- XDocumentInfoSupplier infoSup = UnoRuntime.queryInterface
- (XDocumentInfoSupplier.class, xTextDoc) ;
- final XPropertySet docInfo = UnoRuntime.queryInterface
- (XPropertySet.class, infoSup.getDocumentInfo()) ;
+ XDocumentPropertiesSupplier xPropSup = UnoRuntime.queryInterface
+ (XDocumentPropertiesSupplier.class, xTextDoc);
+ final XDocumentProperties xDocProps = xPropSup.getDocumentProperties();
final PrintWriter logF = log ;
tEnv.addObjRelation("XDocumentHandler.ImportChecker",
new ifc.xml.sax._XDocumentHandler.ImportChecker() {
public boolean checkImport() {
- try {
- String title = (String) docInfo.getPropertyValue("Title") ;
- logF.println("Title returned = '" + title + "'") ;
- return impTitle.equals(title) ;
- } catch (com.sun.star.uno.Exception e) {
- logF.println("Exception occurred while checking filter :") ;
- e.printStackTrace(logF) ;
- return false ;
- }
+ String title = xDocProps.getTitle();
+ logF.println("Title returned = '" + title + "'") ;
+ return impTitle.equals(title) ;
}
}) ;
diff --git a/qadevOOo/tests/java/mod/_xmloff/Draw/XMLMetaExporter.java b/qadevOOo/tests/java/mod/_xmloff/Draw/XMLMetaExporter.java
index 01b61cb665f7..af8a5b7e83b0 100644
--- a/qadevOOo/tests/java/mod/_xmloff/Draw/XMLMetaExporter.java
+++ b/qadevOOo/tests/java/mod/_xmloff/Draw/XMLMetaExporter.java
@@ -28,7 +28,8 @@ import util.SOfficeFactory;
import util.XMLTools;
import com.sun.star.beans.XPropertySet;
-import com.sun.star.document.XDocumentInfoSupplier;
+import com.sun.star.document.XDocumentPropertiesSupplier;
+import com.sun.star.document.XDocumentProperties;
import com.sun.star.document.XExporter;
import com.sun.star.lang.XComponent;
import com.sun.star.lang.XMultiServiceFactory;
@@ -128,11 +129,10 @@ public class XMLMetaExporter extends TestCase {
xEx.setSourceDocument(xDrawDoc);
//set some meta data
- XDocumentInfoSupplier infoSup = UnoRuntime.queryInterface(XDocumentInfoSupplier.class,
- xDrawDoc) ;
- XPropertySet docInfo = UnoRuntime.queryInterface
- (XPropertySet.class, infoSup.getDocumentInfo()) ;
- docInfo.setPropertyValue("Title", TITLE);
+ XDocumentPropertiesSupplier xPropSup = UnoRuntime.queryInterface
+ (XDocumentPropertiesSupplier.class, xDrawDoc);
+ final XDocumentProperties xDocProps = xPropSup.getDocumentProperties();
+ xDocProps.setTitle(TITLE);
} catch (com.sun.star.uno.Exception e) {
e.printStackTrace(log) ;
diff --git a/qadevOOo/tests/java/mod/_xmloff/Draw/XMLMetaImporter.java b/qadevOOo/tests/java/mod/_xmloff/Draw/XMLMetaImporter.java
index 1fbfb34922c8..afbfad4dfd94 100644
--- a/qadevOOo/tests/java/mod/_xmloff/Draw/XMLMetaImporter.java
+++ b/qadevOOo/tests/java/mod/_xmloff/Draw/XMLMetaImporter.java
@@ -27,7 +27,8 @@ import lib.TestParameters;
import util.SOfficeFactory;
import com.sun.star.beans.XPropertySet;
-import com.sun.star.document.XDocumentInfoSupplier;
+import com.sun.star.document.XDocumentPropertiesSupplier;
+import com.sun.star.document.XDocumentProperties;
import com.sun.star.lang.XComponent;
import com.sun.star.lang.XMultiServiceFactory;
import com.sun.star.uno.UnoRuntime;
@@ -152,25 +153,17 @@ public class XMLMetaImporter extends TestCase {
tEnv.addObjRelation("XDocumentHandler.XMLData", xml) ;
//set some meta data
- XDocumentInfoSupplier infoSup = UnoRuntime.queryInterface
- (XDocumentInfoSupplier.class, xDrawDoc);
- final XPropertySet docInfo = UnoRuntime.queryInterface
- (XPropertySet.class, infoSup.getDocumentInfo());
+ XDocumentPropertiesSupplier xPropSup = UnoRuntime.queryInterface
+ (XDocumentPropertiesSupplier.class, xDrawDoc);
+ final XDocumentProperties xDocProps = xPropSup.getDocumentProperties();
final PrintWriter logF = log ;
tEnv.addObjRelation("XDocumentHandler.ImportChecker",
new ifc.xml.sax._XDocumentHandler.ImportChecker() {
public boolean checkImport() {
- try {
- String title = (String) docInfo.getPropertyValue
- ("Title") ;
- logF.println("Title returned = '" + title + "'") ;
- return impTitle.equals(title) ;
- } catch (com.sun.star.uno.Exception e) {
- logF.println("Exception occurred while checking filter :") ;
- e.printStackTrace(logF) ;
- return false ;
- }
+ String title = xDocProps.getTitle();
+ logF.println("Title returned = '" + title + "'") ;
+ return impTitle.equals(title) ;
}
}) ;
diff --git a/qadevOOo/tests/java/mod/_xmloff/Impress/XMLMetaExporter.java b/qadevOOo/tests/java/mod/_xmloff/Impress/XMLMetaExporter.java
index 1ab04a13492c..5a21079cd266 100644
--- a/qadevOOo/tests/java/mod/_xmloff/Impress/XMLMetaExporter.java
+++ b/qadevOOo/tests/java/mod/_xmloff/Impress/XMLMetaExporter.java
@@ -28,7 +28,8 @@ import util.SOfficeFactory;
import util.XMLTools;
import com.sun.star.beans.XPropertySet;
-import com.sun.star.document.XDocumentInfoSupplier;
+import com.sun.star.document.XDocumentPropertiesSupplier;
+import com.sun.star.document.XDocumentProperties;
import com.sun.star.document.XExporter;
import com.sun.star.lang.XComponent;
import com.sun.star.lang.XMultiServiceFactory;
@@ -128,12 +129,11 @@ public class XMLMetaExporter extends TestCase {
XExporter xEx = UnoRuntime.queryInterface(XExporter.class,oObj);
xEx.setSourceDocument(xImpressDoc);
- //change title name
- XDocumentInfoSupplier infoSup = UnoRuntime.queryInterface
- (XDocumentInfoSupplier.class, xImpressDoc) ;
- XPropertySet docInfo = UnoRuntime.queryInterface
- (XPropertySet.class, infoSup.getDocumentInfo()) ;
- docInfo.setPropertyValue("Title", NAME);
+ // change title name
+ XDocumentPropertiesSupplier xPropSup = UnoRuntime.queryInterface
+ (XDocumentPropertiesSupplier.class, xImpressDoc);
+ final XDocumentProperties xDocProps = xPropSup.getDocumentProperties();
+ xDocProps.setTitle(NAME);
} catch (com.sun.star.uno.Exception e) {
e.printStackTrace(log) ;
diff --git a/qadevOOo/tests/java/mod/_xmloff/Impress/XMLMetaImporter.java b/qadevOOo/tests/java/mod/_xmloff/Impress/XMLMetaImporter.java
index b504d262572a..6dbd37f6c12d 100644
--- a/qadevOOo/tests/java/mod/_xmloff/Impress/XMLMetaImporter.java
+++ b/qadevOOo/tests/java/mod/_xmloff/Impress/XMLMetaImporter.java
@@ -27,7 +27,8 @@ import lib.TestParameters;
import util.SOfficeFactory;
import com.sun.star.beans.XPropertySet;
-import com.sun.star.document.XDocumentInfoSupplier;
+import com.sun.star.document.XDocumentPropertiesSupplier;
+import com.sun.star.document.XDocumentProperties;
import com.sun.star.lang.XComponent;
import com.sun.star.lang.XMultiServiceFactory;
import com.sun.star.uno.UnoRuntime;
@@ -151,25 +152,17 @@ public class XMLMetaImporter extends TestCase {
tEnv.addObjRelation("XDocumentHandler.XMLData", xml) ;
- XDocumentInfoSupplier infoSup = UnoRuntime.queryInterface
- (XDocumentInfoSupplier.class, xImpressDoc) ;
- final XPropertySet docInfo = UnoRuntime.queryInterface
- (XPropertySet.class, infoSup.getDocumentInfo()) ;
+ XDocumentPropertiesSupplier xPropSup = UnoRuntime.queryInterface
+ (XDocumentPropertiesSupplier.class, xImpressDoc);
+ final XDocumentProperties xDocProps = xPropSup.getDocumentProperties();
final PrintWriter logF = log ;
tEnv.addObjRelation("XDocumentHandler.ImportChecker",
new ifc.xml.sax._XDocumentHandler.ImportChecker() {
public boolean checkImport() {
- try {
- String title = (String)
- docInfo.getPropertyValue("Title") ;
- logF.println("Title returned = '" + title + "'") ;
- return impTitle.equals(title) ;
- } catch (com.sun.star.uno.Exception e) {
- logF.println("Exception occurred while checking filter :") ;
- e.printStackTrace(logF) ;
- return false ;
- }
+ String title = xDocProps.getTitle();
+ logF.println("Title returned = '" + title + "'") ;
+ return impTitle.equals(title) ;
}
} );
diff --git a/sd/source/filter/ppt/pptin.cxx b/sd/source/filter/ppt/pptin.cxx
index acda309c46da..2ed3aeb6c15c 100644
--- a/sd/source/filter/ppt/pptin.cxx
+++ b/sd/source/filter/ppt/pptin.cxx
@@ -1367,7 +1367,7 @@ sal_Bool ImplSdPPTImport::Import()
delete pStbMgr;
- // read DocumentInfo
+ // read DocumentProperties
uno::Reference<document::XDocumentPropertiesSupplier> xDPS(
mpDoc->GetObjectShell()->GetModel(), uno::UNO_QUERY_THROW);
uno::Reference<document::XDocumentProperties> xDocProps
diff --git a/sfx2/inc/guisaveas.hxx b/sfx2/inc/guisaveas.hxx
index 689c237a9b52..514508745d79 100644
--- a/sfx2/inc/guisaveas.hxx
+++ b/sfx2/inc/guisaveas.hxx
@@ -35,7 +35,7 @@
namespace com { namespace sun { namespace star {
namespace document {
- class XDocumentInfo;
+ class XDocumentProperties;
}
} } }
@@ -75,7 +75,8 @@ public:
static void SetDocInfoState(
const ::com::sun::star::uno::Reference< ::com::sun::star::frame::XModel >& xModel,
- const ::com::sun::star::uno::Reference< ::com::sun::star::document::XDocumentInfo>& i_xOldDocInfo,
+ const ::com::sun::star::uno::Reference<
+ ::com::sun::star::document::XDocumentProperties>& i_xOldDocInfo,
sal_Bool bNoModify );
static sal_Bool WarnUnacceptableFormat(
diff --git a/sfx2/source/appl/appopen.cxx b/sfx2/source/appl/appopen.cxx
index 348f1c11f172..6c764b8a2dc8 100644
--- a/sfx2/source/appl/appopen.cxx
+++ b/sfx2/source/appl/appopen.cxx
@@ -223,7 +223,7 @@ void SetTemplate_Impl( const String &rFileName,
const String &rLongName,
SfxObjectShell *pDoc)
{
- // write TemplateName to DocumentInfo of document
+ // write TemplateName to DocumentProperties of document
// TemplateDate stays as default (=current date)
pDoc->ResetFromTemplate( rLongName, rFileName );
}
diff --git a/sfx2/source/doc/doctemplates.cxx b/sfx2/source/doc/doctemplates.cxx
index 92b91947e841..a724dea9f236 100644
--- a/sfx2/source/doc/doctemplates.cxx
+++ b/sfx2/source/doc/doctemplates.cxx
@@ -42,7 +42,7 @@
#include <com/sun/star/configuration/theDefaultProvider.hpp>
#include <com/sun/star/container/XContainerQuery.hpp>
#include <com/sun/star/document/XTypeDetection.hpp>
-#include <com/sun/star/document/XStandaloneDocumentInfo.hpp>
+#include <com/sun/star/document/DocumentProperties.hpp>
#include <com/sun/star/io/TempFile.hpp>
#include <com/sun/star/sdbc/XResultSet.hpp>
#include <com/sun/star/sdbc/XRow.hpp>
@@ -75,7 +75,6 @@
#define TEMPLATE_IMPLEMENTATION_NAME "com.sun.star.comp.sfx2.DocumentTemplates"
#define SERVICENAME_TYPEDETECTION "com.sun.star.document.TypeDetection"
-#define SERVICENAME_DOCINFO "com.sun.star.document.StandaloneDocumentInfo"
#define TEMPLATE_ROOT_URL "vnd.sun.star.hier:/templates"
#define TITLE "Title"
@@ -177,7 +176,7 @@ class SfxDocTplService_Impl
{
uno::Reference< XMultiServiceFactory > mxFactory;
uno::Reference< XCommandEnvironment > maCmdEnv;
- uno::Reference< XStandaloneDocumentInfo > mxInfo;
+ uno::Reference<XDocumentProperties> m_xDocProps;
uno::Reference< XTypeDetection > mxType;
::osl::Mutex maMutex;
@@ -441,16 +440,15 @@ void SfxDocTplService_Impl::init_Impl()
if ( bIsInitialized )
{
- OUString aService( SERVICENAME_DOCINFO );
try {
- mxInfo = uno::Reference< XStandaloneDocumentInfo > (
- mxFactory->createInstance( aService ), UNO_QUERY );
- } catch (uno::RuntimeException &) {
- OSL_FAIL("SfxDocTplService_Impl::init_Impl: "
- "cannot create DocumentProperties service");
+ m_xDocProps.set(document::DocumentProperties::create(
+ ::comphelper::getProcessComponentContext()));
+ } catch (uno::RuntimeException const& e) {
+ SAL_WARN("sfx.doc", "SfxDocTplService_Impl::init_Impl: "
+ "cannot create DocumentProperties service:" << e.Message);
}
- aService = OUString( SERVICENAME_TYPEDETECTION );
+ OUString const aService = OUString( SERVICENAME_TYPEDETECTION );
mxType = uno::Reference< XTypeDetection > ( mxFactory->createInstance( aService ), UNO_QUERY );
getDirList();
@@ -643,24 +641,20 @@ sal_Bool SfxDocTplService_Impl::needsUpdate()
// -----------------------------------------------------------------------
sal_Bool SfxDocTplService_Impl::setTitleForURL( const OUString& rURL, const OUString& aTitle )
{
- sal_Bool bResult = sal_False;
- if ( mxInfo.is() )
+ if (m_xDocProps.is())
{
try
{
- mxInfo->loadFromURL( rURL );
- uno::Reference< XPropertySet > xPropSet( mxInfo, UNO_QUERY_THROW );
- OUString aPropName( TITLE );
- xPropSet->setPropertyValue( aPropName, uno::makeAny( aTitle ) );
- mxInfo->storeIntoURL( rURL );
- bResult = sal_True;
+ m_xDocProps->loadFromMedium(rURL, Sequence<PropertyValue>());
+ m_xDocProps->setTitle(aTitle );
+ m_xDocProps->storeToMedium(rURL, Sequence<PropertyValue>());
+ return true;
}
catch ( Exception& )
{
}
}
-
- return bResult;
+ return false;
}
// -----------------------------------------------------------------------
@@ -668,32 +662,16 @@ sal_Bool SfxDocTplService_Impl::getTitleFromURL( const OUString& rURL, OUString&
{
bDocHasTitle = sal_False;
- if ( mxInfo.is() )
+ if (m_xDocProps.is())
{
try
{
- mxInfo->loadFromURL( rURL );
+ m_xDocProps->loadFromMedium(rURL, Sequence<PropertyValue>());
+ aTitle = m_xDocProps->getTitle();
}
catch ( Exception& )
{
}
-
- try
- {
- uno::Reference< XPropertySet > aPropSet( mxInfo, UNO_QUERY );
- if ( aPropSet.is() )
- {
- OUString aPropName( TITLE );
- Any aValue = aPropSet->getPropertyValue( aPropName );
- aValue >>= aTitle;
-
- aPropName = OUString( "MIMEType" );
- aValue = aPropSet->getPropertyValue( aPropName );
- aValue >>= aType;
- }
- }
- catch ( UnknownPropertyException& ) {}
- catch ( Exception& ) {}
}
if ( aType.isEmpty() && mxType.is() )
diff --git a/sfx2/source/doc/guisaveas.cxx b/sfx2/source/doc/guisaveas.cxx
index f90432f12006..c6af31615da8 100644
--- a/sfx2/source/doc/guisaveas.cxx
+++ b/sfx2/source/doc/guisaveas.cxx
@@ -29,8 +29,8 @@
#include <com/sun/star/beans/XPropertyContainer.hpp>
#include <com/sun/star/beans/PropertyAttribute.hpp>
#include <com/sun/star/document/XExporter.hpp>
-#include <com/sun/star/document/XDocumentInfoSupplier.hpp>
-#include <com/sun/star/document/XDocumentInfo.hpp>
+#include <com/sun/star/document/XDocumentPropertiesSupplier.hpp>
+#include <com/sun/star/document/XDocumentProperties.hpp>
#include <com/sun/star/task/InteractionHandler.hpp>
#include <com/sun/star/util/DateTime.hpp>
#include <com/sun/star/util/URLTransformer.hpp>
@@ -1579,11 +1579,11 @@ sal_Bool SfxStoringHelper::GUIStoreModel( const uno::Reference< frame::XModel >&
// so the document info can be updated
// on export document info must be preserved
- uno::Reference<document::XDocumentInfoSupplier> xDIS(
+ uno::Reference<document::XDocumentPropertiesSupplier> xDPS(
aModelData.GetModel(), uno::UNO_QUERY_THROW);
uno::Reference<util::XCloneable> xCloneable(
- xDIS->getDocumentInfo(), uno::UNO_QUERY_THROW);
- uno::Reference<document::XDocumentInfo> xOldDocInfo(
+ xDPS->getDocumentProperties(), uno::UNO_QUERY_THROW);
+ uno::Reference<document::XDocumentProperties> xOldDocProps(
xCloneable->createClone(), uno::UNO_QUERY_THROW);
// use dispatch API to show document info dialog
@@ -1605,13 +1605,16 @@ sal_Bool SfxStoringHelper::GUIStoreModel( const uno::Reference< frame::XModel >&
catch( const uno::Exception& )
{
if ( ( nStoreMode & EXPORT_REQUESTED ) )
- SetDocInfoState( aModelData.GetModel(), xOldDocInfo, sal_True );
-
+ {
+ SetDocInfoState(aModelData.GetModel(), xOldDocProps, sal_True);
+ }
throw;
}
if ( ( nStoreMode & EXPORT_REQUESTED ) )
- SetDocInfoState( aModelData.GetModel(), xOldDocInfo, sal_True );
+ {
+ SetDocInfoState(aModelData.GetModel(), xOldDocProps, sal_True);
+ }
}
else
{
@@ -1665,16 +1668,15 @@ sal_Bool SfxStoringHelper::CheckFilterOptionsAppearence(
// static
void SfxStoringHelper::SetDocInfoState(
const uno::Reference< frame::XModel >& xModel,
- const uno::Reference< document::XDocumentInfo >& i_xOldDocInfo,
+ const uno::Reference< document::XDocumentProperties>& i_xOldDocProps,
sal_Bool bNoModify )
{
- uno::Reference< document::XDocumentInfoSupplier > xModelDocInfoSupplier( xModel, uno::UNO_QUERY );
- if ( !xModelDocInfoSupplier.is() )
- throw uno::RuntimeException(); // TODO:
-
- uno::Reference< document::XDocumentInfo > xDocInfoToFill = xModelDocInfoSupplier->getDocumentInfo();
- uno::Reference< beans::XPropertySet > xPropSet( i_xOldDocInfo,
- uno::UNO_QUERY_THROW );
+ uno::Reference<document::XDocumentPropertiesSupplier> const
+ xModelDocPropsSupplier(xModel, uno::UNO_QUERY_THROW);
+ uno::Reference<document::XDocumentProperties> const xDocPropsToFill =
+ xModelDocPropsSupplier->getDocumentProperties();
+ uno::Reference< beans::XPropertySet > const xPropSet(
+ i_xOldDocProps->getUserDefinedProperties(), uno::UNO_QUERY_THROW);
uno::Reference< util::XModifiable > xModifiable( xModel, uno::UNO_QUERY );
if ( bNoModify && !xModifiable.is() )
@@ -1684,7 +1686,8 @@ void SfxStoringHelper::SetDocInfoState(
try
{
- uno::Reference< beans::XPropertySet > xSet( xDocInfoToFill, uno::UNO_QUERY );
+ uno::Reference< beans::XPropertySet > const xSet(
+ xDocPropsToFill->getUserDefinedProperties(), uno::UNO_QUERY);
uno::Reference< beans::XPropertyContainer > xContainer( xSet, uno::UNO_QUERY );
uno::Reference< beans::XPropertySetInfo > xSetInfo = xSet->getPropertySetInfo();
uno::Sequence< beans::Property > lProps = xSetInfo->getProperties();
@@ -1695,8 +1698,12 @@ void SfxStoringHelper::SetDocInfoState(
{
uno::Any aValue = xPropSet->getPropertyValue( pProps[i].Name );
if ( pProps[i].Attributes & ::com::sun::star::beans::PropertyAttribute::REMOVABLE )
+ try
+ {
// QUESTION: DefaultValue?!
xContainer->addProperty( pProps[i].Name, pProps[i].Attributes, aValue );
+ }
+ catch (beans::PropertyExistException const&) {}
try
{
// it is possible that the propertysets from XML and binary files differ; we shouldn't break then
@@ -1705,17 +1712,30 @@ void SfxStoringHelper::SetDocInfoState(
catch ( const uno::Exception& ) {}
}
- sal_Int16 nCount = i_xOldDocInfo->getUserFieldCount();
- sal_Int16 nSupportedCount = xDocInfoToFill->getUserFieldCount();
- for ( sal_Int16 nInd = 0; nInd < nCount && nInd < nSupportedCount; nInd++ )
- {
- ::rtl::OUString aPropName = i_xOldDocInfo->getUserFieldName( nInd );
- xDocInfoToFill->setUserFieldName( nInd, aPropName );
- ::rtl::OUString aPropVal = i_xOldDocInfo->getUserFieldValue( nInd );
- xDocInfoToFill->setUserFieldValue( nInd, aPropVal );
- }
+ // sigh... have to set these manually i'm afraid... wonder why
+ // SfxObjectShell doesn't handle this internally, should be easier
+ xDocPropsToFill->setAuthor(i_xOldDocProps->getAuthor());
+ xDocPropsToFill->setGenerator(i_xOldDocProps->getGenerator());
+ xDocPropsToFill->setCreationDate(i_xOldDocProps->getCreationDate());
+ xDocPropsToFill->setTitle(i_xOldDocProps->getTitle());
+ xDocPropsToFill->setSubject(i_xOldDocProps->getSubject());
+ xDocPropsToFill->setDescription(i_xOldDocProps->getDescription());
+ xDocPropsToFill->setKeywords(i_xOldDocProps->getKeywords());
+ xDocPropsToFill->setModifiedBy(i_xOldDocProps->getModifiedBy());
+ xDocPropsToFill->setModificationDate(i_xOldDocProps->getModificationDate());
+ xDocPropsToFill->setPrintedBy(i_xOldDocProps->getPrintedBy());
+ xDocPropsToFill->setPrintDate(i_xOldDocProps->getPrintDate());
+ xDocPropsToFill->setAutoloadURL(i_xOldDocProps->getAutoloadURL());
+ xDocPropsToFill->setAutoloadSecs(i_xOldDocProps->getAutoloadSecs());
+ xDocPropsToFill->setDefaultTarget(i_xOldDocProps->getDefaultTarget());
+ xDocPropsToFill->setEditingCycles(i_xOldDocProps->getEditingCycles());
+ xDocPropsToFill->setEditingDuration(i_xOldDocProps->getEditingDuration());
+ // other attributes e.g. DocumentStatistics are not editable from dialog
+ }
+ catch (const uno::Exception& e)
+ {
+ SAL_INFO("sfx.doc", "SetDocInfoState: caught exception: " << e.Message);
}
- catch ( const uno::Exception& ) {}
// set the modified flag back if required
if ( bNoModify && bIsModified != xModifiable->isModified() )
diff --git a/sfx2/source/doc/objcont.cxx b/sfx2/source/doc/objcont.cxx
index c96162e454d1..8511f63354e9 100644
--- a/sfx2/source/doc/objcont.cxx
+++ b/sfx2/source/doc/objcont.cxx
@@ -20,12 +20,11 @@
#include <com/sun/star/uno/Reference.hxx>
+#include <com/sun/star/document/DocumentProperties.hpp>
#include <com/sun/star/document/XDocumentProperties.hpp>
#include <com/sun/star/document/UpdateDocMode.hpp>
#include <com/sun/star/frame/XLayoutManager.hpp>
#include <com/sun/star/embed/ElementModes.hpp>
-#include <com/sun/star/document/XStandaloneDocumentInfo.hpp>
-#include <com/sun/star/beans/XFastPropertySet.hpp>
#include <vcl/msgbox.hxx>
#include <svl/style.hxx>
#include <vcl/wrkwin.hxx>
@@ -893,29 +892,22 @@ void SfxObjectShell::UpdateFromTemplate_Impl( )
// should the document checked against changes in the template ?
if ( IsQueryLoadTemplate() )
{
- // load document info of template
- sal_Bool bOK = sal_False;
+ // load document properties of template
+ bool bOK = false;
util::DateTime aTemplDate;
try
{
- Reference < document::XStandaloneDocumentInfo > xDocInfo (
- ::comphelper::getProcessServiceFactory()->createInstance(
- ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM(
- "com.sun.star.document.StandaloneDocumentInfo") ) ),
- UNO_QUERY_THROW );
- Reference < beans::XFastPropertySet > xSet( xDocInfo,
- UNO_QUERY_THROW );
- xDocInfo->loadFromURL( aTemplURL );
- Any aAny = xSet->getFastPropertyValue( WID_DATE_MODIFIED );
- ::com::sun::star::util::DateTime aTmp;
- if ( aAny >>= aTemplDate )
- {
- // get modify date from document info
- bOK = sal_True;
- }
+ Reference<document::XDocumentProperties> const
+ xTemplateDocProps( document::DocumentProperties::create(
+ ::comphelper::getProcessComponentContext()));
+ xTemplateDocProps->loadFromMedium(aTemplURL,
+ Sequence<beans::PropertyValue>());
+ aTemplDate = xTemplateDocProps->getModificationDate();
+ bOK = true;
}
- catch (const Exception&)
+ catch (const Exception& e)
{
+ SAL_INFO("sfx.doc", "caught exception" << e.Message);
}
// if modify date was read successfully
diff --git a/sfx2/source/doc/objxtor.cxx b/sfx2/source/doc/objxtor.cxx
index deee41ba3368..08b2743acc7f 100644
--- a/sfx2/source/doc/objxtor.cxx
+++ b/sfx2/source/doc/objxtor.cxx
@@ -110,7 +110,6 @@ using ::basic::BasicManagerRepository;
DBG_NAME(SfxObjectShell)
-#define DocumentInfo
#include "sfxslots.hxx"
namespace {
diff --git a/svtools/source/contnr/contentenumeration.cxx b/svtools/source/contnr/contentenumeration.cxx
index c317a233abdc..766221a5badc 100644
--- a/svtools/source/contnr/contentenumeration.cxx
+++ b/svtools/source/contnr/contentenumeration.cxx
@@ -29,6 +29,7 @@
#include <com/sun/star/ucb/XContentAccess.hpp>
#include <com/sun/star/util/DateTime.hpp>
#include <com/sun/star/lang/XMultiServiceFactory.hpp>
+#include <com/sun/star/document/DocumentProperties.hpp>
#include <comphelper/processfactory.hxx>
#include <tools/debug.hxx>
#include <vcl/svapp.hxx>
@@ -71,6 +72,8 @@ namespace svt
using ::com::sun::star::ucb::XContentAccess;
using ::com::sun::star::ucb::XCommandEnvironment;
using ::com::sun::star::beans::XPropertySet;
+ using ::com::sun::star::beans::PropertyValue;
+ using ::com::sun::star::document::DocumentProperties;
using ::rtl::OUString;
using ::ucbhelper::ResultSetInclude;
using ::ucbhelper::INCLUDE_FOLDERS_AND_DOCUMENTS;
@@ -379,26 +382,20 @@ namespace svt
try
{
::osl::MutexGuard aGuard( m_aMutex );
- if( !m_xDocInfo.is() )
+ if (!m_xDocProps.is())
{
- m_xDocInfo = m_xDocInfo.query(
- ::comphelper::getProcessServiceFactory()->createInstance(
- String( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.document.StandaloneDocumentInfo") )
- )
- );
+ m_xDocProps.set(DocumentProperties::create(
+ ::comphelper::getProcessComponentContext()));
}
- DBG_ASSERT( m_xDocInfo.is(), "FileViewContentEnumerator::implGetDocTitle: no DocumentProperties service!" );
- if ( !m_xDocInfo.is() )
+ assert(m_xDocProps.is());
+ if (!m_xDocProps.is())
return sal_False;
- m_xDocInfo->loadFromURL( _rTargetURL );
- Reference< XPropertySet > xPropSet( m_xDocInfo, UNO_QUERY );
+ m_xDocProps->loadFromMedium(_rTargetURL, Sequence<PropertyValue>());
- Any aAny = xPropSet->getPropertyValue( OUString( RTL_CONSTASCII_USTRINGPARAM( "Title" )) );
-
- OUString sTitle;
- if ( ( aAny >>= sTitle ) && !sTitle.isEmpty() )
+ OUString const sTitle(m_xDocProps->getTitle());
+ if (!sTitle.isEmpty())
{
_rRet = sTitle;
bRet = sal_True;
diff --git a/svtools/source/contnr/contentenumeration.hxx b/svtools/source/contnr/contentenumeration.hxx
index 8188bde91f59..775f2a661f25 100644
--- a/svtools/source/contnr/contentenumeration.hxx
+++ b/svtools/source/contnr/contentenumeration.hxx
@@ -21,7 +21,7 @@
#define SVTOOLS_SOURCE_CONTNR_CONTENTENUMERATION_HXX
#include <com/sun/star/ucb/XCommandEnvironment.hpp>
-#include <com/sun/star/document/XStandaloneDocumentInfo.hpp>
+#include <com/sun/star/document/XDocumentProperties.hpp>
#include <salhelper/thread.hxx>
#include <ucbhelper/content.hxx>
#include <rtl/ustring.hxx>
@@ -198,8 +198,9 @@ namespace svt
IEnumerationResultHandler* m_pResultHandler;
bool m_bCancelled;
- mutable ::com::sun::star::uno::Reference< ::com::sun::star::document::XStandaloneDocumentInfo >
- m_xDocInfo;
+ mutable ::com::sun::star::uno::Reference<
+ ::com::sun::star::document::XDocumentProperties>
+ m_xDocProps;
::com::sun::star::uno::Sequence< ::rtl::OUString > m_rBlackList;
diff --git a/sw/source/filter/html/swhtml.cxx b/sw/source/filter/html/swhtml.cxx
index 4c2d5e346871..b9eb5347036f 100644
--- a/sw/source/filter/html/swhtml.cxx
+++ b/sw/source/filter/html/swhtml.cxx
@@ -845,7 +845,7 @@ if( pSttNdIdx->GetIndex()+1 == pPam->GetBound( sal_False ).nNode.GetIndex() )
}
}
- // und noch die DocumentInfo aufbereiten
+ // adjust AutoLoad in DocumentProperties
if( IsNewDoc() )
{
SwDocShell *pDocShell(pDoc->GetDocShell());
diff --git a/sw/source/filter/ww8/ww8par.cxx b/sw/source/filter/ww8/ww8par.cxx
index 0bd27b23050a..ef163cd62132 100644
--- a/sw/source/filter/ww8/ww8par.cxx
+++ b/sw/source/filter/ww8/ww8par.cxx
@@ -106,7 +106,6 @@
#include "ww8toolbar.hxx"
#include <osl/file.hxx>
-#include <com/sun/star/document/XDocumentInfoSupplier.hpp>
#include <breakit.hxx>
@@ -1453,7 +1452,7 @@ void SwWW8ImplReader::Read_Tab(sal_uInt16 , const sal_uInt8* pData, short nLen)
void SwWW8ImplReader::ImportDop()
{
- // correct the LastPrinted date in DocumentInfo
+ // correct the LastPrinted date in DocumentProperties
uno::Reference<document::XDocumentPropertiesSupplier> xDPS(
mpDocShell->GetModel(), uno::UNO_QUERY_THROW);
uno::Reference<document::XDocumentProperties> xDocuProps(
@@ -4561,8 +4560,8 @@ sal_uLong SwWW8ImplReader::CoreLoad(WW8Glossary *pGloss, const SwPosition &rPos)
if (mbNewDoc && pStg && !pGloss) /*meaningless for a glossary, cmc*/
{
mpDocShell->SetIsTemplate( pWwFib->fDot ); // point at tgc record
- uno::Reference< document::XDocumentInfoSupplier > xDocInfoSupp( mpDocShell->GetModel(), uno::UNO_QUERY_THROW );
- uno::Reference< document::XDocumentPropertiesSupplier > xDocPropSupp( xDocInfoSupp->getDocumentInfo(), uno::UNO_QUERY_THROW );
+ uno::Reference<document::XDocumentPropertiesSupplier> const
+ xDocPropSupp(mpDocShell->GetModel(), uno::UNO_QUERY_THROW);
uno::Reference< document::XDocumentProperties > xDocProps( xDocPropSupp->getDocumentProperties(), uno::UNO_QUERY_THROW );
rtl::OUString sCreatedFrom = xDocProps->getTemplateURL();
diff --git a/sw/source/ui/vba/vbadocument.cxx b/sw/source/ui/vba/vbadocument.cxx
index 604521849ef4..395f684fe4b0 100644
--- a/sw/source/ui/vba/vbadocument.cxx
+++ b/sw/source/ui/vba/vbadocument.cxx
@@ -33,7 +33,6 @@
#include "vbavariables.hxx"
#include <com/sun/star/text/XBookmarksSupplier.hpp>
#include <com/sun/star/document/XDocumentPropertiesSupplier.hpp>
-#include <com/sun/star/document/XDocumentInfoSupplier.hpp>
#include <com/sun/star/document/XDocumentProperties.hpp>
#include <com/sun/star/drawing/XDrawPageSupplier.hpp>
#include <com/sun/star/drawing/XControlShape.hpp>
@@ -260,8 +259,8 @@ uno::Any SAL_CALL
SwVbaDocument::getAttachedTemplate() throw (uno::RuntimeException)
{
uno::Reference< word::XTemplate > xTemplate;
- uno::Reference< document::XDocumentInfoSupplier > xDocInfoSupp( getModel(), uno::UNO_QUERY_THROW );
- uno::Reference< document::XDocumentPropertiesSupplier > xDocPropSupp( xDocInfoSupp->getDocumentInfo(), uno::UNO_QUERY_THROW );
+ uno::Reference<document::XDocumentPropertiesSupplier> const xDocPropSupp(
+ getModel(), uno::UNO_QUERY_THROW);
uno::Reference< document::XDocumentProperties > xDocProps( xDocPropSupp->getDocumentProperties(), uno::UNO_QUERY_THROW );
rtl::OUString sTemplateUrl = xDocProps->getTemplateURL();
@@ -287,8 +286,8 @@ SwVbaDocument::setAttachedTemplate( const css::uno::Any& _attachedtemplate ) thr
osl::FileBase::getFileURLFromSystemPath( sTemplate, aURL );
uno::Reference< word::XTemplate > xTemplate;
- uno::Reference< document::XDocumentInfoSupplier > xDocInfoSupp( getModel(), uno::UNO_QUERY_THROW );
- uno::Reference< document::XDocumentPropertiesSupplier > xDocPropSupp( xDocInfoSupp->getDocumentInfo(), uno::UNO_QUERY_THROW );
+ uno::Reference<document::XDocumentPropertiesSupplier> const xDocPropSupp(
+ getModel(), uno::UNO_QUERY_THROW );
uno::Reference< document::XDocumentProperties > xDocProps( xDocPropSupp->getDocumentProperties(), uno::UNO_QUERY_THROW );
xDocProps->setTemplateURL( aURL );
}
diff --git a/sw/source/ui/vba/vbadocumentproperties.cxx b/sw/source/ui/vba/vbadocumentproperties.cxx
index 8cd8b4b48844..80a06f2bbd2b 100644
--- a/sw/source/ui/vba/vbadocumentproperties.cxx
+++ b/sw/source/ui/vba/vbadocumentproperties.cxx
@@ -28,7 +28,7 @@
#include "vbadocumentproperties.hxx"
#include <cppuhelper/implbase1.hxx>
#include <cppuhelper/implbase3.hxx>
-#include <com/sun/star/document/XDocumentInfoSupplier.hpp>
+#include <com/sun/star/document/XDocumentProperties.hpp>
#include <com/sun/star/document/XDocumentPropertiesSupplier.hpp>
#include <com/sun/star/beans/NamedValue.hpp>
#include <com/sun/star/beans/XPropertyContainer.hpp>
@@ -73,17 +73,22 @@ class PropertGetSetHelper
{
protected:
uno::Reference< frame::XModel > m_xModel;
- uno::Reference< beans::XPropertySet > mxProps;
+ uno::Reference<document::XDocumentProperties> m_xDocProps;
public:
PropertGetSetHelper( const uno::Reference< frame::XModel >& xModel ):m_xModel( xModel )
{
- uno::Reference< document::XDocumentInfoSupplier > xDocInfoSupp( m_xModel, uno::UNO_QUERY_THROW );
- mxProps.set( xDocInfoSupp->getDocumentInfo(), uno::UNO_QUERY_THROW );
+ uno::Reference<document::XDocumentPropertiesSupplier> const
+ xDocPropSupp(m_xModel, uno::UNO_QUERY_THROW);
+ m_xDocProps.set(xDocPropSupp->getDocumentProperties(),
+ uno::UNO_SET_THROW);
}
virtual ~PropertGetSetHelper() {}
virtual uno::Any getPropertyValue( const rtl::OUString& rPropName ) = 0;
virtual void setPropertyValue( const rtl::OUString& rPropName, const uno::Any& aValue ) = 0;
- virtual uno::Reference< beans::XPropertySet > getUnoProperties() { return mxProps; }
+ virtual uno::Reference< beans::XPropertySet > getUserDefinedProperties() {
+ return uno::Reference<beans::XPropertySet>(
+ m_xDocProps->getUserDefinedProperties(), uno::UNO_QUERY_THROW);
+ }
};
@@ -97,15 +102,174 @@ public:
{
if ( rPropName == "EditingDuration" )
{
- sal_Int32 nSecs = 0;
- mxProps->getPropertyValue( rPropName ) >>= nSecs;
+ sal_Int32 const nSecs = m_xDocProps->getEditingDuration();
return uno::makeAny( nSecs/60 ); // minutes
}
- return mxProps->getPropertyValue( rPropName );
+ else if ("Title" == rPropName)
+ {
+ return uno::makeAny(m_xDocProps->getTitle());
+ }
+ else if ("Subject" == rPropName)
+ {
+ return uno::makeAny(m_xDocProps->getSubject());
+ }
+ else if ("Author" == rPropName)
+ {
+ return uno::makeAny(m_xDocProps->getAuthor());
+ }
+ else if ("Keywords" == rPropName)
+ {
+ return uno::makeAny(m_xDocProps->getKeywords());
+ }
+ else if ("Description" == rPropName)
+ {
+ return uno::makeAny(m_xDocProps->getDescription());
+ }
+ else if ("Template" == rPropName)
+ {
+ return uno::makeAny(m_xDocProps->getTemplateName());
+ }
+ else if ("ModifiedBy" == rPropName)
+ {
+ return uno::makeAny(m_xDocProps->getModifiedBy());
+ }
+ else if ("Generator" == rPropName)
+ {
+ return uno::makeAny(m_xDocProps->getGenerator());
+ }
+ else if ("PrintDate" == rPropName)
+ {
+ return uno::makeAny(m_xDocProps->getPrintDate());
+ }
+ else if ("CreationDate" == rPropName)
+ {
+ return uno::makeAny(m_xDocProps->getCreationDate());
+ }
+ else if ("ModifyDate" == rPropName)
+ {
+ return uno::makeAny(m_xDocProps->getModificationDate());
+ }
+ else if ("AutoloadURL" == rPropName)
+ {
+ return uno::makeAny(m_xDocProps->getAutoloadURL());
+ }
+ else
+ {
+ // fall back to user-defined properties
+ return getUserDefinedProperties()->getPropertyValue(rPropName);
+ }
}
virtual void setPropertyValue( const rtl::OUString& rPropName, const uno::Any& aValue )
{
- mxProps->setPropertyValue( rPropName, aValue );
+ if ("EditingDuration" == rPropName)
+ {
+ sal_Int32 nMins = 0;
+ if (aValue >>= nMins)
+ {
+ m_xDocProps->setEditingDuration(nMins * 60); // convert minutes
+ }
+ }
+ else if ("Title" == rPropName)
+ {
+ OUString str;
+ if (aValue >>= str)
+ {
+ m_xDocProps->setTitle(str);
+ }
+ }
+ else if ("Subject" == rPropName)
+ {
+ OUString str;
+ if (aValue >>= str)
+ {
+ m_xDocProps->setSubject(str);
+ }
+ }
+ else if ("Author" == rPropName)
+ {
+ OUString str;
+ if (aValue >>= str)
+ {
+ m_xDocProps->setAuthor(str);
+ }
+ }
+ else if ("Keywords" == rPropName)
+ {
+ uno::Sequence<OUString> keywords;
+ if (aValue >>= keywords)
+ {
+ m_xDocProps->setKeywords(keywords);
+ }
+ }
+ else if ("Description" == rPropName)
+ {
+ OUString str;
+ if (aValue >>= str)
+ {
+ m_xDocProps->setDescription(str);
+ }
+ }
+ else if ("Template" == rPropName)
+ {
+ OUString str;
+ if (aValue >>= str)
+ {
+ m_xDocProps->setTemplateName(str);
+ }
+ }
+ else if ("ModifiedBy" == rPropName)
+ {
+ OUString str;
+ if (aValue >>= str)
+ {
+ m_xDocProps->setModifiedBy(str);
+ }
+ }
+ else if ("Generator" == rPropName)
+ {
+ OUString str;
+ if (aValue >>= str)
+ {
+ return m_xDocProps->setGenerator(str);
+ }
+ }
+ else if ("PrintDate" == rPropName)
+ {
+ util::DateTime dt;
+ if (aValue >>= dt)
+ {
+ m_xDocProps->setPrintDate(dt);
+ }
+ }
+ else if ("CreationDate" == rPropName)
+ {
+ util::DateTime dt;
+ if (aValue >>= dt)
+ {
+ m_xDocProps->setCreationDate(dt);
+ }
+ }
+ else if ("ModifyDate" == rPropName)
+ {
+ util::DateTime dt;
+ if (aValue >>= dt)
+ {
+ m_xDocProps->setModificationDate(dt);
+ }
+ }
+ else if ("AutoloadURL" == rPropName)
+ {
+ OUString str;
+ if (aValue >>= str)
+ {
+ m_xDocProps->setAutoloadURL(str);
+ }
+ }
+ else
+ {
+ // fall back to user-defined properties
+ getUserDefinedProperties()->setPropertyValue(rPropName, aValue);
+ }
}
};
@@ -114,11 +278,18 @@ class CustomPropertyGetSetHelper : public BuiltinPropertyGetSetHelper
public:
CustomPropertyGetSetHelper( const uno::Reference< frame::XModel >& xModel ) :BuiltinPropertyGetSetHelper( xModel )
{
- uno::Reference< document::XDocumentPropertiesSupplier > xDocPropSupp( mxProps, uno::UNO_QUERY_THROW );
- uno::Reference< document::XDocumentProperties > xDocProp( xDocPropSupp->getDocumentProperties(), uno::UNO_QUERY_THROW );
- mxProps.set( xDocProp->getUserDefinedProperties(), uno::UNO_QUERY_THROW );
+ }
+ virtual uno::Any getPropertyValue( const rtl::OUString& rPropName )
+ {
+ return getUserDefinedProperties()->getPropertyValue(rPropName);
+ }
+ virtual void setPropertyValue(
+ const rtl::OUString& rPropName, const uno::Any& rValue)
+ {
+ return getUserDefinedProperties()->setPropertyValue(rPropName, rValue);
}
};
+
class StatisticPropertyGetSetHelper : public PropertGetSetHelper
{
SwDocShell* mpDocShell;
@@ -131,7 +302,6 @@ public:
}
virtual uno::Any getPropertyValue( const rtl::OUString& rPropName )
{
- uno::Sequence< beans::NamedValue > stats;
try
{
// Characters, ParagraphCount & WordCount are available from
@@ -156,8 +326,8 @@ public:
}
else
{
- mxModelProps->getPropertyValue( rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("ParagraphCount") ) ) >>= stats;
- mxProps->getPropertyValue( rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("DocumentStatistic") ) ) >>= stats;
+ uno::Sequence< beans::NamedValue > const stats(
+ m_xDocProps->getDocumentStatistics());
sal_Int32 nLen = stats.getLength();
bool bFound = false;
@@ -177,9 +347,8 @@ public:
virtual void setPropertyValue( const rtl::OUString& rPropName, const uno::Any& aValue )
{
-
- uno::Sequence< beans::NamedValue > stats;
- mxProps->getPropertyValue( rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("DocumentStatistic") ) ) >>= stats;
+ uno::Sequence< beans::NamedValue > stats(
+ m_xDocProps->getDocumentStatistics());
sal_Int32 nLen = stats.getLength();
for ( sal_Int32 index = 0; index < nLen; ++index )
@@ -187,7 +356,7 @@ public:
if ( rPropName.equals( stats[ index ].Name ) )
{
stats[ index ].Value = aValue;
- mxProps->setPropertyValue( rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("DocumentStatistic") ), uno::makeAny( stats ) );
+ m_xDocProps->setDocumentStatistics(stats);
break;
}
}
@@ -225,12 +394,11 @@ public:
if ( mpPropGetSetHelper.get() )
mpPropGetSetHelper->setPropertyValue( msOOOPropName, rValue );
}
- uno::Reference< beans::XPropertySet > getUnoProperties()
+ uno::Reference< beans::XPropertySet > getUserDefinedProperties()
{
-
uno::Reference< beans::XPropertySet > xProps;
if ( mpPropGetSetHelper.get() )
- return mpPropGetSetHelper->getUnoProperties();
+ return mpPropGetSetHelper->getUserDefinedProperties();
return xProps;
}
};
@@ -376,7 +544,8 @@ SwVbaCustomDocumentProperty::setType( ::sal_Int8 /*Type*/ ) throw (script::Basic
void SAL_CALL
SwVbaCustomDocumentProperty::Delete( ) throw (script::BasicErrorException, uno::RuntimeException)
{
- uno::Reference< beans::XPropertyContainer > xContainer( mPropInfo.getUnoProperties(), uno::UNO_QUERY_THROW );
+ uno::Reference< beans::XPropertyContainer > xContainer(
+ mPropInfo.getUserDefinedProperties(), uno::UNO_QUERY_THROW);
xContainer->removeProperty( getName() );
}
@@ -512,7 +681,6 @@ protected:
uno::Reference< XHelperInterface > m_xParent;
uno::Reference< uno::XComponentContext > m_xContext;
uno::Reference< frame::XModel > m_xModel;
- uno::Reference< document::XDocumentInfo > m_xOOOBuiltIns;
DocProps mDocProps;
DocPropsByName mNamedDocProps;
@@ -643,11 +811,9 @@ public:
CustomPropertiesImpl( const uno::Reference< XHelperInterface >& xParent, const uno::Reference< uno::XComponentContext >& xContext, const uno::Reference< frame::XModel >& xModel ) : m_xParent( xParent ), m_xContext( xContext ), m_xModel( xModel )
{
// suck in the document( custom ) properties
- uno::Reference< document::XDocumentInfoSupplier > xDocInfoSupp( m_xModel, uno::UNO_QUERY_THROW );
- uno::Reference< document::XDocumentPropertiesSupplier > xDocPropSupp( xDocInfoSupp->getDocumentInfo(), uno::UNO_QUERY_THROW );
- uno::Reference< document::XDocumentProperties > xDocProp( xDocPropSupp->getDocumentProperties(), uno::UNO_QUERY_THROW );
- mxUserDefinedProp.set( xDocProp->getUserDefinedProperties(), uno::UNO_QUERY_THROW );
mpPropGetSetHelper.reset( new CustomPropertyGetSetHelper( m_xModel ) );
+ mxUserDefinedProp.set(mpPropGetSetHelper->getUserDefinedProperties(),
+ uno::UNO_SET_THROW);
};
// XIndexAccess
virtual ::sal_Int32 SAL_CALL getCount( ) throw (uno::RuntimeException)
diff --git a/swext/mediawiki/src/com/sun/star/wiki/Helper.java b/swext/mediawiki/src/com/sun/star/wiki/Helper.java
index c9a45959d975..9601579aa798 100644
--- a/swext/mediawiki/src/com/sun/star/wiki/Helper.java
+++ b/swext/mediawiki/src/com/sun/star/wiki/Helper.java
@@ -32,7 +32,8 @@ import com.sun.star.container.XContainerQuery;
import com.sun.star.container.XEnumeration;
import com.sun.star.container.XNameAccess;
import com.sun.star.container.XNameContainer;
-import com.sun.star.document.XDocumentInfoSupplier;
+import com.sun.star.document.XDocumentPropertiesSupplier;
+import com.sun.star.document.XDocumentProperties;
import com.sun.star.frame.XModel;
import com.sun.star.frame.XModuleManager;
import com.sun.star.io.XInputStream;
@@ -462,37 +463,18 @@ public class Helper
protected static String GetDocTitle( XModel xDoc )
{
- String sTitle = "";
- XDocumentInfoSupplier xDocInfoSup = ( XDocumentInfoSupplier ) UnoRuntime.queryInterface( XDocumentInfoSupplier.class, xDoc );
- XPropertySet xPropSet = ( XPropertySet ) UnoRuntime.queryInterface( XPropertySet.class, xDocInfoSup.getDocumentInfo() );
- try
- {
- sTitle = ( String ) xPropSet.getPropertyValue( "Title" );
- } catch ( Exception ex )
- {
- ex.printStackTrace();
- }
- return sTitle;
+ XDocumentPropertiesSupplier xDocPropSup =
+ UnoRuntime.queryInterface(XDocumentPropertiesSupplier.class, xDoc);
+ XDocumentProperties xDocProps = xDocPropSup.getDocumentProperties();
+ return xDocProps.getTitle();
}
protected static void SetDocTitle( XModel xDoc, String sTitle )
{
- XDocumentInfoSupplier xDocInfoSup = ( XDocumentInfoSupplier ) UnoRuntime.queryInterface( XDocumentInfoSupplier.class, xDoc );
- if ( xDocInfoSup != null )
- {
- XPropertySet xPropSet = ( XPropertySet ) UnoRuntime.queryInterface( XPropertySet.class, xDocInfoSup.getDocumentInfo() );
- if ( xPropSet != null )
- {
- try
- {
- xPropSet.setPropertyValue( "Title", sTitle );
- }
- catch ( Exception ex )
- {
- ex.printStackTrace();
- }
- }
- }
+ XDocumentPropertiesSupplier xDocPropSup =
+ UnoRuntime.queryInterface(XDocumentPropertiesSupplier.class, xDoc);
+ XDocumentProperties xDocProps = xDocPropSup.getDocumentProperties();
+ xDocProps.setTitle(sTitle);
}
protected static String GetDocServiceName( XComponentContext xContext, XModel xModel )
diff --git a/vbahelper/source/vbahelper/vbaapplicationbase.cxx b/vbahelper/source/vbahelper/vbaapplicationbase.cxx
index abdbe10c0fca..d64cf1aa3a5d 100644
--- a/vbahelper/source/vbahelper/vbaapplicationbase.cxx
+++ b/vbahelper/source/vbahelper/vbaapplicationbase.cxx
@@ -28,7 +28,6 @@
#include <com/sun/star/frame/XLayoutManager.hpp>
#include <com/sun/star/frame/XDesktop.hpp>
#include <com/sun/star/container/XEnumerationAccess.hpp>
-#include <com/sun/star/document/XDocumentInfoSupplier.hpp>
#include <com/sun/star/document/XDocumentProperties.hpp>
#include <com/sun/star/document/XDocumentPropertiesSupplier.hpp>
#include <com/sun/star/document/XEmbeddedScripts.hpp>