summaryrefslogtreecommitdiff
path: root/qadevOOo/tests/basic/ifc/beans/XFastPropertySet/beans_XFastPropertySet.xba
diff options
context:
space:
mode:
Diffstat (limited to 'qadevOOo/tests/basic/ifc/beans/XFastPropertySet/beans_XFastPropertySet.xba')
-rw-r--r--qadevOOo/tests/basic/ifc/beans/XFastPropertySet/beans_XFastPropertySet.xba122
1 files changed, 122 insertions, 0 deletions
diff --git a/qadevOOo/tests/basic/ifc/beans/XFastPropertySet/beans_XFastPropertySet.xba b/qadevOOo/tests/basic/ifc/beans/XFastPropertySet/beans_XFastPropertySet.xba
new file mode 100644
index 000000000000..8961bec8d24c
--- /dev/null
+++ b/qadevOOo/tests/basic/ifc/beans/XFastPropertySet/beans_XFastPropertySet.xba
@@ -0,0 +1,122 @@
+<?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="beans_XFastPropertySet" script:language="StarBasic">
+
+
+'*************************************************************************
+'
+' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+'
+' Copyright 2000, 2010 Oracle and/or its affiliates.
+'
+' OpenOffice.org - a multi-platform office productivity suite
+'
+' 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
+' <http://www.openoffice.org/license.html>
+' for a copy of the LGPLv3 License.
+'
+'*************************************************************************
+'*************************************************************************
+
+
+
+
+
+Sub RunTest()
+
+'*************************************************************************
+' INTERFACE:
+' com.sun.star.beans.XFastPropertySet
+'*************************************************************************
+On Error Goto ErrHndl
+
+ Dim bOK As Boolean
+ Dim oPropertySetInfo As Object
+ Dim oProperties As Variant
+ Dim nIndex As Long, nHanlde As Long
+ Dim nCount As Integer
+ Dim vMemVal As Variant, vNewVal As Variant
+ Dim bBoolean As Boolean
+ Dim nInteger As Integer
+ Dim nLong As Long
+ Dim nSingle As Single
+ Dim nDouble As Double
+
+ oPropertySetInfo = oObj.GetPropertySetInfo()
+ oProperties = oPropertySetInfo.Properties
+ nCount = uBound(oProperties)
+
+ nIndex = 0
+ nMem = nIndex
+ 'find at first a Boolean Value, if not available a String Property
+ While (NOT bFound) AND (nCount &gt;= nIndex)
+ If VarType(oObj.getFastPropertyValue(oProperties(nIndex).Handle)) = 11 Then ' it is a Boolean Proerty
+ bFound = true
+ nMem = nIndex
+ else
+ If VarType(oObj.getFastPropertyValue(oProperties(nIndex).Handle)) = 8 Then ' it is a String Property
+ nMem = nIndex
+ end if
+ end if
+ nIndex = nIndex + 1
+ Wend
+ nIndex = nMem
+ Out.Log("Property selected: '" + oProperties(nIndex).Name + "'")
+
+ 'memory the old Value
+ vMemVal = oObj.getFastPropertyValue(oProperties(nIndex).Handle)
+ ' change the Value
+ select case VarType(oObj.getFastPropertyValue(oProperties(nIndex).Handle)
+ case 11 'boolean
+ bBoolean = NOT oObj.getFastPropertyValue(oProperties(nIndex).Handle)
+ vNewVal = bBoolean
+ case 2 'integer
+ nInteger = oObj.getFastPropertyValue(oProperties(nIndex).Handle) + 1
+ vNewVal = nInteger
+ case 3 'long
+ nLong = oObj.getFastPropertyValue(oProperties(nIndex).Handle) + 1
+ vNewVal = nLong
+ case 4 'single
+ nSingle = oObj.getFastPropertyValue(oProperties(nIndex).Handle) + 1
+ vNewVal = nSingle
+ case 5 'double
+ nDouble = oObj.getFastPropertyValue(oProperties(nIndex).Handle) + 1
+ vNewVal = nDouble
+ case 8 'string
+ vNewVal = oObj.getPropertyValue(oProperties(nIndex).Name) + cIfcShortName
+ end select
+
+ nHandle = oProperties(nIndex).Handle
+
+ Test.StartMethod("getFastPropertyValue()")
+ bOK = true
+ bOK = bOK AND (vMemVal = oObj.getFastPropertyValue(nHandle))
+ Test.MethodTested("getFastPropertyValue()", bOK)
+
+ Test.StartMethod("setFastPropertyValue()")
+ bOK = true
+ oObj.setFastPropertyValue(nHandle, vNewVal)
+ bOK = bOK AND (vMemVal &lt;&gt; oObj.getFastPropertyValue(nHandle))
+ Test.MethodTested("setFastPropertyValue()", bOK)
+
+
+Exit Sub
+ErrHndl:
+ Test.Exception()
+ bOK = false
+ resume next
+End Sub
+</script:module>