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="sd_SdDrawPage" script:language="StarBasic"> 4 5 6'************************************************************************* 7' 8' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 9' 10' Copyright 2000, 2010 Oracle and/or its affiliates. 11' 12' OpenOffice.org - a multi-platform office productivity suite 13' 14' This file is part of OpenOffice.org. 15' 16' OpenOffice.org is free software: you can redistribute it and/or modify 17' it under the terms of the GNU Lesser General Public License version 3 18' only, as published by the Free Software Foundation. 19' 20' OpenOffice.org is distributed in the hope that it will be useful, 21' but WITHOUT ANY WARRANTY; without even the implied warranty of 22' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 23' GNU Lesser General Public License version 3 for more details 24' (a copy is included in the LICENSE file that accompanied this code). 25' 26' You should have received a copy of the GNU Lesser General Public License 27' version 3 along with OpenOffice.org. If not, see 28' <http://www.openoffice.org/license.html> 29' for a copy of the LGPLv3 License. 30' 31'************************************************************************* 32'************************************************************************* 33 34 35 36 37' REQUIRED VARIABLES for interface/service tests: 38Global oXShapeInstance As Object 39Global oGrouperCollection AS Object 40Global oCombinerCollection As Object 41Global oBinderCollection As Object 42 43 44Sub CreateObj() 45 46'************************************************************************* 47' COMPONENT: 48' sd.SdDrawPage 49'************************************************************************* 50On Error Goto ErrHndl 51 52 Dim bOK As Boolean 53 bOK = true 54 55 oDoc = utils.createDocument("sdraw", cObjectName) 56 57 oXShapeInstance = oDoc.createInstance("com.sun.star.drawing.RectangleShape") 58 59 oObj = oDoc.DrawPages.getByIndex(0) 60 oGrouperCollection = createUNOService("com.sun.star.drawing.ShapeCollection") 61 oCombinerCollection = createUNOService("com.sun.star.drawing.ShapeCollection") 62 oBinderCollection = createUNOService("com.sun.star.drawing.ShapeCollection") 63 64 addShape(oObj, 1000, 1000) 65 addShape(oObj, 5000, 5000) 66 addShape(oObj, 2000, 2000) 67 addShape(oObj, 3000, 3000) 68 addShape(oObj, 4000, 4000) 69 addShape(oObj, 5000, 5000) 70 addShape(oObj, 6000, 6000) 71 addShape(oObj, 7000, 7000) 72 73 oGrouperCollection.Add(oObj.getByIndex(0)) 74 oGrouperCollection.Add(oObj.getByIndex(1)) 75 oCombinerCollection.Add(oObj.getByIndex(2)) 76 oCombinerCollection.Add(oObj.getByIndex(3)) 77 oBinderCollection.Add(oObj.getByIndex(4)) 78 oBinderCollection.Add(oObj.getByIndex(5)) 79 80 81Exit Sub 82ErrHndl: 83 Test.Exception() 84End Sub 85 86sub AddShape(oPage as Object, nPosX as Integer, nPosY as Integer) 87 Dim aPoint As New com.sun.star.awt.Point 88 Dim aSize As New com.sun.star.awt.Size 89 Dim oRectangleShape As Object 90 91 aPoint.x = nPosX 92 aPoint.y = nPosY 93 aSize.Width = 10000 94 aSize.Height = 10000 95 oRectangleShape = oDoc.createInstance("com.sun.star.drawing.RectangleShape") 96 oRectangleShape.Size = aSize 97 oRectangleShape.Position = aPoint 98 oRectangleShape.FillColor = RGB(255, 0, 0) 99 oPage.add(oRectangleShape) 100End Sub 101 102Sub DisposeObj() 103 if hasUnoInterfaces(oDoc, "com.sun.star.lang.XComponent") then 104 oDoc.Dispose() 105 end if 106End Sub 107</script:module> 108