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="sw_SwAccessiblePageView" 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' REQUIRED VARIABLES for interface/service tests:
41Global prevButton As Object
42Global nextButton As Object
43
44
45Sub CreateObj()
46
47'*************************************************************************
48' COMPONENT:
49' sw.SwAccessiblePageView
50'*************************************************************************
51On Error Goto ErrHndl
52    Dim xRoot As Object, xDispatcher As Object
53    Dim xController As Object, oWin As Object
54    Dim url As New com.sun.star.util.URL
55    Dim urlTransformer As Object
56    Dim oText As Object, cursor As Object
57    Dim i As Integer
58
59    oDoc = utils.createDocument("swriter",cObjectName)
60    oText = oDoc.getText()
61    cursor = oText.createTextCursor()
62
63    'inserting some lines
64    for i = 0 to 30
65      oText.insertString(cursor, "Paragraph Number: " + i, false)
66      oText.insertString(cursor,_
67        " The quick brown fox jumps over the lazy Dog: SwAccessibleDocumentPageView",_
68        false)
69      oText.insertControlCharacter(cursor,_
70        com.sun.star.text.ControlCharacter.PARAGRAPH_BREAK, false)
71      oText.insertString(cursor,_
72        "THE QUICK BROWN FOX JUMPS OVER THE LAZY DOG: SwAccessibleDocumentPageView",_
73        false)
74      oText.insertControlCharacter(cursor,_
75        com.sun.star.text.ControlCharacter.PARAGRAPH_BREAK, false)
76      oText.insertControlCharacter(cursor,_
77        com.sun.star.text.ControlCharacter.LINE_BREAK, false)
78    next i
79    wait(1000)
80
81    xController = oDoc.getCurrentController()
82
83    'switch to PreviewMode
84    urlTransformer = createUNOService("com.sun.star.util.URLTransformer")
85    url.Complete = ".uno:PrintPreview"
86    urlTransformer.parseStrict(url)
87    wait(500)
88    xDispatcher = xController.queryDispatch(url,"",0)
89    if (NOT isNull(xDispatcher)) then
90      xDispatcher.dispatch(url, DimArray())
91      wait(1000)
92      oWin = utils.at_getCurrentWindow(oDoc)
93      xRoot = utils.at_getAccessibleObject(oWin)
94      'utils.at_printAccessibleTree(xRoot)
95      oObj = utils.at_getAccessibleObjectForRole(xRoot, com.sun.star.accessibility.AccessibleRole.PANEL,"Page")
96      Out.Log("Implementation Name: "+oObj.getImplementationName())
97      prevButton = utils.at_getAccessibleObjectForRole(xRoot, com.sun.star.accessibility.AccessibleRole.PUSH_BUTTON,"Previous Page")
98      nextButton = utils.at_getAccessibleObjectForRole(xRoot, com.sun.star.accessibility.AccessibleRole.PUSH_BUTTON,"Next Page")
99    else
100      Out.Log("QueryDispatch FAILED. Cannot switch to Preview mode...")
101    End If
102
103Exit Sub
104ErrHndl:
105    Test.Exception()
106End Sub
107
108Sub fireEvent()
109    prevButton.doAccessibleAction(0)
110    wait(500)
111    nextButton.doAccessibleAction(0)
112    wait(500)
113End Sub
114</script:module>
115