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="text_XPagePrintable" 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' Be sure that all variables are dimensioned:
37option explicit
38
39
40
41Sub RunTest()
42
43'*************************************************************************
44' INTERFACE:
45' com.sun.star.text.XPagePrintable
46'*************************************************************************
47On Error Goto ErrHndl
48    Dim bOK As Boolean
49    Dim aPrintSettings As Variant
50    Dim aNewSettings As Variant
51
52    Test.StartMethod("getPagePrintSettings()")
53    bOK = true
54    aPrintSettings = oObj.getPagePrintSettings()
55    Out.Log("PrintSettings have " &amp; (ubound(aPrintSettings) + 1) &amp; " elements")
56    bOK = bOK AND (ubound(aPrintSettings) &gt; 0)
57    Test.MethodTested("getPagePrintSettings()", bOK)
58
59    Test.StartMethod("setPagePrintSettings()")
60    bOK = true
61    Dim bOldLandscape As Boolean
62    ' Changing Landscape property...
63    bOldLandscape = aPrintSettings(8).Value
64    aPrintSettings(8).Value = NOT bOldLandscape
65
66    oObj.setPagePrintSettings(aPrintSettings())
67    aNewSettings = oObj.getPagePrintSettings()
68    bOK = bOK AND (aNewSettings(8).Value = NOT bOldLandscape)
69
70    Test.MethodTested("setPagePrintSettings()", bOK)
71
72    Test.StartMethod("printPages()")
73    bOK = true
74    Dim aPrintingOptions(0) As New com.sun.star.beans.PropertyValue
75    Dim sFileName As String
76    sFileName = utils.Path2URL(cTestDocsDir &amp; "/temp/XPagePrintable.prt")
77
78    if (FileExists(sFileName)) then
79        kill(sFileName)
80    end if
81
82    aPrintingOptions(0).Name = "FileName"
83    aPrintingOptions(0).Value = sFileName
84    aPrintingOptions(0).State = com.sun.star.beans.PropertyState.DEFAULT_VALUE
85
86    Out.Log("Printing to " &amp; sFileName)
87    oObj.printPages(aPrintingOptions())
88
89    bOK = bOK AND FileExists(sFileName)
90    Test.MethodTested("printPages()", bOK)
91
92Exit Sub
93ErrHndl:
94    Test.Exception()
95    bOK = false
96    resume next
97End Sub
98</script:module>
99