1cdf0e10cSrcweir<?xml version="1.0" encoding="UTF-8"?> 2cdf0e10cSrcweir<!DOCTYPE script:module PUBLIC "-//OpenOffice.org//DTD OfficeDocument 1.0//EN" "module.dtd"> 3cdf0e10cSrcweir<script:module xmlns:script="http://openoffice.org/2000/script" script:name="sd_SdXImpressDocument" script:language="StarBasic"> 4cdf0e10cSrcweir 5cdf0e10cSrcweir 6cdf0e10cSrcweir'************************************************************************* 7cdf0e10cSrcweir' 8*b40b12b0SAndrew Rist' Licensed to the Apache Software Foundation (ASF) under one 9*b40b12b0SAndrew Rist' or more contributor license agreements. See the NOTICE file 10*b40b12b0SAndrew Rist' distributed with this work for additional information 11*b40b12b0SAndrew Rist' regarding copyright ownership. The ASF licenses this file 12*b40b12b0SAndrew Rist' to you under the Apache License, Version 2.0 (the 13*b40b12b0SAndrew Rist' "License"); you may not use this file except in compliance 14*b40b12b0SAndrew Rist' with the License. You may obtain a copy of the License at 15*b40b12b0SAndrew Rist' 16*b40b12b0SAndrew Rist' http://www.apache.org/licenses/LICENSE-2.0 17*b40b12b0SAndrew Rist' 18*b40b12b0SAndrew Rist' Unless required by applicable law or agreed to in writing, 19*b40b12b0SAndrew Rist' software distributed under the License is distributed on an 20*b40b12b0SAndrew Rist' "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 21*b40b12b0SAndrew Rist' KIND, either express or implied. See the License for the 22*b40b12b0SAndrew Rist' specific language governing permissions and limitations 23*b40b12b0SAndrew Rist' under the License. 24cdf0e10cSrcweir' 25cdf0e10cSrcweir'************************************************************************* 26cdf0e10cSrcweir 27cdf0e10cSrcweir 28cdf0e10cSrcweir 29*b40b12b0SAndrew Rist 30*b40b12b0SAndrew Rist 31cdf0e10cSrcweir' Be sure that all variables are dimensioned: 32cdf0e10cSrcweiroption explicit 33cdf0e10cSrcweir 34cdf0e10cSrcweir 35cdf0e10cSrcweir' REQUIRED VARIABLES for interface/service tests: 36cdf0e10cSrcweir 37cdf0e10cSrcweir' Requiered for com.sun.star.lang.XMultiServiceFactory 38cdf0e10cSrcweir Global cServiceName As String ' ex. "com.sun.star.drawing.RectangleShape" 39cdf0e10cSrcweir Global bCreateInstanceWithoutArguments As Boolean 40cdf0e10cSrcweir Global aArguments() As Variant 41cdf0e10cSrcweir 42cdf0e10cSrcweir' Requiered for com.sun.star.drawing.XDrawPageDuplicator 43cdf0e10cSrcweir Global oCollection As Object ' = oDoc.DrawPages(0) 44cdf0e10cSrcweir 45cdf0e10cSrcweir' com.sun.star.frame.XModel 46cdf0e10cSrcweir Global oXModelController as Object 47cdf0e10cSrcweir Global oXModelSel as Object 48cdf0e10cSrcweir Global oXModelToSel as Object 49cdf0e10cSrcweir 50cdf0e10cSrcweir 51cdf0e10cSrcweir Global oComponentInstance As Object 52cdf0e10cSrcweirSub CreateObj() 53cdf0e10cSrcweir 54cdf0e10cSrcweir'************************************************************************* 55cdf0e10cSrcweir' COMPONENT: 56cdf0e10cSrcweir' sd.SdXImpressDocument 57cdf0e10cSrcweir'************************************************************************* 58cdf0e10cSrcweirOn Error Goto ErrHndl 59cdf0e10cSrcweir Dim oControllerDoc as Object 60cdf0e10cSrcweir Dim oRectangleShape as Object 61cdf0e10cSrcweir Dim oPage as Object 62cdf0e10cSrcweir 63cdf0e10cSrcweir oDoc = utils.createImpressDocument(cObjectName) 64cdf0e10cSrcweir oControllerDoc = utils.createImpressDocument(cObjectName + "XModel") 65cdf0e10cSrcweir oComponentInstance = utils.createImpressDocument(cObjectName + "XComponent") 66cdf0e10cSrcweir 67cdf0e10cSrcweir oCollection = oDoc.DrawPages(0) 68cdf0e10cSrcweir oObj = oDoc 69cdf0e10cSrcweir 70cdf0e10cSrcweir cServiceName = "com.sun.star.drawing.RectangleShape" 71cdf0e10cSrcweir bCreateInstanceWithoutArguments = true 72cdf0e10cSrcweir aArguments() = noargs() 73cdf0e10cSrcweir 74cdf0e10cSrcweir oRectangleShape = oDoc.createInstance("com.sun.star.drawing.RectangleShape") 75cdf0e10cSrcweir oPage = oDoc.getDrawPages().getByIndex(0) 76cdf0e10cSrcweir oPage.add(oRectangleShape) 77cdf0e10cSrcweir 78cdf0e10cSrcweir oXModelToSel = oRectangleShape 79cdf0e10cSrcweir oXModelController = oControllerDoc.getCurrentController() 80cdf0e10cSrcweir oXModelSel = oDoc.getCurrentController() 81cdf0e10cSrcweir 82cdf0e10cSrcweirExit Sub 83cdf0e10cSrcweirErrHndl: 84cdf0e10cSrcweir Test.Exception() 85cdf0e10cSrcweirEnd Sub 86cdf0e10cSrcweir 87cdf0e10cSrcweirSub DisposeObj() 88cdf0e10cSrcweir if NOT isNULL(oComponentInstance) then oComponentInstance.dispose() 89cdf0e10cSrcweir 90cdf0e10cSrcweir ' To successfully dispose oControllerDoc re-open it first. 91cdf0e10cSrcweir Dim oControllerDoc As Object 92cdf0e10cSrcweir oControllerDoc = utils.createDocument(cObjectName + "XModel") 93cdf0e10cSrcweir oControllerDoc.dispose() 94cdf0e10cSrcweirEnd Sub 95cdf0e10cSrcweir</script:module> 96