'************************************************************************* ' ' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. ' ' Copyright 2008 by Sun Microsystems, Inc. ' ' OpenOffice.org - a multi-platform office productivity suite ' ' $RCSfile: forms_OPatternModel.xba,v $ ' ' $Revision: 1.3 $ ' ' This file is part of OpenOffice.org. ' ' OpenOffice.org is free software: you can redistribute it and/or modify ' it under the terms of the GNU Lesser General Public License version 3 ' only, as published by the Free Software Foundation. ' ' OpenOffice.org is distributed in the hope that it will be useful, ' but WITHOUT ANY WARRANTY; without even the implied warranty of ' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ' GNU Lesser General Public License version 3 for more details ' (a copy is included in the LICENSE file that accompanied this code). ' ' You should have received a copy of the GNU Lesser General Public License ' version 3 along with OpenOffice.org. If not, see ' ' for a copy of the LGPLv3 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 Global oForm As Object Sub CreateObj() '************************************************************************* ' COMPONENT: ' forms.OPatternModel '************************************************************************* On Error Goto ErrHndl Dim bOK As Boolean Dim oShape As Object, oDrawPage As Object bOK = true oDoc = utils.createDocument("swriter", cObjectName) oShape = toolkittools.addControlToDefaultForm("PatternField", 1000, 1000, 2000, 1000) oObj = oShape.getControl() oShape = toolkittools.addControlToDefaultForm("PatternField", 1000, 3000, 2000, 1000) oComponentInstance = oShape.getControl() oShape = toolkittools.addControlToDefaultForm("TextField", 1000, 5000, 2000, 1000) oPersistInstance = oShape.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