<?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="forms_OCheckBoxControl" 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  com.sun.star.awt.XView:
  Global oGraphics as Object

' Required for  com.sun.star.lang.XComponent:
  Global oComponentInstance As Object ' it will be disposed

' Required for  com.sun.star.awt.XControl:
  Global oContext As Object
  Global oWinpeer As Object
  Global oToolkit As Object
  Global oModel As Object

' Required for  com.sun.star.awt.XWindow:
  Global oXWindow as Object
  Global oCtrlShape As Variant

' Required for awt.XItemListener
  Global bIL_itemStateChanged As Boolean
  Global oEventItemListener As Object


Sub CreateObj()

'*************************************************************************
' COMPONENT:
' forms.OCheckBoxControl
'*************************************************************************
On Error Goto ErrHndl

    Dim bOK As Boolean
    Dim oShape1 As Object
    Dim oShape2 As Object
    Dim oShape3 As Object
    Dim oCurrCtrl As Object
    Dim oWin As Object
    Dim oKit As Object
    Dim oDevice As Object
    Dim oDoc2 As Object
    Dim oIListener As Object

    bOK = true

    oDoc = utils.createDocument("swriter", cObjectName)
'    oDoc2 = utils.createDocument("swriter", cObjectName + "2")

    oShape1 = toolkittools.addControlToDefaultForm("CheckBox", 1000, 1000, 2000, 1000)
    oShape2 = toolkittools.addControlToDefaultForm("CheckBox", 1000, 3000, 2000, 1000)
    oShape3 = toolkittools.addControlToDefaultForm("TextField", 1000, 5000, 2000, 1000)

    oModel = oShape1.getControl()
    oCurrCtrl = oDoc.getCurrentController()
    oWin = oCurrCtrl.getControl(oModel).getPeer()
    oKit = oWin.getToolkit()
    oDevice = oKit.createScreenCompatibleDevice(200,200)
    oGraphics = oDevice.createGraphics()

    oObj = oCurrCtrl.getControl(oModel)
    oComponentInstance = oCurrCtrl.getControl(oShape2.getControl())
    oContext = oDoc
    oWinpeer = oWin
    oToolkit = oKit
    oXWindow =  oCurrCtrl.getControl(oShape3.getControl())
    oCtrlShape = oShape1

    oIListener = createUnoListener("IL_", "com.sun.star.awt.XItemListener")
    oObj.addItemListener(oIListener)

Exit Sub
ErrHndl:
    Test.Exception()
End Sub

Sub IL_itemStateChanged(rEvent As Object)
    bIL_itemStateChanged = True
    Out.Log("CallBack for ItemListener itemStateChanged was called.")
    oEventItemListener = rEvent
End Sub


'Sub DisposeObj()
'    'Re-open this document to close it successfully
'    oDoc2 = utils.createDocument("swriter", cObjectName + "2")
'    oDoc2.Dispose()
'End Sub
</script:module>
