<?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="sd_SdUnoOutlineView" 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.
'
'*************************************************************************





' Be sure that all variables are dimensioned:
option explicit


' REQUIRED VARIABLES for interface/service tests:

' Required for frame.XController
Global oFrameToAttach As Object
Global oModelToAttach As Object
Global bHasNoViewData As Boolean
Global oObjToSuspend As Object
Global bHasNoModel As Boolean

' Required for lang.XComponent
Global oComponentInstance As Object

' Required for frame.XDispatchProvider
Global dispatchUrl As String

' Required for awt.XWindow
Global oXWindow As Object
Global oCtrlShape as Object


Global oSecDoc As Object
Global oXComponentDoc as Object

Sub CreateObj()

'*************************************************************************
' COMPONENT: 
' sd.SdUnoOutlineView
'*************************************************************************
On Error Goto ErrHndl
    Dim bOK As Boolean
    
    bOK = true

    oDoc = utils.createImpressDocument(cObjectName)
    oXComponentDoc = utils.createImpressDocument(cObjectName+ "XComponent")
    
    oObj = oDoc.getCurrentController()
    oComponentInstance = oXComponentDoc.getCurrentController()

    Out.log("Change to Outline view")
    Dim aSlotID As String
    aSlotID = "slot:27010"

    Dim url as new com.sun.star.util.URL
    url.Complete = aSlotID

    Dim UrlTransformer As Object
    UrlTransformer = createUnoService("com.sun.star.util.URLTransformer")
    UrlTransformer.parseStrict(url)

    Dim xDispatcher As Object
    xDispatcher = oObj.queryDispatch( url,"",0)
    if Not IsNULL(xDispatcher) then
        xDispatcher.dispatch( url, DimArray() )
        wait(5000)
    else
        Out.log("queryDispatch FAILED... Object SdUnoOutlineView can't be created")
        oObj =  NULL_OBJECT
    endif
    
    xDispatcher = oComponentInstance.queryDispatch( url,"",0)
    if Not IsNULL(xDispatcher) then
        xDispatcher.dispatch( url, DimArray() )
        wait(5000)
    else
        Out.log("queryDispatch FAILED... Object SdUnoOutlineView can't be created")
    endif

    oSecDoc = utils.createImpressDocument("For frame.XController")
    bHasNoViewData = false
    bHasNoModel = false
    oObjToSuspend = oObj
    oFrameToAttach = StarDesktop.getCurrentFrame()
    oModelToAttach = oSecDoc


    dispatchUrl = "slot:27069"
    
    ' For awt.XWindow
    oXWindow = utils.at_getCurrentWindow(oSecDoc)
    
Exit Sub
ErrHndl:
    Test.Exception()
End Sub

Sub DisposeObj()
    utils.closeObject(oSecDoc)
End Sub
</script:module>