blob: b1c17086c46bee3fcb4743fd64fc311004ba848c [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE script:module PUBLIC "-//OpenOffice.org//DTD OfficeDocument 1.0//EN" "module.dtd">
<script:module xmlns:script="http://openoffice.org/2000/script" script:name="svx_SvxDrawPage" script:language="StarBasic">
'*************************************************************************
'
' Licensed to the Apache Software Foundation (ASF) under one
' or more contributor license agreements. See the NOTICE file
' distributed with this work for additional information
' regarding copyright ownership. The ASF licenses this file
' to you under the Apache License, Version 2.0 (the
' "License"); you may not use this file except in compliance
' with the License. You may obtain a copy of the License at
'
' http://www.apache.org/licenses/LICENSE-2.0
'
' Unless required by applicable law or agreed to in writing,
' software distributed under the License is distributed on an
' "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
' KIND, either express or implied. See the License for the
' specific language governing permissions and limitations
' under the License.
'
'*************************************************************************
' REQUIRED VARIABLES for interface/service tests:
' Requiered for com.sun.star.container.XNamed
Global cNameToSet As String ' "fixed" if name is fixed
' Requiered for com.sun.star.drawing.XShapeGrouper
Global oGrouperCollection As Object 'groupable objects
' Requiered for com.sun.star.drawing.XShapes
Global oXShapeInstance As Object 'to add/remove
' Requiered for com.sun.star.drawing.XShapeCombiner
Global oCombinerCollection As Object
' Requiered for com.sun.star.drawing.XShapeBinder
Global oBinderCollection As Object
Sub CreateObj()
'*************************************************************************
' COMPONENT:
' svx.SvxDrawPage
'*************************************************************************
On Error Goto ErrHndl
Dim bOK As Boolean
bOK = true
oDoc = utils.createDocument("sdraw", cObjectName)
Dim aPoint As New com.sun.star.awt.Point
Dim aSize As New com.sun.star.awt.Size
aPoint.x = 100
aPoint.y = 200
aSize.Width = 3000
aSize.Height = 4000
oXShapeInstance = oDoc.createInstance("com.sun.star.drawing.RectangleShape")
oXShapeInstance.Size = aSize
oXShapeInstance.Position = aPoint
oXShapeInstance.FillColor = RGB(255, 0, 0)
oDrawPage = oDoc.DrawPages(0)
oObj = oDrawPage
oGrouperCollection = createUNOService("com.sun.star.drawing.ShapeCollection")
oCombinerCollection = createUNOService("com.sun.star.drawing.ShapeCollection")
oBinderCollection = createUNOService("com.sun.star.drawing.ShapeCollection")
AddShape(oObj, 100, 200, "com.sun.star.drawing.LineShape")
AddShape(oObj, 200, 200, "com.sun.star.drawing.EllipseShape")
oShape = oObj.getByIndex(0)
oGrouperCollection.Add(oShape)
oShape = oObj.getByIndex(1)
oGrouperCollection.Add(oShape)
AddShape(oObj, 300, 200, "com.sun.star.drawing.LineShape")
AddShape(oObj, 400, 200, "com.sun.star.drawing.EllipseShape")
oShape = oObj.getByIndex(2)
oCombinerCollection.Add(oShape)
oShape = oObj.getByIndex(3)
oCombinerCollection.Add(oShape)
AddShape(oObj, 500, 200, "com.sun.star.drawing.LineShape")
AddShape(oObj, 600, 200, "com.sun.star.drawing.EllipseShape")
oShape = oObj.getByIndex(4)
oBinderCollection.Add(oShape)
oShape = oObj.getByIndex(5)
oBinderCollection.Add(oShape)
Exit Sub
ErrHndl:
Test.Exception()
End Sub
sub AddShape(oPage as Object, nPosX, nPosY as Integer, shapeService As String)
Dim aPoint As New com.sun.star.awt.Point
Dim aSize As New com.sun.star.awt.Size
Dim oShape As Object
aPoint.x = nPosX
aPoint.y = nPosY
aSize.Width = 10000
aSize.Height = 10000
oShape = oDoc.createInstance(shapeService)
oShape.Size = aSize
oShape.Position = aPoint
oShape.FillColor = RGB(255, 0, 0)
oPage.add(oShape)
End Sub
</script:module>