office-gobmx/udkapi/com/sun/star/script/XInvocation.idl
Rüdiger Timm c88909ca94 INTEGRATION: CWS ooo19126 (1.9.42); FILE MERGED
2005/09/05 14:07:39 rt 1.9.42.1: #i54170# Change license header: remove SISSL
2005-09-09 15:18:58 +00:00

165 lines
6.5 KiB
Text

/*************************************************************************
*
* OpenOffice.org - a multi-platform office productivity suite
*
* $RCSfile: XInvocation.idl,v $
*
* $Revision: 1.10 $
*
* last change: $Author: rt $ $Date: 2005-09-09 16:17:42 $
*
* The Contents of this file are made available subject to
* the terms of GNU Lesser General Public License Version 2.1.
*
*
* GNU Lesser General Public License Version 2.1
* =============================================
* Copyright 2005 by Sun Microsystems, Inc.
* 901 San Antonio Road, Palo Alto, CA 94303, USA
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License version 2.1, as published by the Free Software Foundation.
*
* This library 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 for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston,
* MA 02111-1307 USA
*
************************************************************************/
#ifndef __com_sun_star_script_XInvocation_idl__
#define __com_sun_star_script_XInvocation_idl__
#ifndef __com_sun_star_uno_XInterface_idl__
#include <com/sun/star/uno/XInterface.idl>
#endif
#ifndef __com_sun_star_beans_XIntrospectionAccess_idl__
#include <com/sun/star/beans/XIntrospectionAccess.idl>
#endif
#ifndef __com_sun_star_lang_IllegalArgumentException_idl__
#include <com/sun/star/lang/IllegalArgumentException.idl>
#endif
#ifndef __com_sun_star_script_CannotConvertException_idl__
#include <com/sun/star/script/CannotConvertException.idl>
#endif
#ifndef __com_sun_star_reflection_InvocationTargetException_idl__
#include <com/sun/star/reflection/InvocationTargetException.idl>
#endif
#ifndef __com_sun_star_beans_UnknownPropertyException_idl__
#include <com/sun/star/beans/UnknownPropertyException.idl>
#endif
//=============================================================================
module com { module sun { module star { module script {
//=============================================================================
/** gives access to an object's methods and properties.
Container access is available through
<type scope="com::sun::star::container">XIndexContainer</type>,
<type scope="com::sun::star::container">XNameContainer</type> and
<type scope="com::sun::star::container">XEnumerationAccess</type>.
</p>
*/
published interface XInvocation: com::sun::star::uno::XInterface
{
//-------------------------------------------------------------------------
/** returns the introspection from this object or <NULL/>
if the object does not provide this information.
*/
com::sun::star::beans::XIntrospectionAccess getIntrospection();
//-------------------------------------------------------------------------
/** provides access to methods exposed by an object.
@param aParams all parameters; pure out params are undefined in sequence,
the value has to be ignored by the callee
@param aOutParamIndex This sequence contains the indices of all parameters
that are specified as out or inout.
@param aOutParam This sequence contains the values of all parameters that
are specified as out or inout and corresponds with the
indices provided by the aOutParamIndex sequence.
Example: aOutParamIndex == { 1, 4 } means that
aOutParam[0] contains the out value of the aParams[1]
parameter and aOutParam[1] contains the out value of
the aParams[4] parameter.
*/
any invoke( [in] string aFunctionName,
[in] sequence<any> aParams,
[out] sequence<short> aOutParamIndex,
[out] sequence<any> aOutParam )
raises( com::sun::star::lang::IllegalArgumentException,
com::sun::star::script::CannotConvertException,
com::sun::star::reflection::InvocationTargetException );
//-------------------------------------------------------------------------
/** sets a value to the property with the specified name.
<p> If the underlying object implements an
<type scope="com::sun::star::container">XNameContainer</type>,
then this method will insert the value if there is no such
<var>aPropertyName</var>.
</p>
*/
void setValue( [in] string aPropertyName,
[in] any aValue )
raises( com::sun::star::beans::UnknownPropertyException,
com::sun::star::script::CannotConvertException,
com::sun::star::reflection::InvocationTargetException );
//-------------------------------------------------------------------------
/** returns the value of the property with the specified name.
@param aPropertyName
specifies the name of the property.
*/
any getValue( [in] string aPropertyName )
raises( com::sun::star::beans::UnknownPropertyException );
//-------------------------------------------------------------------------
/** returns <TRUE/> if the method with the specified name exists, else <FALSE/>.
<p>This optimizes the calling sequence
( <member>XInvocation::hasMethod</member>,
<member>XInvocation::invoke</member> )!</p>
@param aName
specifies the name of the method.
*/
boolean hasMethod( [in] string aName );
//-------------------------------------------------------------------------
/** returns <TRUE/> if the property with the specified name exists, else <FALSE/>.
<p>This optimizes the calling sequence
( <member>XInvocation::hasProperty</member>,
<member>XInvocation::getValue</member> ) or
( <member>XInvocation::hasProperty</member>,
<member>XInvocation::setValue</member> )!
@param aName
specifies the name of the property.
*/
boolean hasProperty( [in] string aName );
};
//=============================================================================
}; }; }; };
#endif