1*b1cdbd2cSJim Jagielski<!--*********************************************************** 2*b1cdbd2cSJim Jagielski * 3*b1cdbd2cSJim Jagielski * Licensed to the Apache Software Foundation (ASF) under one 4*b1cdbd2cSJim Jagielski * or more contributor license agreements. See the NOTICE file 5*b1cdbd2cSJim Jagielski * distributed with this work for additional information 6*b1cdbd2cSJim Jagielski * regarding copyright ownership. The ASF licenses this file 7*b1cdbd2cSJim Jagielski * to you under the Apache License, Version 2.0 (the 8*b1cdbd2cSJim Jagielski * "License"); you may not use this file except in compliance 9*b1cdbd2cSJim Jagielski * with the License. You may obtain a copy of the License at 10*b1cdbd2cSJim Jagielski * 11*b1cdbd2cSJim Jagielski * http://www.apache.org/licenses/LICENSE-2.0 12*b1cdbd2cSJim Jagielski * 13*b1cdbd2cSJim Jagielski * Unless required by applicable law or agreed to in writing, 14*b1cdbd2cSJim Jagielski * software distributed under the License is distributed on an 15*b1cdbd2cSJim Jagielski * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16*b1cdbd2cSJim Jagielski * KIND, either express or implied. See the License for the 17*b1cdbd2cSJim Jagielski * specific language governing permissions and limitations 18*b1cdbd2cSJim Jagielski * under the License. 19*b1cdbd2cSJim Jagielski * 20*b1cdbd2cSJim Jagielski ***********************************************************--> 21*b1cdbd2cSJim Jagielski<HTML> 22*b1cdbd2cSJim Jagielski<HEAD> 23*b1cdbd2cSJim Jagielski<META NAME="GENERATOR" Content="Microsoft Developer Studio"> 24*b1cdbd2cSJim Jagielski<META HTTP-EQUIV="Content-Type" content="text/html; charset=iso-8859-1"> 25*b1cdbd2cSJim Jagielski<TITLE>Document Title</TITLE> 26*b1cdbd2cSJim Jagielski</HEAD> 27*b1cdbd2cSJim Jagielski<BODY id=theBody> 28*b1cdbd2cSJim Jagielski 29*b1cdbd2cSJim Jagielski<script language="JScript"> 30*b1cdbd2cSJim Jagielskifunction callOleTest( id) 31*b1cdbd2cSJim Jagielski{ 32*b1cdbd2cSJim Jagielski var factory= new ActiveXObject("com.sun.star.ServiceManager"); 33*b1cdbd2cSJim Jagielski var oletest= factory.createInstance("oletest.OleTest"); 34*b1cdbd2cSJim Jagielski// alert(oletest); 35*b1cdbd2cSJim Jagielski 36*b1cdbd2cSJim Jagielski var arr= new Array( 1, 2, 3, 4, 0); 37*b1cdbd2cSJim Jagielski var arrDouble= new Array( 1.2345, 12.345, 123,45, 1234.5, 12345); 38*b1cdbd2cSJim Jagielski var arrBool= new Array( 1, 0, 2, 0, 3); 39*b1cdbd2cSJim Jagielski var arrChar= new Array( '1', 'A', "1", "A", ' ', 55, 56); 40*b1cdbd2cSJim Jagielski var arrString= new Array("hamburger","cheeseburger", "chicken nuggets", "chicken wings" , "pizza"); 41*b1cdbd2cSJim Jagielski var arrAny= new Array( 100, 100.1235,"hallo"); 42*b1cdbd2cSJim Jagielski var arrSeq= new Array( arr, arr, arr); 43*b1cdbd2cSJim Jagielski var arrSeq2= new Array( arrSeq, arrSeq, arrSeq) 44*b1cdbd2cSJim Jagielski 45*b1cdbd2cSJim Jagielski// var ob= new Object(); 46*b1cdbd2cSJim Jagielski// ob.value= "A JScript object"; 47*b1cdbd2cSJim Jagielski// var arrObject= new Array( ob, ob, ob); 48*b1cdbd2cSJim Jagielski 49*b1cdbd2cSJim Jagielski 50*b1cdbd2cSJim Jagielski var arrout1= new Array(); 51*b1cdbd2cSJim Jagielski var arrout2= new Array(); 52*b1cdbd2cSJim Jagielski var arrout3= new Array(); 53*b1cdbd2cSJim Jagielski 54*b1cdbd2cSJim Jagielski var ret, i; 55*b1cdbd2cSJim Jagielski var sfarray, sfarray1, sfarray2, sfarray3; 56*b1cdbd2cSJim Jagielski var value= oletest._GetValueObject(); 57*b1cdbd2cSJim Jagielski var outValue= oletest._GetValueObject(); 58*b1cdbd2cSJim Jagielski outValue.InitOutParam(); 59*b1cdbd2cSJim Jagielski var outValue2= oletest._GetValueObject(); 60*b1cdbd2cSJim Jagielski outValue2.InitOutParam(); 61*b1cdbd2cSJim Jagielski var outValue3= oletest._GetValueObject(); 62*b1cdbd2cSJim Jagielski outValue3.InitOutParam(); 63*b1cdbd2cSJim Jagielski 64*b1cdbd2cSJim Jagielski var inoutValue= oletest._GetValueObject(); 65*b1cdbd2cSJim Jagielski// inoutValue.InitInOutParam(); 66*b1cdbd2cSJim Jagielski 67*b1cdbd2cSJim Jagielski switch( id) 68*b1cdbd2cSJim Jagielski { 69*b1cdbd2cSJim Jagielski // Array in-params 70*b1cdbd2cSJim Jagielski case 1: 71*b1cdbd2cSJim Jagielski value.Set("[]byte", arr) 72*b1cdbd2cSJim Jagielski ret= oletest.methodByte( value); 73*b1cdbd2cSJim Jagielski sfarray= new VBArray( ret); 74*b1cdbd2cSJim Jagielski document.writeln( "Param: " + arr.toString() + "<br>"); 75*b1cdbd2cSJim Jagielski document.writeln( "Returns a Sequence< BYTE > <br>" + sfarray.toArray()) ; break; 76*b1cdbd2cSJim Jagielski 77*b1cdbd2cSJim Jagielski case 2: 78*b1cdbd2cSJim Jagielski value.Set("[]double", arrDouble) 79*b1cdbd2cSJim Jagielski ret= oletest.methodDouble( value); 80*b1cdbd2cSJim Jagielski sfarray= new VBArray( ret); 81*b1cdbd2cSJim Jagielski document.writeln( "Param: " + arrDouble.toString() +"<br>"); 82*b1cdbd2cSJim Jagielski document.writeln( "Returns a Sequence< double > <br>" + sfarray.toArray()) ; break; 83*b1cdbd2cSJim Jagielski 84*b1cdbd2cSJim Jagielski case 3: 85*b1cdbd2cSJim Jagielski value.Set("[]boolean", arrBool) 86*b1cdbd2cSJim Jagielski ret= oletest.methodBool( value); 87*b1cdbd2cSJim Jagielski sfarray= new VBArray( ret); 88*b1cdbd2cSJim Jagielski document.writeln( "Param: " + arrBool.toString() +"<br>"); 89*b1cdbd2cSJim Jagielski document.writeln( "Returns a Sequence< BOOL > <br>" + sfarray.toArray()) ; break; 90*b1cdbd2cSJim Jagielski 91*b1cdbd2cSJim Jagielski case 4: 92*b1cdbd2cSJim Jagielski value.Set("[]short", arr) 93*b1cdbd2cSJim Jagielski ret= oletest.methodShort( value); 94*b1cdbd2cSJim Jagielski sfarray= new VBArray( ret); 95*b1cdbd2cSJim Jagielski document.writeln( "Param: " + arr.toString() +"<br>"); 96*b1cdbd2cSJim Jagielski document.writeln( "Returns a Sequence< SHORT > <br>" + sfarray.toArray()) ; break; 97*b1cdbd2cSJim Jagielski 98*b1cdbd2cSJim Jagielski case 5: 99*b1cdbd2cSJim Jagielski value.Set("[]unsigned short", arr) 100*b1cdbd2cSJim Jagielski ret= oletest.methodUShort( value); 101*b1cdbd2cSJim Jagielski sfarray= new VBArray( ret); 102*b1cdbd2cSJim Jagielski document.writeln( "Param: " + arr.toString() +"<br>"); 103*b1cdbd2cSJim Jagielski document.writeln( "Returns a Sequence< unsigned SHORT > <br>" + sfarray.toArray()) ; break; 104*b1cdbd2cSJim Jagielski 105*b1cdbd2cSJim Jagielski case 6: 106*b1cdbd2cSJim Jagielski value.Set("[]long", arr) 107*b1cdbd2cSJim Jagielski ret= oletest.methodLong( value); 108*b1cdbd2cSJim Jagielski sfarray= new VBArray( ret); 109*b1cdbd2cSJim Jagielski document.writeln( "Param: " + arr.toString() +"<br>"); 110*b1cdbd2cSJim Jagielski document.writeln( "Returns a Sequence< LONG > <br>" + sfarray.toArray()) ; break; 111*b1cdbd2cSJim Jagielski 112*b1cdbd2cSJim Jagielski case 7: 113*b1cdbd2cSJim Jagielski value.Set("[]unsigned long", arr) 114*b1cdbd2cSJim Jagielski ret= oletest.methodULong( value); 115*b1cdbd2cSJim Jagielski sfarray= new VBArray( ret); 116*b1cdbd2cSJim Jagielski document.writeln( "Param: " + arr.toString() +"<br>"); 117*b1cdbd2cSJim Jagielski document.writeln( "Returns a Sequence< unsigned LONG > <br>" + sfarray.toArray()) ; break; 118*b1cdbd2cSJim Jagielski 119*b1cdbd2cSJim Jagielski case 8: 120*b1cdbd2cSJim Jagielski value.Set("[]char", arrChar) 121*b1cdbd2cSJim Jagielski ret= oletest.methodChar( value); 122*b1cdbd2cSJim Jagielski sfarray= new VBArray( ret); 123*b1cdbd2cSJim Jagielski document.writeln( "Param: " + arrChar.toString() +"<br>"); 124*b1cdbd2cSJim Jagielski document.writeln( "Returns a Sequence< wchar_t > <br>" + sfarray.toArray()) ; break; 125*b1cdbd2cSJim Jagielski 126*b1cdbd2cSJim Jagielski case 9: 127*b1cdbd2cSJim Jagielski value.Set("[]string", arrString) 128*b1cdbd2cSJim Jagielski ret= oletest.methodString( value); 129*b1cdbd2cSJim Jagielski sfarray= new VBArray( ret); 130*b1cdbd2cSJim Jagielski document.writeln( "Param: " + arrString.toString() +"<br>"); 131*b1cdbd2cSJim Jagielski document.writeln( "Returns a Sequence< UString > <br>" + sfarray.toArray()) ; break; 132*b1cdbd2cSJim Jagielski 133*b1cdbd2cSJim Jagielski case 10: 134*b1cdbd2cSJim Jagielski value.Set("[]any", arrAny) 135*b1cdbd2cSJim Jagielski ret= oletest.methodAny( value); 136*b1cdbd2cSJim Jagielski sfarray= new VBArray( ret); 137*b1cdbd2cSJim Jagielski document.writeln( "Param: " + arrAny.toString() +"<br>"); 138*b1cdbd2cSJim Jagielski document.writeln( "Returns a Sequence< UsrAny > <br>" + sfarray.toArray() ) ; break; 139*b1cdbd2cSJim Jagielski 140*b1cdbd2cSJim Jagielski case 11: 141*b1cdbd2cSJim Jagielski var allArray= new Array(); 142*b1cdbd2cSJim Jagielski for(var i= 0; i <3; i++) 143*b1cdbd2cSJim Jagielski { 144*b1cdbd2cSJim Jagielski var value1= oletest._GetValueObject(); 145*b1cdbd2cSJim Jagielski value1.Set("[]long", arr); 146*b1cdbd2cSJim Jagielski allArray[i]= value1; 147*b1cdbd2cSJim Jagielski } 148*b1cdbd2cSJim Jagielski 149*b1cdbd2cSJim Jagielski value.Set("[][]long", allArray); 150*b1cdbd2cSJim Jagielski 151*b1cdbd2cSJim Jagielski ret= oletest.methodSequence( value); 152*b1cdbd2cSJim Jagielski sfarray= new VBArray( ret); 153*b1cdbd2cSJim Jagielski document.writeln( "Param: " + arrSeq.toString() +"<br>"); 154*b1cdbd2cSJim Jagielski document.writeln("Returns a Sequence< Sequence < long >> <br>") ; 155*b1cdbd2cSJim Jagielski var arr1= new Array(); 156*b1cdbd2cSJim Jagielski arr1= sfarray.toArray(); 157*b1cdbd2cSJim Jagielski for( i=0; i < arr1.length; i++) 158*b1cdbd2cSJim Jagielski { 159*b1cdbd2cSJim Jagielski sfarray2= new VBArray( arr1[i]); 160*b1cdbd2cSJim Jagielski var arr2= new Array(); 161*b1cdbd2cSJim Jagielski arr2= sfarray2.toArray(); 162*b1cdbd2cSJim Jagielski document.writeln( arr2.toString() + "<br>" ); 163*b1cdbd2cSJim Jagielski } 164*b1cdbd2cSJim Jagielski break; 165*b1cdbd2cSJim Jagielski 166*b1cdbd2cSJim Jagielski case 12: 167*b1cdbd2cSJim Jagielski var array1= new Array(); 168*b1cdbd2cSJim Jagielski for(var i= 0; i <3; i++) 169*b1cdbd2cSJim Jagielski { 170*b1cdbd2cSJim Jagielski var array2 = new Array(); 171*b1cdbd2cSJim Jagielski for( var j= 0; j < 3; j++) 172*b1cdbd2cSJim Jagielski { 173*b1cdbd2cSJim Jagielski var value2= oletest._GetValueObject(); 174*b1cdbd2cSJim Jagielski value2.Set("[]long", arr); 175*b1cdbd2cSJim Jagielski array2[j]= value2; 176*b1cdbd2cSJim Jagielski } 177*b1cdbd2cSJim Jagielski 178*b1cdbd2cSJim Jagielski var value1= oletest._GetValueObject(); 179*b1cdbd2cSJim Jagielski value1.Set("[][]long", array2) 180*b1cdbd2cSJim Jagielski array1[i]= value1; 181*b1cdbd2cSJim Jagielski } 182*b1cdbd2cSJim Jagielski var valueAll= oletest._GetValueObject(); 183*b1cdbd2cSJim Jagielski valueAll.Set("[][][]long",array1); 184*b1cdbd2cSJim Jagielski 185*b1cdbd2cSJim Jagielski ret= oletest.methodSequence2( valueAll); 186*b1cdbd2cSJim Jagielski document.writeln( "Param: " + arrSeq2.toString() +"<br>"); 187*b1cdbd2cSJim Jagielski sfarray1= new VBArray( ret); 188*b1cdbd2cSJim Jagielski arr1= sfarray1.toArray(); 189*b1cdbd2cSJim Jagielski for( i=0; i < arr1.length; i++) 190*b1cdbd2cSJim Jagielski { 191*b1cdbd2cSJim Jagielski sfarray2= new VBArray( arr1[i]); 192*b1cdbd2cSJim Jagielski arr2= sfarray2.toArray(); 193*b1cdbd2cSJim Jagielski 194*b1cdbd2cSJim Jagielski for ( j=0; j < arr2.length; j++) 195*b1cdbd2cSJim Jagielski { 196*b1cdbd2cSJim Jagielski sfarray3= new VBArray( arr2[j]); 197*b1cdbd2cSJim Jagielski arr3= sfarray3.toArray(); 198*b1cdbd2cSJim Jagielski document.write( i+ " "); 199*b1cdbd2cSJim Jagielski document.writeln(j + ": "+ arr3.toString() + "<br>" ); 200*b1cdbd2cSJim Jagielski } 201*b1cdbd2cSJim Jagielski 202*b1cdbd2cSJim Jagielski } 203*b1cdbd2cSJim Jagielski break; 204*b1cdbd2cSJim Jagielski 205*b1cdbd2cSJim Jagielski case 13: 206*b1cdbd2cSJim Jagielski 207*b1cdbd2cSJim Jagielski var ar= new Array(); 208*b1cdbd2cSJim Jagielski for( i=0; i< 3; i++) 209*b1cdbd2cSJim Jagielski { 210*b1cdbd2cSJim Jagielski var ob= new Object(); 211*b1cdbd2cSJim Jagielski var valueObject= oletest._GetValueObject(); 212*b1cdbd2cSJim Jagielski ob.value= "A JScript object!"; 213*b1cdbd2cSJim Jagielski valueObject.Set("com.sun.star.uno.XInterface", ob); 214*b1cdbd2cSJim Jagielski// valueObject.Set("long", 5); 215*b1cdbd2cSJim Jagielski ar[i]= valueObject; 216*b1cdbd2cSJim Jagielski } 217*b1cdbd2cSJim Jagielski value.Set("[]com.sun.star.uno.XInterface", ar); 218*b1cdbd2cSJim Jagielski// value.Set("[]long", ar); 219*b1cdbd2cSJim Jagielski 220*b1cdbd2cSJim Jagielski ret = oletest.methodXInterface( value); 221*b1cdbd2cSJim Jagielski sfarray= new VBArray( ret); 222*b1cdbd2cSJim Jagielski var arRet= sfarray.toArray(); 223*b1cdbd2cSJim Jagielski 224*b1cdbd2cSJim Jagielski document.writeln( "Params : Array containing objects ") 225*b1cdbd2cSJim Jagielski for( index in ar) 226*b1cdbd2cSJim Jagielski { 227*b1cdbd2cSJim Jagielski document.writeln( "object " + index + ": " + ar[index].Get().value +" "); 228*b1cdbd2cSJim Jagielski } 229*b1cdbd2cSJim Jagielski document.writeln( "<br>" ) ; 230*b1cdbd2cSJim Jagielski document.writeln("Return: <br>"); 231*b1cdbd2cSJim Jagielski for( index in arRet) 232*b1cdbd2cSJim Jagielski { 233*b1cdbd2cSJim Jagielski document.writeln( "object " + index + ": " + arRet[index].value + " "); 234*b1cdbd2cSJim Jagielski } 235*b1cdbd2cSJim Jagielski break; 236*b1cdbd2cSJim Jagielski 237*b1cdbd2cSJim Jagielski 238*b1cdbd2cSJim Jagielski 239*b1cdbd2cSJim Jagielski 240*b1cdbd2cSJim Jagielski // Properties: setting and getting values 241*b1cdbd2cSJim Jagielski case 200: 242*b1cdbd2cSJim Jagielski value.Set("[]byte", arr) 243*b1cdbd2cSJim Jagielski oletest.AttrByte = value; 244*b1cdbd2cSJim Jagielski ret= oletest.AttrByte; 245*b1cdbd2cSJim Jagielski sfarray= new VBArray( ret); 246*b1cdbd2cSJim Jagielski document.writeln("Setting AttrByte: " + arr.toString() + "<p>"); 247*b1cdbd2cSJim Jagielski document.writeln("Getting AttrByte: " + sfarray.toArray()); break; 248*b1cdbd2cSJim Jagielski 249*b1cdbd2cSJim Jagielski case 201: 250*b1cdbd2cSJim Jagielski value.Set("[]double", arrDouble) 251*b1cdbd2cSJim Jagielski oletest.AttrDouble= value; 252*b1cdbd2cSJim Jagielski ret= oletest.AttrDouble; 253*b1cdbd2cSJim Jagielski sfarray= new VBArray( ret); 254*b1cdbd2cSJim Jagielski document.writeln("Setting AttrDouble: " + arrDouble.toString() + "<p>"); 255*b1cdbd2cSJim Jagielski document.writeln("Getting AttrDouble: " + sfarray.toArray()); break; 256*b1cdbd2cSJim Jagielski 257*b1cdbd2cSJim Jagielski case 202: 258*b1cdbd2cSJim Jagielski value.Set("[]boolean", arrBool) 259*b1cdbd2cSJim Jagielski oletest.AttrBool= value; 260*b1cdbd2cSJim Jagielski ret= oletest.AttrBool; 261*b1cdbd2cSJim Jagielski sfarray= new VBArray( ret); 262*b1cdbd2cSJim Jagielski document.writeln("Setting AttrBool: " + arrBool.toString() + "<p>"); 263*b1cdbd2cSJim Jagielski document.writeln("Getting AttrBool: " + sfarray.toArray()); break; 264*b1cdbd2cSJim Jagielski 265*b1cdbd2cSJim Jagielski case 203: 266*b1cdbd2cSJim Jagielski value.Set("[]short", arr) 267*b1cdbd2cSJim Jagielski oletest.AttrShort= value; 268*b1cdbd2cSJim Jagielski ret= oletest.AttrShort; 269*b1cdbd2cSJim Jagielski sfarray= new VBArray( ret); 270*b1cdbd2cSJim Jagielski document.writeln("Setting AttrShort: " + arr.toString() + "<p>"); 271*b1cdbd2cSJim Jagielski document.writeln("Getting AttrShort: " + sfarray.toArray()); break; 272*b1cdbd2cSJim Jagielski 273*b1cdbd2cSJim Jagielski case 204: 274*b1cdbd2cSJim Jagielski value.Set("[]unsigned short", arr) 275*b1cdbd2cSJim Jagielski oletest.AttrUShort= value; 276*b1cdbd2cSJim Jagielski ret= oletest.AttrUShort; 277*b1cdbd2cSJim Jagielski sfarray= new VBArray( ret); 278*b1cdbd2cSJim Jagielski document.writeln("Setting AttrUShort: " + arr.toString() + "<p>"); 279*b1cdbd2cSJim Jagielski document.writeln("Getting AttrUShort: " + sfarray.toArray()); break; 280*b1cdbd2cSJim Jagielski 281*b1cdbd2cSJim Jagielski case 205: 282*b1cdbd2cSJim Jagielski value.Set("[]long", arr) 283*b1cdbd2cSJim Jagielski oletest.AttrLong= value; 284*b1cdbd2cSJim Jagielski ret= oletest.AttrLong; 285*b1cdbd2cSJim Jagielski sfarray= new VBArray( ret); 286*b1cdbd2cSJim Jagielski document.writeln("Setting AttrLong: " + arr.toString() + "<p>"); 287*b1cdbd2cSJim Jagielski document.writeln("Getting AttrLong: " + sfarray.toArray()); break; 288*b1cdbd2cSJim Jagielski 289*b1cdbd2cSJim Jagielski case 206: 290*b1cdbd2cSJim Jagielski value.Set("[]unsigned long", arr) 291*b1cdbd2cSJim Jagielski oletest.AttrULong= value; 292*b1cdbd2cSJim Jagielski ret= oletest.AttrULong; 293*b1cdbd2cSJim Jagielski sfarray= new VBArray( ret); 294*b1cdbd2cSJim Jagielski document.writeln("Setting AttrULong: " + arr.toString() + "<p>"); 295*b1cdbd2cSJim Jagielski document.writeln("Getting AttrULong: " + sfarray.toArray()); break; 296*b1cdbd2cSJim Jagielski 297*b1cdbd2cSJim Jagielski case 207: 298*b1cdbd2cSJim Jagielski value.Set("[]char", arrChar) 299*b1cdbd2cSJim Jagielski oletest.AttrChar= value; 300*b1cdbd2cSJim Jagielski ret= oletest.AttrChar; 301*b1cdbd2cSJim Jagielski sfarray= new VBArray( ret); 302*b1cdbd2cSJim Jagielski document.writeln("Setting AttrChar: " + arrChar.toString() + "<p>"); 303*b1cdbd2cSJim Jagielski document.writeln("Getting AttrChar: " + sfarray.toArray()); break; 304*b1cdbd2cSJim Jagielski 305*b1cdbd2cSJim Jagielski case 208: 306*b1cdbd2cSJim Jagielski value.Set("[]string", arrString) 307*b1cdbd2cSJim Jagielski oletest.AttrString= value; 308*b1cdbd2cSJim Jagielski ret= oletest.AttrString; 309*b1cdbd2cSJim Jagielski sfarray= new VBArray( ret); 310*b1cdbd2cSJim Jagielski document.writeln("Setting AttrString: " + arrString.toString() + "<p>"); 311*b1cdbd2cSJim Jagielski document.writeln("Getting AttrString: " + sfarray.toArray()); break; 312*b1cdbd2cSJim Jagielski 313*b1cdbd2cSJim Jagielski case 209: 314*b1cdbd2cSJim Jagielski value.Set("[]any", arrAny) 315*b1cdbd2cSJim Jagielski oletest.AttrAny= value; 316*b1cdbd2cSJim Jagielski ret= oletest.AttrAny; 317*b1cdbd2cSJim Jagielski sfarray= new VBArray( ret); 318*b1cdbd2cSJim Jagielski document.writeln("Setting AttrAny: " + arrAny.toString() + "<p>"); 319*b1cdbd2cSJim Jagielski document.writeln("Getting AttrAny: " + sfarray.toArray()); break; 320*b1cdbd2cSJim Jagielski 321*b1cdbd2cSJim Jagielski case 210: 322*b1cdbd2cSJim Jagielski var allArray= new Array(); 323*b1cdbd2cSJim Jagielski for(var i= 0; i <3; i++) 324*b1cdbd2cSJim Jagielski { 325*b1cdbd2cSJim Jagielski var value1= oletest._GetValueObject(); 326*b1cdbd2cSJim Jagielski value1.Set("[]long", arr); 327*b1cdbd2cSJim Jagielski allArray[i]= value1; 328*b1cdbd2cSJim Jagielski } 329*b1cdbd2cSJim Jagielski 330*b1cdbd2cSJim Jagielski value.Set("[][]long", allArray); 331*b1cdbd2cSJim Jagielski 332*b1cdbd2cSJim Jagielski oletest.AttrSequence= value; 333*b1cdbd2cSJim Jagielski ret= oletest.AttrSequence; 334*b1cdbd2cSJim Jagielski sfarray= new VBArray( ret); 335*b1cdbd2cSJim Jagielski 336*b1cdbd2cSJim Jagielski document.writeln( "Param: " + arrSeq.toString() +"<br>"); 337*b1cdbd2cSJim Jagielski document.writeln("Returns a Sequence< Sequence < long >> <br>") ; 338*b1cdbd2cSJim Jagielski var arr1= new Array(); 339*b1cdbd2cSJim Jagielski arr1= sfarray.toArray(); 340*b1cdbd2cSJim Jagielski for( i=0; i < arr1.length; i++) 341*b1cdbd2cSJim Jagielski { 342*b1cdbd2cSJim Jagielski sfarray2= new VBArray( arr1[i]); 343*b1cdbd2cSJim Jagielski var arr2= new Array(); 344*b1cdbd2cSJim Jagielski arr2= sfarray2.toArray(); 345*b1cdbd2cSJim Jagielski document.writeln( arr2.toString() + "<br>" ); 346*b1cdbd2cSJim Jagielski } 347*b1cdbd2cSJim Jagielski break; 348*b1cdbd2cSJim Jagielski 349*b1cdbd2cSJim Jagielski case 211: 350*b1cdbd2cSJim Jagielski var array1= new Array(); 351*b1cdbd2cSJim Jagielski for(var i= 0; i <3; i++) 352*b1cdbd2cSJim Jagielski { 353*b1cdbd2cSJim Jagielski var array2 = new Array(); 354*b1cdbd2cSJim Jagielski for( var j= 0; j < 3; j++) 355*b1cdbd2cSJim Jagielski { 356*b1cdbd2cSJim Jagielski var value2= oletest._GetValueObject(); 357*b1cdbd2cSJim Jagielski value2.Set("[]long", arr); 358*b1cdbd2cSJim Jagielski array2[j]= value2; 359*b1cdbd2cSJim Jagielski } 360*b1cdbd2cSJim Jagielski 361*b1cdbd2cSJim Jagielski var value1= oletest._GetValueObject(); 362*b1cdbd2cSJim Jagielski value1.Set("[][]long", array2) 363*b1cdbd2cSJim Jagielski array1[i]= value1; 364*b1cdbd2cSJim Jagielski } 365*b1cdbd2cSJim Jagielski var valueAll= oletest._GetValueObject(); 366*b1cdbd2cSJim Jagielski valueAll.Set("[][][]long",array1); 367*b1cdbd2cSJim Jagielski 368*b1cdbd2cSJim Jagielski oletest.AttrSequence2= valueAll; 369*b1cdbd2cSJim Jagielski ret= oletest.AttrSequence2; 370*b1cdbd2cSJim Jagielski sfarray1= new VBArray( ret); 371*b1cdbd2cSJim Jagielski arr1= sfarray1.toArray(); 372*b1cdbd2cSJim Jagielski for( i=0; i < arr1.length; i++) 373*b1cdbd2cSJim Jagielski { 374*b1cdbd2cSJim Jagielski sfarray2= new VBArray( arr1[i]); 375*b1cdbd2cSJim Jagielski arr2= sfarray2.toArray(); 376*b1cdbd2cSJim Jagielski 377*b1cdbd2cSJim Jagielski for ( j=0; j < arr2.length; j++) 378*b1cdbd2cSJim Jagielski { 379*b1cdbd2cSJim Jagielski sfarray3= new VBArray( arr2[j]); 380*b1cdbd2cSJim Jagielski arr3= sfarray3.toArray(); 381*b1cdbd2cSJim Jagielski document.write( i+ " "); 382*b1cdbd2cSJim Jagielski document.writeln(j + ": "+ arr3.toString() + "<br>" ); 383*b1cdbd2cSJim Jagielski } 384*b1cdbd2cSJim Jagielski 385*b1cdbd2cSJim Jagielski } 386*b1cdbd2cSJim Jagielski break; 387*b1cdbd2cSJim Jagielski 388*b1cdbd2cSJim Jagielski case 212: 389*b1cdbd2cSJim Jagielski var ar= new Array(); 390*b1cdbd2cSJim Jagielski for( i=0; i< 3; i++) 391*b1cdbd2cSJim Jagielski { 392*b1cdbd2cSJim Jagielski var ob= new Object(); 393*b1cdbd2cSJim Jagielski var valueObject= oletest._GetValueObject(); 394*b1cdbd2cSJim Jagielski ob.value= "A JScript object!"; 395*b1cdbd2cSJim Jagielski valueObject.Set("com.sun.star.uno.XInterface", ob); 396*b1cdbd2cSJim Jagielski ar[i]= valueObject; 397*b1cdbd2cSJim Jagielski } 398*b1cdbd2cSJim Jagielski value.Set("[]com.sun.star.uno.XInterface", ar); 399*b1cdbd2cSJim Jagielski 400*b1cdbd2cSJim Jagielski oletest.AttrXInterface= value; 401*b1cdbd2cSJim Jagielski ret= oletest.AttrXInterface; 402*b1cdbd2cSJim Jagielski sfarray= new VBArray( ret); 403*b1cdbd2cSJim Jagielski var arRet= sfarray.toArray(); 404*b1cdbd2cSJim Jagielski 405*b1cdbd2cSJim Jagielski document.writeln( "Params : Array containing objects ") 406*b1cdbd2cSJim Jagielski for( index in ar) 407*b1cdbd2cSJim Jagielski { 408*b1cdbd2cSJim Jagielski document.writeln( "object " + index + ": " + ar[index].Get().value +" "); 409*b1cdbd2cSJim Jagielski } 410*b1cdbd2cSJim Jagielski document.writeln( "<br>" ) ; 411*b1cdbd2cSJim Jagielski document.writeln("Return: <br>"); 412*b1cdbd2cSJim Jagielski for( index in arRet) 413*b1cdbd2cSJim Jagielski { 414*b1cdbd2cSJim Jagielski document.writeln( "object " + index + ": " + arRet[index].value + " "); 415*b1cdbd2cSJim Jagielski } 416*b1cdbd2cSJim Jagielski 417*b1cdbd2cSJim Jagielski break; 418*b1cdbd2cSJim Jagielski 419*b1cdbd2cSJim Jagielski // Out-parameter ------------------------------------------------------------ 420*b1cdbd2cSJim Jagielski case (2000): 421*b1cdbd2cSJim Jagielski 422*b1cdbd2cSJim Jagielski oletest.testout_methodByte( outValue ); 423*b1cdbd2cSJim Jagielski alert("byte: " + outValue.Get() ); break; 424*b1cdbd2cSJim Jagielski case (2001): 425*b1cdbd2cSJim Jagielski oletest.testout_methodDouble( outValue ); 426*b1cdbd2cSJim Jagielski alert( "double: " + outValue.Get() ); break; 427*b1cdbd2cSJim Jagielski case (2002): 428*b1cdbd2cSJim Jagielski oletest.testout_methodBool( outValue ); 429*b1cdbd2cSJim Jagielski alert( "boolean: " + outValue.Get() ); break; 430*b1cdbd2cSJim Jagielski case (2003): 431*b1cdbd2cSJim Jagielski oletest.testout_methodShort( outValue ); 432*b1cdbd2cSJim Jagielski alert( "short: " + outValue.Get() ); break; 433*b1cdbd2cSJim Jagielski case (2004): 434*b1cdbd2cSJim Jagielski oletest.testout_methodUShort( outValue ); 435*b1cdbd2cSJim Jagielski alert( "unsigned short: " + outValue.Get() ); break; 436*b1cdbd2cSJim Jagielski case (2005): 437*b1cdbd2cSJim Jagielski oletest.testout_methodLong( outValue ); 438*b1cdbd2cSJim Jagielski alert( "long: " + outValue.Get() ); break; 439*b1cdbd2cSJim Jagielski case (2006): 440*b1cdbd2cSJim Jagielski oletest.testout_methodULong( outValue ); 441*b1cdbd2cSJim Jagielski alert( "unsigned long: " + outValue.Get() ); break; 442*b1cdbd2cSJim Jagielski case (2007): 443*b1cdbd2cSJim Jagielski oletest.testout_methodChar( outValue ); 444*b1cdbd2cSJim Jagielski alert( "char: " + outValue.Get() ); break; 445*b1cdbd2cSJim Jagielski case (2008): 446*b1cdbd2cSJim Jagielski oletest.testout_methodString( outValue ); 447*b1cdbd2cSJim Jagielski alert( "string: " + outValue.Get()); break; 448*b1cdbd2cSJim Jagielski case (2009): 449*b1cdbd2cSJim Jagielski oletest.testout_methodAny( outValue ); 450*b1cdbd2cSJim Jagielski alert( "any: " + outValue.Get() ); break; 451*b1cdbd2cSJim Jagielski case (2010): 452*b1cdbd2cSJim Jagielski oletest.testout_methodSequence( outValue ); 453*b1cdbd2cSJim Jagielski var sfarray= new VBArray( outValue.Get()); 454*b1cdbd2cSJim Jagielski arr= sfarray.toArray(); 455*b1cdbd2cSJim Jagielski document.writeln("use the browser's back arrow to go to the previous page <p>"); 456*b1cdbd2cSJim Jagielski document.writeln( arr.toString()); 457*b1cdbd2cSJim Jagielski break; 458*b1cdbd2cSJim Jagielski case (2011): 459*b1cdbd2cSJim Jagielski oletest.testout_methodSequence2( outValue ); 460*b1cdbd2cSJim Jagielski var sfarray= new VBArray( outValue.Get()); 461*b1cdbd2cSJim Jagielski arr= sfarray.toArray(); 462*b1cdbd2cSJim Jagielski var i; 463*b1cdbd2cSJim Jagielski for( i=0; i < arr.length; i++) 464*b1cdbd2cSJim Jagielski { 465*b1cdbd2cSJim Jagielski var sfarray= new VBArray( arr[i]); 466*b1cdbd2cSJim Jagielski var arr2= new Array(); 467*b1cdbd2cSJim Jagielski arr2= sfarray.toArray(); 468*b1cdbd2cSJim Jagielski document.writeln( arr2.toString() + "<br>" ); 469*b1cdbd2cSJim Jagielski } 470*b1cdbd2cSJim Jagielski break; 471*b1cdbd2cSJim Jagielski case (2012): 472*b1cdbd2cSJim Jagielski oletest.testout_methodMulParams1( outValue, outValue2 ); 473*b1cdbd2cSJim Jagielski document.writeln( "int : " + outValue.Get() + " int :" + outValue2.Get()); break; 474*b1cdbd2cSJim Jagielski case (2013): 475*b1cdbd2cSJim Jagielski oletest.testout_methodMulParams2( outValue, outValue2, outValue3 ); 476*b1cdbd2cSJim Jagielski document.writeln( "int: " + outValue.Get() + " int: " + outValue2.Get() + " string: " + outValue3.Get() ); break; 477*b1cdbd2cSJim Jagielski case (2014): 478*b1cdbd2cSJim Jagielski oletest.testout_methodMulParams3( "hallo", outValue ); 479*b1cdbd2cSJim Jagielski document.writeln( "string: " + outValue.Get() ); break; 480*b1cdbd2cSJim Jagielski case (2015): 481*b1cdbd2cSJim Jagielski oletest.testout_methodXInterface( outValue ); 482*b1cdbd2cSJim Jagielski var out= outValue.Get(); 483*b1cdbd2cSJim Jagielski document.writeln( "string: " + out.AttrAny2); break; 484*b1cdbd2cSJim Jagielski 485*b1cdbd2cSJim Jagielski // INOUT - Parameter ------------------------------------------------------------------------------- 486*b1cdbd2cSJim Jagielski // The in value has to be placed on index 0 of the passed in array 487*b1cdbd2cSJim Jagielski case (500): 488*b1cdbd2cSJim Jagielski inoutValue.InitInOutParam("byte", 100); 489*b1cdbd2cSJim Jagielski oletest.testinout_methodByte( inoutValue ); 490*b1cdbd2cSJim Jagielski alert("byte: " + inoutValue.Get() ); break; 491*b1cdbd2cSJim Jagielski case (501): 492*b1cdbd2cSJim Jagielski inoutValue.InitInOutParam("double", 3.14); 493*b1cdbd2cSJim Jagielski oletest.testinout_methodDouble( inoutValue ); 494*b1cdbd2cSJim Jagielski alert( "double: " + inoutValue.Get() ); break; 495*b1cdbd2cSJim Jagielski case (502): 496*b1cdbd2cSJim Jagielski inoutValue.InitInOutParam("boolean", false); 497*b1cdbd2cSJim Jagielski oletest.testinout_methodBool( inoutValue ); 498*b1cdbd2cSJim Jagielski alert( "boolean: " + inoutValue.Get() ); break; 499*b1cdbd2cSJim Jagielski case (503): 500*b1cdbd2cSJim Jagielski inoutValue.InitInOutParam( "short", 200); 501*b1cdbd2cSJim Jagielski oletest.testinout_methodShort( inoutValue ); 502*b1cdbd2cSJim Jagielski alert( "short: " + inoutValue.Get() ); break; 503*b1cdbd2cSJim Jagielski case (504): 504*b1cdbd2cSJim Jagielski inoutValue.InitInOutParam("unsigned short", 300); 505*b1cdbd2cSJim Jagielski oletest.testinout_methodUShort( inoutValue ); 506*b1cdbd2cSJim Jagielski alert( "unsigned short: " + inoutValue.Get() ); break; 507*b1cdbd2cSJim Jagielski case (505): 508*b1cdbd2cSJim Jagielski inoutValue.InitInOutParam("long", 400); 509*b1cdbd2cSJim Jagielski oletest.testinout_methodLong( inoutValue ); 510*b1cdbd2cSJim Jagielski alert( "long: " + inoutValue.Get() ); break; 511*b1cdbd2cSJim Jagielski case (506): 512*b1cdbd2cSJim Jagielski inoutValue.InitInOutParam( "unsigned long", 500); 513*b1cdbd2cSJim Jagielski oletest.testinout_methodULong( inoutValue ); 514*b1cdbd2cSJim Jagielski alert( "unsigned long: " + inoutValue.Get() ); break; 515*b1cdbd2cSJim Jagielski case (507): 516*b1cdbd2cSJim Jagielski inoutValue.InitInOutParam( "char", "A"); 517*b1cdbd2cSJim Jagielski oletest.testinout_methodChar( inoutValue ); 518*b1cdbd2cSJim Jagielski alert( "char: " + inoutValue.Get() ); break; 519*b1cdbd2cSJim Jagielski case (508): 520*b1cdbd2cSJim Jagielski inoutValue.InitInOutParam("string", "I am a string"); 521*b1cdbd2cSJim Jagielski oletest.testinout_methodString( inoutValue ); 522*b1cdbd2cSJim Jagielski alert( "string: " + inoutValue.Get() ); break; 523*b1cdbd2cSJim Jagielski case (509): 524*b1cdbd2cSJim Jagielski inoutValue.InitInOutParam("[]long", arr); 525*b1cdbd2cSJim Jagielski oletest.testinout_methodAny( inoutValue ); // the method simply returns the argument 526*b1cdbd2cSJim Jagielski sfarray= new VBArray( inoutValue.Get()); 527*b1cdbd2cSJim Jagielski arr= sfarray.toArray(); 528*b1cdbd2cSJim Jagielski alert( "any: " + arr.toString() ); break; 529*b1cdbd2cSJim Jagielski case (510): 530*b1cdbd2cSJim Jagielski inoutValue.InitInOutParam("[]long", arr); 531*b1cdbd2cSJim Jagielski oletest.testinout_methodSequence( inoutValue ); 532*b1cdbd2cSJim Jagielski var sfarray= new VBArray( inoutValue.Get()); 533*b1cdbd2cSJim Jagielski arr= sfarray.toArray(); 534*b1cdbd2cSJim Jagielski document.writeln("use the browser's back arrow to go to the previous page <p>"); 535*b1cdbd2cSJim Jagielski document.writeln( arr.toString()); 536*b1cdbd2cSJim Jagielski break; 537*b1cdbd2cSJim Jagielski case (511): 538*b1cdbd2cSJim Jagielski inoutValue.InitInOutParam( "[][]long", arrSeq); 539*b1cdbd2cSJim Jagielski oletest.testinout_methodSequence2( inoutValue ); 540*b1cdbd2cSJim Jagielski var sfarray= new VBArray( inoutValue.Get()); 541*b1cdbd2cSJim Jagielski arr= sfarray.toArray(); 542*b1cdbd2cSJim Jagielski var i; 543*b1cdbd2cSJim Jagielski for( i=0; i < arr.length; i++) 544*b1cdbd2cSJim Jagielski { 545*b1cdbd2cSJim Jagielski var sfarray= new VBArray( arr[i]); 546*b1cdbd2cSJim Jagielski var arr2= new Array(); 547*b1cdbd2cSJim Jagielski arr2= sfarray.toArray(); 548*b1cdbd2cSJim Jagielski document.writeln( arr2.toString() + "<br>" ); 549*b1cdbd2cSJim Jagielski } 550*b1cdbd2cSJim Jagielski break; 551*b1cdbd2cSJim Jagielski case 512: 552*b1cdbd2cSJim Jagielski var ob= new Object(); 553*b1cdbd2cSJim Jagielski ob.value= "this is a string"; 554*b1cdbd2cSJim Jagielski inoutValue.InitInOutParam( "com.sun.star.script.XInvocation", ob); 555*b1cdbd2cSJim Jagielski oletest.testinout_methodXInterface( inoutValue); 556*b1cdbd2cSJim Jagielski document.write("Out value: " + inoutValue.Get().value ); 557*b1cdbd2cSJim Jagielski break; 558*b1cdbd2cSJim Jagielski 559*b1cdbd2cSJim Jagielski 560*b1cdbd2cSJim Jagielski 561*b1cdbd2cSJim Jagielski 562*b1cdbd2cSJim Jagielski 563*b1cdbd2cSJim Jagielski // Test ANY 564*b1cdbd2cSJim Jagielski // Methods 565*b1cdbd2cSJim Jagielski case 1000: 566*b1cdbd2cSJim Jagielski i= 100; 567*b1cdbd2cSJim Jagielski ret= oletest.methodAnyTest1( i); 568*b1cdbd2cSJim Jagielski document.writeln( "in: " + i + " ret: " + ret); 569*b1cdbd2cSJim Jagielski break; 570*b1cdbd2cSJim Jagielski case 1001: 571*b1cdbd2cSJim Jagielski i= 3.14; 572*b1cdbd2cSJim Jagielski ret= oletest.methodAnyTest1( i); 573*b1cdbd2cSJim Jagielski document.writeln( "in: " + i + " ret: " + ret); 574*b1cdbd2cSJim Jagielski break; 575*b1cdbd2cSJim Jagielski case 1002: 576*b1cdbd2cSJim Jagielski i= "Hallo" 577*b1cdbd2cSJim Jagielski ret= oletest.methodAnyTest1( i); 578*b1cdbd2cSJim Jagielski document.writeln( "in: " + i + " ret: " + ret); 579*b1cdbd2cSJim Jagielski break; 580*b1cdbd2cSJim Jagielski case 1003: 581*b1cdbd2cSJim Jagielski i= arr; 582*b1cdbd2cSJim Jagielski ret= oletest.methodAnyTest1( i); 583*b1cdbd2cSJim Jagielski sfarray= new VBArray( ret); 584*b1cdbd2cSJim Jagielski document.writeln( "in: " + i + " ret: " + sfarray.toArray()); 585*b1cdbd2cSJim Jagielski break; 586*b1cdbd2cSJim Jagielski case 1004: 587*b1cdbd2cSJim Jagielski var obj= new Object(); 588*b1cdbd2cSJim Jagielski obj[1]= "This is index 0"; 589*b1cdbd2cSJim Jagielski ret= oletest.methodAnyTest1( obj); 590*b1cdbd2cSJim Jagielski document.writeln( "in: " + obj + " ret: " + ret); 591*b1cdbd2cSJim Jagielski break; 592*b1cdbd2cSJim Jagielski 593*b1cdbd2cSJim Jagielski 594*b1cdbd2cSJim Jagielski // Test ANY property 595*b1cdbd2cSJim Jagielski case 1010: 596*b1cdbd2cSJim Jagielski i= 100; 597*b1cdbd2cSJim Jagielski oletest.AttrAny2= i; 598*b1cdbd2cSJim Jagielski ret= oletest.AttrAny2; 599*b1cdbd2cSJim Jagielski document.writeln( "set: " + i + " get: " + ret); 600*b1cdbd2cSJim Jagielski break; 601*b1cdbd2cSJim Jagielski case 1011: 602*b1cdbd2cSJim Jagielski i= 3.14; 603*b1cdbd2cSJim Jagielski oletest.AttrAny2= i; 604*b1cdbd2cSJim Jagielski ret= oletest.AttrAny2; 605*b1cdbd2cSJim Jagielski document.writeln( "set: " + i + " get: " + ret); 606*b1cdbd2cSJim Jagielski break; 607*b1cdbd2cSJim Jagielski case 1012: 608*b1cdbd2cSJim Jagielski i= "Hallo" 609*b1cdbd2cSJim Jagielski oletest.AttrAny2= i; 610*b1cdbd2cSJim Jagielski ret= oletest.AttrAny2; 611*b1cdbd2cSJim Jagielski document.writeln( "set: " + i + " get: " + ret); 612*b1cdbd2cSJim Jagielski break; 613*b1cdbd2cSJim Jagielski case 1013: 614*b1cdbd2cSJim Jagielski i= arr; 615*b1cdbd2cSJim Jagielski oletest.AttrAny2= i; 616*b1cdbd2cSJim Jagielski ret= oletest.AttrAny2; 617*b1cdbd2cSJim Jagielski sfarray= new VBArray( ret); 618*b1cdbd2cSJim Jagielski document.writeln( "set: " + i + " get: " + sfarray.toArray()); 619*b1cdbd2cSJim Jagielski break; 620*b1cdbd2cSJim Jagielski case 1014: 621*b1cdbd2cSJim Jagielski var obj= new Object(); 622*b1cdbd2cSJim Jagielski obj[1]= "This is index 0"; 623*b1cdbd2cSJim Jagielski oletest.AttrAny2= obj; 624*b1cdbd2cSJim Jagielski ret= oletest.AttrAny2; 625*b1cdbd2cSJim Jagielski document.writeln( "set: " + obj + " get: " + ret); 626*b1cdbd2cSJim Jagielski break; 627*b1cdbd2cSJim Jagielski 628*b1cdbd2cSJim Jagielski 629*b1cdbd2cSJim Jagielski case 2100: 630*b1cdbd2cSJim Jagielski alert("2100"); 631*b1cdbd2cSJim Jagielski var ret= oletest.retMethodByte(); 632*b1cdbd2cSJim Jagielski var sfarray= VBArray( ret); 633*b1cdbd2cSJim Jagielski document.writeln( sfarray.toArray() ); 634*b1cdbd2cSJim Jagielski break; 635*b1cdbd2cSJim Jagielski 636*b1cdbd2cSJim Jagielski 637*b1cdbd2cSJim Jagielski// case 5000: 638*b1cdbd2cSJim Jagielski// oletest.other_methodAnyIn("hallo"); 639*b1cdbd2cSJim Jagielski 640*b1cdbd2cSJim Jagielski 641*b1cdbd2cSJim Jagielski 642*b1cdbd2cSJim Jagielski } 643*b1cdbd2cSJim Jagielski 644*b1cdbd2cSJim Jagielski} 645*b1cdbd2cSJim Jagielski 646*b1cdbd2cSJim Jagielskifunction funcOut( out) 647*b1cdbd2cSJim Jagielski{ 648*b1cdbd2cSJim Jagielski out["du"]= 0xffff; 649*b1cdbd2cSJim Jagielski} 650*b1cdbd2cSJim Jagielski 651*b1cdbd2cSJim Jagielski</script> 652*b1cdbd2cSJim Jagielski 653*b1cdbd2cSJim Jagielski<script language="VBScript"> 654*b1cdbd2cSJim Jagielski 655*b1cdbd2cSJim Jagielskisub callBasic(id) 656*b1cdbd2cSJim Jagielski 657*b1cdbd2cSJim Jagielski Dim factory 658*b1cdbd2cSJim Jagielski Set factory= GetObject("", "com.sun.star.ServiceManager") 659*b1cdbd2cSJim Jagielski 660*b1cdbd2cSJim Jagielski Set oletest= factory.createInstance("oletest.OleTest") 661*b1cdbd2cSJim Jagielski 662*b1cdbd2cSJim Jagielski 663*b1cdbd2cSJim Jagielski arrInt= Array(1,2,3,4,5) 664*b1cdbd2cSJim Jagielski arrInt2= Array( -1, -2, 127, 128, 0) 665*b1cdbd2cSJim Jagielski arrDouble= Array(1.1, 2.2, 3.3, 4.4, 5.5) 666*b1cdbd2cSJim Jagielski arrBool= Array(0,1,0,2,0) 667*b1cdbd2cSJim Jagielski arrLong= Array( &Hff, &Hffff, &Hffffff, &Hffffffff) 668*b1cdbd2cSJim Jagielski arrString= Array("Chicken Wings", "Cheeseburger", "Hamburger") 669*b1cdbd2cSJim Jagielski arrChar= Array("a",65, "M") 670*b1cdbd2cSJim Jagielski arrAny= Array("Mickey", 3.14, 100, "A") 671*b1cdbd2cSJim Jagielski 672*b1cdbd2cSJim Jagielski Dim arrDim2Int(1,1) 673*b1cdbd2cSJim Jagielski For i= 0 To 1 674*b1cdbd2cSJim Jagielski For j= 0 To 1 675*b1cdbd2cSJim Jagielski arrDim2Int(i,j) = i*2 + j 676*b1cdbd2cSJim Jagielski Next 677*b1cdbd2cSJim Jagielski Next 678*b1cdbd2cSJim Jagielski 679*b1cdbd2cSJim Jagielski Dim arrDim3Int(1,1,1) 680*b1cdbd2cSJim Jagielski For i= 0 To 1 681*b1cdbd2cSJim Jagielski For j= 0 To 1 682*b1cdbd2cSJim Jagielski For k=0 To 1 683*b1cdbd2cSJim Jagielski arrDim3Int(i,j,k) = i*2 + j*2 + k 684*b1cdbd2cSJim Jagielski Next 685*b1cdbd2cSJim Jagielski Next 686*b1cdbd2cSJim Jagielski Next 687*b1cdbd2cSJim Jagielski 688*b1cdbd2cSJim Jagielski 689*b1cdbd2cSJim Jagielski set outValue= factory.Bridge_GetValueObject() 690*b1cdbd2cSJim Jagielski outValue.InitOutParam 691*b1cdbd2cSJim Jagielski set value= factory.Bridge_GetValueObject() 692*b1cdbd2cSJim Jagielski select case id 693*b1cdbd2cSJim Jagielski case 0 694*b1cdbd2cSJim Jagielski value.Set "[]byte", arrInt 695*b1cdbd2cSJim Jagielski ret= oletest.methodByte(value) 696*b1cdbd2cSJim Jagielski document.writeln "<br> return value: " 697*b1cdbd2cSJim Jagielski printArray ret 698*b1cdbd2cSJim Jagielski case 1 699*b1cdbd2cSJim Jagielski document.writeln "param: " 700*b1cdbd2cSJim Jagielski printArray arrDouble 701*b1cdbd2cSJim Jagielski ret= oletest.methodDouble(arrDouble) 702*b1cdbd2cSJim Jagielski document.writeln "<br> return value: " 703*b1cdbd2cSJim Jagielski printArray ret 704*b1cdbd2cSJim Jagielski case 2 705*b1cdbd2cSJim Jagielski document.writeln "param: " 706*b1cdbd2cSJim Jagielski printArray arrBool 707*b1cdbd2cSJim Jagielski ret= oletest.methodBool(arrBool) 708*b1cdbd2cSJim Jagielski document.writeln "<br> return value: " 709*b1cdbd2cSJim Jagielski printArray ret 710*b1cdbd2cSJim Jagielski case 3 711*b1cdbd2cSJim Jagielski document.writeln "param: " 712*b1cdbd2cSJim Jagielski printArray arrInt2 713*b1cdbd2cSJim Jagielski ret= oletest.methodShort(arrInt2) 714*b1cdbd2cSJim Jagielski document.writeln "<br> return value: " 715*b1cdbd2cSJim Jagielski printArray ret 716*b1cdbd2cSJim Jagielski case 4 717*b1cdbd2cSJim Jagielski document.writeln "param: " 718*b1cdbd2cSJim Jagielski printArray arrInt 719*b1cdbd2cSJim Jagielski ret= oletest.methodUShort(arrInt) 720*b1cdbd2cSJim Jagielski document.writeln "<br> return value: " 721*b1cdbd2cSJim Jagielski printArray ret 722*b1cdbd2cSJim Jagielski case 5 723*b1cdbd2cSJim Jagielski document.writeln "param: " 724*b1cdbd2cSJim Jagielski printArray arrLong 725*b1cdbd2cSJim Jagielski ret= oletest.methodLong(arrLong) 726*b1cdbd2cSJim Jagielski document.writeln "<br> return value: " 727*b1cdbd2cSJim Jagielski printArray ret 728*b1cdbd2cSJim Jagielski case 6 729*b1cdbd2cSJim Jagielski document.writeln "param: " 730*b1cdbd2cSJim Jagielski printArray arrInt 731*b1cdbd2cSJim Jagielski ret= oletest.methodULong(arrInt) 732*b1cdbd2cSJim Jagielski document.writeln "<br> return value: " 733*b1cdbd2cSJim Jagielski printArray ret 734*b1cdbd2cSJim Jagielski case 7 735*b1cdbd2cSJim Jagielski document.writeln "param: " 736*b1cdbd2cSJim Jagielski printArray arrString 737*b1cdbd2cSJim Jagielski ret= oletest.methodString(arrString) 738*b1cdbd2cSJim Jagielski document.writeln "<br> return value: " 739*b1cdbd2cSJim Jagielski printArray ret 740*b1cdbd2cSJim Jagielski case 8 741*b1cdbd2cSJim Jagielski document.writeln "param: " 742*b1cdbd2cSJim Jagielski printArray arrChar 743*b1cdbd2cSJim Jagielski ret= oletest.methodChar(arrChar) 744*b1cdbd2cSJim Jagielski document.writeln "<br> return value: " 745*b1cdbd2cSJim Jagielski printArray ret 746*b1cdbd2cSJim Jagielski case 9 747*b1cdbd2cSJim Jagielski document.writeln "param: " 748*b1cdbd2cSJim Jagielski printArray arrAny 749*b1cdbd2cSJim Jagielski ret= oletest.methodAny(arrAny) 750*b1cdbd2cSJim Jagielski document.writeln "<br> return value: " 751*b1cdbd2cSJim Jagielski printArray ret 752*b1cdbd2cSJim Jagielski case 10 753*b1cdbd2cSJim Jagielski document.writeln "param: " 754*b1cdbd2cSJim Jagielski printArray2 arrDim2Int 755*b1cdbd2cSJim Jagielski ret= oletest.methodSequence(arrDim2Int) 756*b1cdbd2cSJim Jagielski document.writeln "<br> return value: " 757*b1cdbd2cSJim Jagielski for each val in ret 758*b1cdbd2cSJim Jagielski document.write "<br> array: " 759*b1cdbd2cSJim Jagielski for each val2 in val 760*b1cdbd2cSJim Jagielski document.write val2 761*b1cdbd2cSJim Jagielski next 762*b1cdbd2cSJim Jagielski next 763*b1cdbd2cSJim Jagielski 764*b1cdbd2cSJim Jagielski // In Out Parameter -------------------------------------------------- 765*b1cdbd2cSJim Jagielski case 100 766*b1cdbd2cSJim Jagielski a= 100 767*b1cdbd2cSJim Jagielski document.write "param: " & CStr( a) & "<br>" 768*b1cdbd2cSJim Jagielski oletest.testinout_methodByte a 769*b1cdbd2cSJim Jagielski document.write a 770*b1cdbd2cSJim Jagielski case 101 771*b1cdbd2cSJim Jagielski a= 1.11 772*b1cdbd2cSJim Jagielski document.write "param: " & CStr( a) & "<br>" 773*b1cdbd2cSJim Jagielski oletest.testinout_methodDouble a 774*b1cdbd2cSJim Jagielski document.write a 775*b1cdbd2cSJim Jagielski case 102 776*b1cdbd2cSJim Jagielski a= 5 777*b1cdbd2cSJim Jagielski document.write "param: "& CStr( a) & "<br>" 778*b1cdbd2cSJim Jagielski oletest.testinout_methodBool a 779*b1cdbd2cSJim Jagielski document.write a 780*b1cdbd2cSJim Jagielski case 103 781*b1cdbd2cSJim Jagielski a= -10 782*b1cdbd2cSJim Jagielski document.write "param: "& CStr( a) & "<br>" 783*b1cdbd2cSJim Jagielski oletest.testinout_methodShort a 784*b1cdbd2cSJim Jagielski document.write a 785*b1cdbd2cSJim Jagielski case 104 786*b1cdbd2cSJim Jagielski a= 128 787*b1cdbd2cSJim Jagielski document.write "param: "& CStr( a) & "<br>" 788*b1cdbd2cSJim Jagielski oletest.testinout_methodUShort a 789*b1cdbd2cSJim Jagielski document.write a 790*b1cdbd2cSJim Jagielski case 105 791*b1cdbd2cSJim Jagielski a= 65556 792*b1cdbd2cSJim Jagielski document.write "param: "& CStr( a) & "<br>" 793*b1cdbd2cSJim Jagielski oletest.testinout_methodLong a 794*b1cdbd2cSJim Jagielski document.write a 795*b1cdbd2cSJim Jagielski case 106 796*b1cdbd2cSJim Jagielski a= 65556 797*b1cdbd2cSJim Jagielski document.write "param: "& CStr( a) & "<br>" 798*b1cdbd2cSJim Jagielski oletest.testinout_methodULong a 799*b1cdbd2cSJim Jagielski document.write a 800*b1cdbd2cSJim Jagielski case 107 801*b1cdbd2cSJim Jagielski a= "ein test string" 802*b1cdbd2cSJim Jagielski document.write "param: "& CStr( a) & "<br>" 803*b1cdbd2cSJim Jagielski oletest.testinout_methodString a 804*b1cdbd2cSJim Jagielski document.write a 805*b1cdbd2cSJim Jagielski case 108 806*b1cdbd2cSJim Jagielski a= "W" 807*b1cdbd2cSJim Jagielski document.write "param: "& CStr( a) & "<br>" 808*b1cdbd2cSJim Jagielski oletest.testinout_methodChar a 809*b1cdbd2cSJim Jagielski document.write a 810*b1cdbd2cSJim Jagielski case 109 811*b1cdbd2cSJim Jagielski a= "Ein String im Any" 812*b1cdbd2cSJim Jagielski document.write "param: "& CStr( a) & "<br>" 813*b1cdbd2cSJim Jagielski oletest.other_methodAnyIn a 814*b1cdbd2cSJim Jagielski document.write a 815*b1cdbd2cSJim Jagielski// Attributes ----------------------------------------------------------------- 816*b1cdbd2cSJim Jagielski case 200 817*b1cdbd2cSJim Jagielski document.write "set: " 818*b1cdbd2cSJim Jagielski printArray arrInt 819*b1cdbd2cSJim Jagielski oletest.AttrByte= arrInt 820*b1cdbd2cSJim Jagielski b= oletest.AttrByte 821*b1cdbd2cSJim Jagielski call printArrayEx( "<br> get: ", "<br>", b) 822*b1cdbd2cSJim Jagielski case 201 823*b1cdbd2cSJim Jagielski document.write "set: " 824*b1cdbd2cSJim Jagielski printArray arrDouble 825*b1cdbd2cSJim Jagielski oletest.AttrDouble= arrDouble 826*b1cdbd2cSJim Jagielski b= oletest.AttrDouble 827*b1cdbd2cSJim Jagielski call printArrayEx( "<br> get: ", "<br>", b) 828*b1cdbd2cSJim Jagielski case 202 829*b1cdbd2cSJim Jagielski document.write "set: " 830*b1cdbd2cSJim Jagielski printArray arrBool : 831*b1cdbd2cSJim Jagielski oletest.AttrBool= arrBool 832*b1cdbd2cSJim Jagielski b= oletest.AttrBool 833*b1cdbd2cSJim Jagielski call printArrayEx( "<br> get: ", "<br>", b) 834*b1cdbd2cSJim Jagielski case 203 835*b1cdbd2cSJim Jagielski document.write "set: " 836*b1cdbd2cSJim Jagielski printArray arrInt2 : 837*b1cdbd2cSJim Jagielski oletest.AttrShort= arrInt2 838*b1cdbd2cSJim Jagielski b= oletest.AttrShort 839*b1cdbd2cSJim Jagielski call printArrayEx( "<br> get: ", "<br>", b) 840*b1cdbd2cSJim Jagielski case 204 841*b1cdbd2cSJim Jagielski document.write "set: " 842*b1cdbd2cSJim Jagielski printArray arrInt 843*b1cdbd2cSJim Jagielski oletest.AttrUShort= arrInt 844*b1cdbd2cSJim Jagielski b= oletest.AttrUShort 845*b1cdbd2cSJim Jagielski call printArrayEx( "<br> get: ", "<br>", b) 846*b1cdbd2cSJim Jagielski case 205 847*b1cdbd2cSJim Jagielski document.write "set: " 848*b1cdbd2cSJim Jagielski printArray arrInt2 849*b1cdbd2cSJim Jagielski oletest.AttrLong= arrInt2 850*b1cdbd2cSJim Jagielski b= oletest.AttrLong 851*b1cdbd2cSJim Jagielski call printArrayEx( "<br> get: ", "<br>", b) 852*b1cdbd2cSJim Jagielski case 206 853*b1cdbd2cSJim Jagielski document.write "set: " 854*b1cdbd2cSJim Jagielski printArray arrInt 855*b1cdbd2cSJim Jagielski oletest.AttrULong= arrInt 856*b1cdbd2cSJim Jagielski b= oletest.AttrULong 857*b1cdbd2cSJim Jagielski call printArrayEx( "<br> get: ", "<br>", b) 858*b1cdbd2cSJim Jagielski case 207 859*b1cdbd2cSJim Jagielski document.write "set: " 860*b1cdbd2cSJim Jagielski printArray arrString 861*b1cdbd2cSJim Jagielski oletest.AttrString= arrString 862*b1cdbd2cSJim Jagielski b= oletest.AttrString 863*b1cdbd2cSJim Jagielski call printArrayEx( "<br> get: ", "<br>", b) 864*b1cdbd2cSJim Jagielski case 208 865*b1cdbd2cSJim Jagielski document.write "set: " 866*b1cdbd2cSJim Jagielski printArray arrChar 867*b1cdbd2cSJim Jagielski oletest.AttrChar= arrChar 868*b1cdbd2cSJim Jagielski b= oletest.AttrChar 869*b1cdbd2cSJim Jagielski call printArrayEx( "<br> get: ", "<br>", b) 870*b1cdbd2cSJim Jagielski case 209 871*b1cdbd2cSJim Jagielski document.write "set: " 872*b1cdbd2cSJim Jagielski printArray arrAny 873*b1cdbd2cSJim Jagielski oletest.AttrAny= arrAny 874*b1cdbd2cSJim Jagielski b= oletest.AttrAny 875*b1cdbd2cSJim Jagielski call printArrayEx( "<br> get: ", "<br>", b) 876*b1cdbd2cSJim Jagielski 877*b1cdbd2cSJim Jagielski case 210 878*b1cdbd2cSJim Jagielski document.write "set: <br>" 879*b1cdbd2cSJim Jagielski printArray2 arrDim2Int : 880*b1cdbd2cSJim Jagielski oletest.AttrSequence= arrDim2Int 881*b1cdbd2cSJim Jagielski ret= oletest.AttrSequence 882*b1cdbd2cSJim Jagielski document.write "get: " 883*b1cdbd2cSJim Jagielski for each val in ret 884*b1cdbd2cSJim Jagielski document.write "<br> array: " 885*b1cdbd2cSJim Jagielski for each val2 in val 886*b1cdbd2cSJim Jagielski document.write val2 887*b1cdbd2cSJim Jagielski next 888*b1cdbd2cSJim Jagielski next 889*b1cdbd2cSJim Jagielski 890*b1cdbd2cSJim Jagielski// out params 891*b1cdbd2cSJim Jagielski case 300 892*b1cdbd2cSJim Jagielski oletest.testout_methodByte( outValue ) 893*b1cdbd2cSJim Jagielski alert("byte: " & outValue.Get() ) 894*b1cdbd2cSJim Jagielski 895*b1cdbd2cSJim Jagielski 896*b1cdbd2cSJim Jagielski end select 897*b1cdbd2cSJim Jagielskiend sub 898*b1cdbd2cSJim Jagielskisub printArray( arr) 899*b1cdbd2cSJim Jagielski document.write "array: " 900*b1cdbd2cSJim Jagielski For Each val In arr 901*b1cdbd2cSJim Jagielski document.write CStr(val) & " " 902*b1cdbd2cSJim Jagielski Next 903*b1cdbd2cSJim Jagielskiend sub 904*b1cdbd2cSJim Jagielski 905*b1cdbd2cSJim Jagielski// print a 2 dimensional Array 906*b1cdbd2cSJim Jagielski 907*b1cdbd2cSJim Jagielskisub printArray2( arr) 908*b1cdbd2cSJim Jagielski elements1= UBound( arr, 1) - LBound( arr, 1) +1 909*b1cdbd2cSJim Jagielski elements2= UBound( arr, 2) - LBound( arr, 2) +1 910*b1cdbd2cSJim Jagielski 911*b1cdbd2cSJim Jagielski For i=0 To elements1 -1 912*b1cdbd2cSJim Jagielski document.write( "array " & CStr( i) & ": " ) 913*b1cdbd2cSJim Jagielski For j=0 To elements2 -1 914*b1cdbd2cSJim Jagielski document.write CStr( arr(i,j)) 915*b1cdbd2cSJim Jagielski Next 916*b1cdbd2cSJim Jagielski document.write( "<br>") 917*b1cdbd2cSJim Jagielski Next 918*b1cdbd2cSJim Jagielskiend sub 919*b1cdbd2cSJim Jagielski 920*b1cdbd2cSJim Jagielskisub printArrayEx( pre, post, array) 921*b1cdbd2cSJim Jagielski document.write pre 922*b1cdbd2cSJim Jagielski printArray array 923*b1cdbd2cSJim Jagielski document.write post 924*b1cdbd2cSJim Jagielskiend sub 925*b1cdbd2cSJim Jagielski</script> 926*b1cdbd2cSJim Jagielski 927*b1cdbd2cSJim Jagielski<div id=out> </div> 928*b1cdbd2cSJim Jagielski 929*b1cdbd2cSJim Jagielski<!-- Insert HTML here --> 930*b1cdbd2cSJim Jagielski 931*b1cdbd2cSJim Jagielski<h2> JScript with _GetValueObject </h2> 932*b1cdbd2cSJim JagielskiTests Array/Sequence conversion.<br> 933*b1cdbd2cSJim JagielskiAll methods receive a Sequence as Parameter. The element type of the Sequence is written on the buttons. 934*b1cdbd2cSJim Jagielski<br> 935*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 1)'>byte</Button> 936*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 2)'>double</Button> 937*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 3)'>boolean</Button> 938*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 4)'>short</Button> 939*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 5)'>unsigned short</Button> 940*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 6)'>long</Button> 941*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 7)'>unsigned long</Button> 942*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 8)'>char</Button> 943*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 10)'>any</Button> 944*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 11)'>sequence<long> </Button> 945*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 12)'>sequence<sequence<long> > </Button> 946*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 13)'>XInterface</Button> 947*b1cdbd2cSJim Jagielski<p> 948*b1cdbd2cSJim Jagielski 949*b1cdbd2cSJim Jagielski 950*b1cdbd2cSJim JagielskiOut Parameter <br> 951*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 2000)'>byte </Button> 952*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 2001)'>double</Button> 953*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 2002)'>boolean</Button> 954*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 2003)'>short</Button> 955*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 2004)'>unsigned short</Button> 956*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 2005)'>long</Button> 957*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 2006)'>unsigned long</Button> 958*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 2007)'>char</Button> 959*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 2008)'>string</Button> 960*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 2009)'>any</Button> 961*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 2010)'>sequence<long> </Button> 962*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 2011)'>sequence<sequence<long> > </Button> 963*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 2012)'>2 out </Button> 964*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 2013)'>3 out </Button> 965*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 2014)'>1 in & 1 out </Button> 966*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 2015)'>XInterface </Button> 967*b1cdbd2cSJim Jagielski 968*b1cdbd2cSJim Jagielski<p> 969*b1cdbd2cSJim JagielskiIn Out Parameter <br> 970*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 500)'>byte </Button> 971*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 501)'>double</Button> 972*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 502)'>boolean</Button> 973*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 503)'>short</Button> 974*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 504)'>unsigned short</Button> 975*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 505)'>long</Button> 976*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 506)'>unsigned long</Button> 977*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 507)'>char</Button> 978*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 508)'>string</Button> 979*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 509)'>any</Button> 980*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 510)'>sequence<long> </Button> 981*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 511)'>sequence<sequence<long> > </Button> 982*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 512)'>XInterface </Button> 983*b1cdbd2cSJim Jagielski<p> 984*b1cdbd2cSJim Jagielski 985*b1cdbd2cSJim JagielskiTests Array/Sequence conversion with Attributes. All params are of type Sequence and 986*b1cdbd2cSJim Jagielski the element type of the Sequence is written on the buttons. <br> 987*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 200)'>byte </Button> 988*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 201)'>double</Button> 989*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 202)'>boolean</Button> 990*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 203)'>short</Button> 991*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 204)'>unsigned short</Button> 992*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 205)'>long</Button> 993*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 206)'>unsigned long</Button> 994*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 207)'>char</Button> 995*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 208)'>string</Button> 996*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 209)'>any</Button> 997*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 210)'>sequence<long> </Button> 998*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 211)'>sequence<sequence<long> > </Button> 999*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 212)'>XInterface </Button> 1000*b1cdbd2cSJim Jagielski<p> 1001*b1cdbd2cSJim Jagielski 1002*b1cdbd2cSJim Jagielski<!-- 1003*b1cdbd2cSJim JagielskiTest of Any parameter in a method. Any contains:<br> 1004*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 1000)'>integer </Button> 1005*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 1001)'>double </Button> 1006*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 1002)'>string</Button> 1007*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 1003)'>array</Button> 1008*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 1004)'>object</Button> 1009*b1cdbd2cSJim Jagielski<p> 1010*b1cdbd2cSJim JagielskiTest of Any parameter in a property. Any contains:<br> 1011*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 1010)'>integer </Button> 1012*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 1011)'>double </Button> 1013*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 1012)'>string</Button> 1014*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 1013)'>array</Button> 1015*b1cdbd2cSJim Jagielski<button onclick='callOleTest( 1014)'>object</Button> 1016*b1cdbd2cSJim Jagielski<p> 1017*b1cdbd2cSJim Jagielski<p> 1018*b1cdbd2cSJim Jagielski--> 1019*b1cdbd2cSJim Jagielski 1020*b1cdbd2cSJim Jagielski<h2> Visual Basic Tests </h2> 1021*b1cdbd2cSJim JagielskiTest array /Sequence conversion and return value<br> 1022*b1cdbd2cSJim JagielskiTemplate: <b> Sequence < type > method( Sequence< type > ) </b> 1023*b1cdbd2cSJim Jagielski<p> 1024*b1cdbd2cSJim Jagielski 1025*b1cdbd2cSJim Jagielski 1026*b1cdbd2cSJim Jagielski<button onclick='callBasic(0)'>byte</button> 1027*b1cdbd2cSJim Jagielski<!-- 1028*b1cdbd2cSJim Jagielski<button onclick='callBasic(1)'>double</button> 1029*b1cdbd2cSJim Jagielski<button onclick='callBasic(2)'>boolean</button> 1030*b1cdbd2cSJim Jagielski<button onclick='callBasic(3)'>short</button> 1031*b1cdbd2cSJim Jagielski<button onclick='callBasic(4)'>u short</button> 1032*b1cdbd2cSJim Jagielski<button onclick='callBasic(5)'>long</button> 1033*b1cdbd2cSJim Jagielski<button onclick='callBasic(6)'>u long</button> 1034*b1cdbd2cSJim Jagielski<button onclick='callBasic(7)'>string</button> 1035*b1cdbd2cSJim Jagielski<button onclick='callBasic(8)'>char</button> 1036*b1cdbd2cSJim Jagielski<button onclick='callBasic(9)'>any</button> <br> 1037*b1cdbd2cSJim Jagielski<button onclick='callBasic(10)'>Seq < int ></button> 1038*b1cdbd2cSJim Jagielski--> 1039*b1cdbd2cSJim Jagielski<p> 1040*b1cdbd2cSJim Jagielski 1041*b1cdbd2cSJim Jagielski 1042*b1cdbd2cSJim JagielskiOut parameter <br> 1043*b1cdbd2cSJim JagielskiTemplate: <b> void method( Sequence < type > ) </b> <br> 1044*b1cdbd2cSJim Jagielski<button onclick='callBasic(300)'>byte</button> 1045*b1cdbd2cSJim Jagielski<!-- 1046*b1cdbd2cSJim Jagielski<button onclick='callBasic(101)'>double</button> 1047*b1cdbd2cSJim Jagielski<button onclick='callBasic(102)'>boolean</button> 1048*b1cdbd2cSJim Jagielski<button onclick='callBasic(103)'>short</button> 1049*b1cdbd2cSJim Jagielski<button onclick='callBasic(104)'>u short</button> 1050*b1cdbd2cSJim Jagielski<button onclick='callBasic(105)'>long</button> 1051*b1cdbd2cSJim Jagielski<button onclick='callBasic(106)'>u long</button> 1052*b1cdbd2cSJim Jagielski<button onclick='callBasic(107)'>string</button> 1053*b1cdbd2cSJim Jagielski<button onclick='callBasic(108)'>char</button> 1054*b1cdbd2cSJim Jagielski<button onclick='callBasic(109)'>any</button> <br> 1055*b1cdbd2cSJim Jagielski--> 1056*b1cdbd2cSJim Jagielski<p> 1057*b1cdbd2cSJim Jagielski<!-- 1058*b1cdbd2cSJim JagielskiTests Array/Sequence conversion with <b>Attributes</b>. All params are of type Sequence and 1059*b1cdbd2cSJim Jagielski the element type of the Sequence is written on the buttons. <br> 1060*b1cdbd2cSJim Jagielski<button onclick='callBasic( 200)'>byte </Button> 1061*b1cdbd2cSJim Jagielski<button onclick='callBasic( 201)'>double</Button> 1062*b1cdbd2cSJim Jagielski<button onclick='callBasic( 202)'>boolean</Button> 1063*b1cdbd2cSJim Jagielski<button onclick='callBasic( 203)'>short</Button> 1064*b1cdbd2cSJim Jagielski<button onclick='callBasic( 204)'>unsigned short</Button> 1065*b1cdbd2cSJim Jagielski<button onclick='callBasic( 205)'>long</Button> 1066*b1cdbd2cSJim Jagielski<button onclick='callBasic( 206)'>unsigned long</Button> 1067*b1cdbd2cSJim Jagielski<button onclick='callBasic( 207)'>string</Button> 1068*b1cdbd2cSJim Jagielski<button onclick='callBasic( 208)'>char</Button> 1069*b1cdbd2cSJim Jagielski<button onclick='callBasic( 209)'>any</Button> 1070*b1cdbd2cSJim Jagielski<button onclick='callBasic( 210)'>sequence<long> </Button> 1071*b1cdbd2cSJim Jagielski--> 1072*b1cdbd2cSJim Jagielski 1073*b1cdbd2cSJim Jagielski 1074*b1cdbd2cSJim Jagielski 1075