1*408a4873SAndrew Rist/************************************************************** 2cdf0e10cSrcweir * 3*408a4873SAndrew Rist * Licensed to the Apache Software Foundation (ASF) under one 4*408a4873SAndrew Rist * or more contributor license agreements. See the NOTICE file 5*408a4873SAndrew Rist * distributed with this work for additional information 6*408a4873SAndrew Rist * regarding copyright ownership. The ASF licenses this file 7*408a4873SAndrew Rist * to you under the Apache License, Version 2.0 (the 8*408a4873SAndrew Rist * "License"); you may not use this file except in compliance 9*408a4873SAndrew Rist * with the License. You may obtain a copy of the License at 10*408a4873SAndrew Rist * 11*408a4873SAndrew Rist * http://www.apache.org/licenses/LICENSE-2.0 12*408a4873SAndrew Rist * 13*408a4873SAndrew Rist * Unless required by applicable law or agreed to in writing, 14*408a4873SAndrew Rist * software distributed under the License is distributed on an 15*408a4873SAndrew Rist * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16*408a4873SAndrew Rist * KIND, either express or implied. See the License for the 17*408a4873SAndrew Rist * specific language governing permissions and limitations 18*408a4873SAndrew Rist * under the License. 19*408a4873SAndrew Rist * 20*408a4873SAndrew Rist *************************************************************/ 21*408a4873SAndrew Rist 22*408a4873SAndrew Rist 23cdf0e10cSrcweir#ifndef __com_sun_star_script_XEngine_idl__ 24cdf0e10cSrcweir#define __com_sun_star_script_XEngine_idl__ 25cdf0e10cSrcweir 26cdf0e10cSrcweir#ifndef __com_sun_star_uno_XInterface_idl__ 27cdf0e10cSrcweir#include <com/sun/star/uno/XInterface.idl> 28cdf0e10cSrcweir#endif 29cdf0e10cSrcweir 30cdf0e10cSrcweir#ifndef __com_sun_star_script_XLibraryAccess_idl__ 31cdf0e10cSrcweir#include <com/sun/star/script/XLibraryAccess.idl> 32cdf0e10cSrcweir#endif 33cdf0e10cSrcweir 34cdf0e10cSrcweir#ifndef __com_sun_star_script_XEngineListener_idl__ 35cdf0e10cSrcweir#include <com/sun/star/script/XEngineListener.idl> 36cdf0e10cSrcweir#endif 37cdf0e10cSrcweir 38cdf0e10cSrcweir 39cdf0e10cSrcweir//============================================================================= 40cdf0e10cSrcweir 41cdf0e10cSrcweirmodule com { module sun { module star { module script { 42cdf0e10cSrcweir 43cdf0e10cSrcweir//============================================================================= 44cdf0e10cSrcweir/** makes it possible to control a scripting engine. 45cdf0e10cSrcweir @deprecated 46cdf0e10cSrcweir */ 47cdf0e10cSrcweirpublished interface XEngine: com::sun::star::uno::XInterface 48cdf0e10cSrcweir{ 49cdf0e10cSrcweir //------------------------------------------------------------------------- 50cdf0e10cSrcweir /** sets an interface to an object as a scripting root. 51cdf0e10cSrcweir 52cdf0e10cSrcweir <p>If the root object implements the XInvocation interface, 53cdf0e10cSrcweir then the engine uses this interface to set/get properties and 54cdf0e10cSrcweir call methods. 55cdf0e10cSrcweir </p> 56cdf0e10cSrcweir */ 57cdf0e10cSrcweir void setRoot( [in] com::sun::star::uno::XInterface xRoot ); 58cdf0e10cSrcweir 59cdf0e10cSrcweir //------------------------------------------------------------------------- 60cdf0e10cSrcweir /** gets an interface to the object which is the scripting root. 61cdf0e10cSrcweir */ 62cdf0e10cSrcweir com::sun::star::uno::XInterface getRoot(); 63cdf0e10cSrcweir 64cdf0e10cSrcweir //------------------------------------------------------------------------- 65cdf0e10cSrcweir /** sets an access object to get external functions. 66cdf0e10cSrcweir */ 67cdf0e10cSrcweir void setLibraryAccess( [in] com::sun::star::script::XLibraryAccess Library ); 68cdf0e10cSrcweir 69cdf0e10cSrcweir //------------------------------------------------------------------------- 70cdf0e10cSrcweir /** compiles a script module in the scope of the root object. 71cdf0e10cSrcweir */ 72cdf0e10cSrcweir boolean compile( [in] string ModuleName, 73cdf0e10cSrcweir [in] string Script, 74cdf0e10cSrcweir [in] boolean CreateDebugInfo ); 75cdf0e10cSrcweir 76cdf0e10cSrcweir //------------------------------------------------------------------------- 77cdf0e10cSrcweir /** runs a script specified by a string. 78cdf0e10cSrcweir 79cdf0e10cSrcweir <p>The arguments given in <var>aArgs</var> can be ignored by 80cdf0e10cSrcweir the engine. The Script is executed synchronously.</p> 81cdf0e10cSrcweir */ 82cdf0e10cSrcweir any run( [in] string aScript, 83cdf0e10cSrcweir [in] com::sun::star::uno::XInterface xThis, 84cdf0e10cSrcweir [in] sequence<any> aArgs ); 85cdf0e10cSrcweir 86cdf0e10cSrcweir //------------------------------------------------------------------------- 87cdf0e10cSrcweir /** runs the script specified by a string and makes callbacks. 88cdf0e10cSrcweir 89cdf0e10cSrcweir <p>The arguments given in <var>aArgs</var> can be ignored by 90cdf0e10cSrcweir the engine. The script is executed asynchronously. 91cdf0e10cSrcweir 92cdf0e10cSrcweir </p> 93cdf0e10cSrcweir */ 94cdf0e10cSrcweir void runAsync( [in] string acript, 95cdf0e10cSrcweir [in] com::sun::star::uno::XInterface xThis, 96cdf0e10cSrcweir [in] sequence<any> args, 97cdf0e10cSrcweir [in] com::sun::star::script::XEngineListener xCallback ); 98cdf0e10cSrcweir 99cdf0e10cSrcweir //------------------------------------------------------------------------- 100cdf0e10cSrcweir /** terminates the execution of the running script. 101cdf0e10cSrcweir 102cdf0e10cSrcweir <p>The waiting queue is cleared too.</p> 103cdf0e10cSrcweir */ 104cdf0e10cSrcweir void cancel(); 105cdf0e10cSrcweir 106cdf0e10cSrcweir //------------------------------------------------------------------------- 107cdf0e10cSrcweir /** adds an engine listener. 108cdf0e10cSrcweir 109cdf0e10cSrcweir <p>It is suggested to allow multiple registration of the same listener, 110cdf0e10cSrcweir thus for each time a listener is added, it has to be removed. 111cdf0e10cSrcweir */ 112cdf0e10cSrcweir void addEngineListener( [in] com::sun::star::script::XEngineListener Listener ); 113cdf0e10cSrcweir 114cdf0e10cSrcweir //------------------------------------------------------------------------- 115cdf0e10cSrcweir /** removes an engine listener. 116cdf0e10cSrcweir 117cdf0e10cSrcweir <p>It is suggested to allow multiple registration of the same listener, 118cdf0e10cSrcweir thus for each time a listener is added, it has to be removed. 119cdf0e10cSrcweir */ 120cdf0e10cSrcweir void removeEngineListener( [in] com::sun::star::script::XEngineListener Listener ); 121cdf0e10cSrcweir 122cdf0e10cSrcweir}; 123cdf0e10cSrcweir 124cdf0e10cSrcweir//============================================================================= 125cdf0e10cSrcweir 126cdf0e10cSrcweir}; }; }; }; 127cdf0e10cSrcweir 128cdf0e10cSrcweir#endif 129