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_XTextColumns" 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' This Interface/Service test depends on the following GLOBAL variables,
41' which must be specified in the object creation:
42
43'     - Global oPageStyle As Object
44
45'*************************************************************************
46
47
48
49
50
51Sub RunTest()
52
53'*************************************************************************
54' INTERFACE:
55' com.sun.star.text.XTextColumns
56'*************************************************************************
57On Error Goto ErrHndl
58    Dim bOK As Boolean
59
60    Dim nCount As Integer
61    Dim aColumns As Variant
62    Dim RightCol As Variant
63    Dim LeftCol As Variant
64    Dim nRefValue As Long
65
66    nCount = 2
67
68    Test.StartMethod("setColumnCount()")
69    bOK = true
70    oObj.setColumnCount(nCount)
71    Test.MethodTested("setColumnCount()", bOK)
72
73    Test.StartMethod("getColumns()")
74    bOK = true
75    aColumns = oObj.Columns
76    bOK = bOK AND NOT isNull(aColumns)
77    Test.MethodTested("getColumns()", bOK)
78
79    LeftCol = aColumns(0)
80    RightCol = aColumns(1)
81    RightCol.Width = 10000 : RightCol.RightMargin = 2000
82    LeftCol.Width = 15000  : LeftCol.LeftMargin = 5000
83
84    aColumns(0) = LeftCol
85    aColumns(1) = RightCol
86
87    oObj.setColumns(aColumns())
88
89    ' initialize the pagestyle with the new values
90    oPageStyle.TextColumns = oObj
91
92    ' check if ColumnsCount was set successfull
93    Test.StartMethod("getColumnCount()")
94    bOK = true
95    bOK = bOK AND (nCount = oPageStyle.TextColumns.ColumnCount)
96    Test.MethodTested("getColumnCount()", bOK)
97
98    Test.StartMethod("getReferenceValue()")
99    bOK = true
100    nRefValue = oObj.getReferenceValue()
101    bOK = bOK AND (nRefValue = 25000)
102    Test.MethodTested("getReferenceValue()", bOK)
103
104    Test.StartMethod("setColumns()")
105    bOK = true
106    RightCol.Width = 15000
107    aColumns(1) = RightCol
108    oObj.setColumns(aColumns())
109    oPageStyle.TextColumns = oObj
110    bOK = bOK AND (oPageStyle.TextColumns.ReferenceValue = 30000)
111    Test.MethodTested("setColumns()", bOK)
112
113Exit Sub
114ErrHndl:
115    Test.Exception()
116    bOK = false
117    resume next
118End Sub
119</script:module>
120