'************************************************************************* ' ' 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: ' for XComponent Global oComponentInstance As Object ' for XPersistObject Global oPersistInstance As Object ' for XUpdateBroadcaster Global bCustomUpdate As Boolean ' for relation function checkCommit Global oForm As Object Sub CreateObj() '************************************************************************* ' COMPONENT: ' forms.OComboBoxModel '************************************************************************* On Error Goto ErrHndl Dim bOK As Boolean Dim oCntrlShape As Object, oDrawPage As Object bOK = true ' --- create a document if needed oDoc = utils.createDocument("swriter", cObjectName) oCntrlShape = toolkittools.addControlToDefaultForm("ComboBox", 1000, 1000, 2000, 1000) oObj = oCntrlShape.getControl() oCntrlShape = toolkittools.addControlToDefaultForm("ComboBox", 1000, 3000, 2000, 1000) oComponentInstance = oCntrlShape.getControl() oCntrlShape = toolkittools.addControlToDefaultForm("ComboBox", 1000, 5000, 2000, 1000) oPersistInstance = oCntrlShape.getControl() 'get control from document oDrawPage = oDoc.DrawPage oForm = oDrawPage.Forms.getByName("Standard") oForm.DataSourceName = "Bibliography" oForm.Command = "biblio" oForm.CommandType = com.sun.star.sdb.CommandType.TABLE oObj.DataField = "Author" oForm.load() ' for XUpdateBroadcaster bCustomUpdate = true Exit Sub ErrHndl: Test.Exception() End Sub Global sChangedText As String ' for XBoundComponent Sub prepareCommit() On Error Goto ErrHndl Out.Log("prepareCommit() called.") sChangedText = "_" + oObj.Text oObj.Text = sChangedText exit sub ErrHndl: Test.Exception() End Sub ' for XBoundComponent Function checkCommit() As Boolean On Error Goto ErrHndl Out.Log("checkCommit() called.") Dim rowText As Variant rowText = oForm.getString(oForm.findColumn("Author")) checkCommit() = (rowText = sChangedText) exit function ErrHndl: Test.Exception() End Function ' for XUpdateBroadcaster Sub UpdateComponent() oObj.Text = "_" + oObj.Text oObj.commit() End Sub