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