1<?xml version="1.0" encoding="UTF-8"?> 2<!DOCTYPE script:module PUBLIC "-//OpenOffice.org//DTD OfficeDocument 1.0//EN" "module.dtd"> 3<script:module xmlns:script="http://openoffice.org/2000/script" script:name="sc_ScDrawPageObj" script:language="StarBasic"> 4 5'************************************************************************* 6' 7' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 8' 9' Copyright 2000, 2010 Oracle and/or its affiliates. 10' 11' OpenOffice.org - a multi-platform office productivity suite 12' 13' This file is part of OpenOffice.org. 14' 15' OpenOffice.org is free software: you can redistribute it and/or modify 16' it under the terms of the GNU Lesser General Public License version 3 17' only, as published by the Free Software Foundation. 18' 19' OpenOffice.org is distributed in the hope that it will be useful, 20' but WITHOUT ANY WARRANTY; without even the implied warranty of 21' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 22' GNU Lesser General Public License version 3 for more details 23' (a copy is included in the LICENSE file that accompanied this code). 24' 25' You should have received a copy of the GNU Lesser General Public License 26' version 3 along with OpenOffice.org. If not, see 27' <http://www.openoffice.org/license.html> 28' for a copy of the LGPLv3 License. 29' 30'************************************************************************* 31***** 32'************************************************************************* 33 34 35 36' Be sure that all variables are dimensioned: 37option explicit 38 39 40' REQUIRED VARIABLES for interface/service tests: 41 42Global oXShapeInstance As Object 43 44Global oGrouperCollection As Object 45 46Sub CreateObj() 47 48'************************************************************************* 49' COMPONENT: 50' sc.ScDrawPageObj 51'************************************************************************* 52On Error Goto ErrHndl 53 54 Dim bOK As Boolean 55 Dim oDP as Object 56 bOK = true 57 58 oDoc = utils.createDocument("scalc", cObjectName) 59 oGrouperCollection = createUNOService("com.sun.star.drawing.ShapeCollection") 60 61 oDP = oDoc.getDrawPages() 62 63 oDP.insertNewByIndex(0) 64 oDP.insertNewByIndex(1) 65 66 oObj = oDP.getByIndex(0) 67 addShape(oObj,1) 68 addShape(oObj,2) 69 addShape(oObj,3) 70 addShape(oObj,4) 71 72 oXShapeInstance = oDoc.createInstance("com.sun.star.drawing.RectangleShape") 73 oGrouperCollection.Add(oObj.getByIndex(2)) 74 oGrouperCollection.Add(oObj.getByIndex(3)) 75 76Exit Sub 77ErrHndl: 78 Test.Exception() 79End Sub 80 81Function addShape(oPage as Object, no as Integer) As Object 82On Error Goto ErrHndl 83 Dim aPoint As New com.sun.star.awt.Point 84 Dim aSize As New com.sun.star.awt.Size 85 Dim oShape As Object 86 Dim servNames As Variant 87 88 aPoint.x = 1000 * no 89 aPoint.y = 1000 * no 90 aSize.Width = 2000 91 aSize.Height = 1000 92 oShape = oDoc.createInstance("com.sun.star.drawing.RectangleShape") 93 oShape.Size = aSize 94 oShape.Position = aPoint 95 96 oPage.add(oShape) 97 98 addShapeToDrawDoc() = oShape 99Exit Function 100ErrHndl: 101 Test.Exception() 102End Function 103 104</script:module> 105