'************************************************************************* ' ' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. ' ' Copyright 2008 by Sun Microsystems, Inc. ' ' OpenOffice.org - a multi-platform office productivity suite ' ' $RCSfile: sm_XMLSettingsExporter.xba,v $ ' ' $Revision: 1.3 $ ' ' This file is part of OpenOffice.org. ' ' OpenOffice.org is free software: you can redistribute it and/or modify ' it under the terms of the GNU Lesser General Public License version 3 ' only, as published by the Free Software Foundation. ' ' OpenOffice.org is distributed in the hope that it will be useful, ' but WITHOUT ANY WARRANTY; without even the implied warranty of ' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ' GNU Lesser General Public License version 3 for more details ' (a copy is included in the LICENSE file that accompanied this code). ' ' You should have received a copy of the GNU Lesser General Public License ' version 3 along with OpenOffice.org. If not, see ' ' for a copy of the LGPLv3 License. ' '************************************************************************* '************************************************************************* ' Be sure that all variables are dimensioned: option explicit ' REQUIRED VARIABLES for interface/service tests: ' Required for com.sun.star.lang.XInitialization: Global aInitArgs() As Variant ' Required for com.sun.star.document.XFilter: Global oFilterDescriptor As Variant ' Required for com.sun.star.document.XExporter: Global oSrcDocument As Object Sub CreateObj() '************************************************************************* ' COMPONENT: ' sm.XMLSettingsExporter '************************************************************************* On Error Goto ErrHndl Dim initArgs(0) As Object Dim oMSF As Object Dim filter As Variant Dim printXML As Boolean Dim Tag1, Tag2 As Variant Dim expMargin As Integer printXML = true expMargin = 67 oMSF = getProcessServiceManager() oDoc = utils.createDocument("smath", cObjectName) oDocHandler = oMSF.createInstanceWithArguments("basichelper.DocumentHandler", Array(printXML)) Tag1 = Array("office:document-settings") Tag2 = Array("config:config-item", "config:name", "TopMargin") filter = Array( _ Array("TagExists", Tag1), _ Array("CharsEnclosed", Tag2, ""+expMargin) _ ) oDocHandler.initialize(filter) initArgs(0) = oDocHandler aInitArgs = initArgs() oObj = oMSF.createInstanceWithArguments("com.sun.star.comp.Math.XMLSettingsExporter", initArgs()) oDoc.setPropertyValue("TopMargin", expMargin) oObj.setSourceDocument(oDoc) Dim aFilterDescr(0) As New com.sun.star.beans.PropertyValue aFilterDescr(0).Name = "FilterName" aFilterDescr(0).Value = "smath: StarOffice XML (Formula)" oFilterDescriptor = aFilterDescr() oSrcDocument = oDoc Exit Sub ErrHndl: Test.Exception() End Sub Global oDocHandler As Object Function checkFilter() As Boolean checkFilter = oDocHandler.getByName("XMLIsCorrect") Out.Log(oDocHandler.getByName("XMLCode")) End Function