+
+
+
+ module com { module sun { module star { module script {
+
+/** makes it possible to set breakpoints in an interpreter.
+ @deprecated
+ */
+published interface XDebugging: com::sun::star::uno::XInterface
+{
+ /** returns the source code line where the breakpoint was set.
+
+ The value can differ from the parameter
+ nSourceCodeLine when this is not a valid line to
+ place it. -1 indicates that the breakpoint cannot be set at
+ this position.
+ */
+ long setBreakPoint( [in] string aModuleName,
+ [in] long nSourceCodeLine,
+ [in] boolean bOn );
+
+ /** clears all breakpoints in the module set by "setBreakPoint".
+ */
+ void clearAllBreakPoints( [in] string aModuleName );
+
+ /** Evaluates an expression.
+
+ @param aSourceCode the expression to be evaluated.
+
+ @param nCallStackPos Position in the call stack for which the expression
+ should be evaluated. 0 is the top/actual position in the call
+ in the call stack, 1 the next and so on.
+
+ @returns the value of the expression as string.
+ */
+ string eval( [in] string aSourceCode,
+ [in] short nCallStackPos );
+
+ /** Returns the engine's stack trace of the current execute position. Line break is the delimiter.
+ */
+ sequence getStackTrace();
+
+ /** returns more detailed information about a specified stack frame.
+
+ @param nCallStackPos
+ specifies the position in the call stack for the
+ variables that should be delivered.
+ */
+ com::sun::star::script::ContextInformation getContextInformation( [in] short nCallStackPos );
+
+ /** returns the value of the variable at the given stack position.
+ */
+ string dumpVariable( [in] string aVariableName,
+ [in] short nCallStackPos );
+
+ /** sets the value of the specified variable within the specified
+ stack frame.
+ */
+ void setVariable( [in] string aVariableName,
+ [in] string aValue,
+ [in] short nCallStackPos );
+
+ /** returns whether the given variable exists within the specified stack frame.
+ */
+ boolean isVariable( [in] string aVariableName,
+ [in] short nCallStackPos );
+
+ /** stops the execution of the interpreter.
+
+ To continue with the execution, call XDebugging::doContinue().
+ */
+ void stop();
+
+ /** executes the next and only the next statement.
+
+
If the next statement is a function call, the function is
+ executed completely.
+ */
+ void stepOver();
+
+ /** executes the next and only the next statement.
+
+ If the next statement is a function call, only the function
+ entered.
+ */
+ void stepIn();
+
+ /** executes the program until the next return from this stack frame.
+ */
+ void stepOut();
+
+ /** continues the program execution.
+ */
+ void doContinue();
+
+};
+
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/udkapi/com/sun/star/script/XDefaultMethod.idl b/udkapi/com/sun/star/script/XDefaultMethod.idl
new file mode 100644
index 000000000..7905f8ccf
--- /dev/null
+++ b/udkapi/com/sun/star/script/XDefaultMethod.idl
@@ -0,0 +1,52 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#ifndef __com_sun_star_script_XDefaultMethod_idl__
+#define __com_sun_star_script_XDefaultMethod_idl__
+
+#include
+
+module com { module sun { module star { module script {
+/**
+ An object supporting this interface indicates to interested
+ parties or clients the name of the default method for
+ this object.
+ For example where ExampleObject is an instance of an Object that
+ supports this interface which returns the default method name
+ "defaultMethod".A scripting engine could use this information to support
+ syntax like
"ExampleObject( Param1 ... ParamN )"
+ which would be equivalent to writing
+ "ExampleObject.defaultMethod( Param1 ... ParamN )"
+*/
+interface XDefaultMethod : ::com::sun::star::uno::XInterface
+{
+ /**
+ Returns the name of the default method
+
+ @return
+ The `string` name of default method
+ */
+ string getDefaultMethodName();
+
+};
+
+}; }; }; };
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/udkapi/com/sun/star/script/XDefaultProperty.idl b/udkapi/com/sun/star/script/XDefaultProperty.idl
new file mode 100644
index 000000000..45d39cb4e
--- /dev/null
+++ b/udkapi/com/sun/star/script/XDefaultProperty.idl
@@ -0,0 +1,56 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#ifndef __com_sun_star_script_XDefaultProperty_idl__
+#define __com_sun_star_script_XDefaultProperty_idl__
+
+#include
+
+module com { module sun { module star { module script {
+/**
+ An object supporting this interface indicates to interested
+ parties or clients the name of the default property for
+ this object.
+ For example where ExampleObject is an instance of an Object that
+ supports this interface which returns the default property name
+ "Value".A scripting engine could use this information to support
+ syntax like
ExampleObject = "foo"
+ which would be equivalent to writing
+ ExampleObject.Value = "foo"
+ or
+ bar = ExampleObject
+ which would be equivalent to writing
+ bar = ExampleObject.Value
+*/
+interface XDefaultProperty : ::com::sun::star::uno::XInterface
+{
+ /**
+ Returns the name of the default property
+
+ @return
+ The `string` name of default property
+ */
+ string getDefaultPropertyName();
+
+};
+
+}; }; }; };
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/udkapi/com/sun/star/script/XDirectInvocation.idl b/udkapi/com/sun/star/script/XDirectInvocation.idl
new file mode 100644
index 000000000..ff21fb17a
--- /dev/null
+++ b/udkapi/com/sun/star/script/XDirectInvocation.idl
@@ -0,0 +1,61 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+#ifndef __com_sun_star_script_XDirectInvocation_idl__
+#define __com_sun_star_script_XDirectInvocation_idl__
+
+#include
+
+#include
+
+#include
+
+#include
+
+#include
+
+
+
+ module com { module sun { module star { module script {
+
+/** provides access to an object's methods and properties.
+ */
+published interface XDirectInvocation: com::sun::star::uno::XInterface
+{
+ /** provides access to methods and properties exposed by an object.
+
+ @param aName the method to invoke
+ @param aParams all parameters, out parameters are not supported
+ */
+ any directInvoke( [in] string aName,
+ [in] sequence aParams )
+ raises( com::sun::star::lang::IllegalArgumentException,
+ com::sun::star::script::CannotConvertException,
+ com::sun::star::reflection::InvocationTargetException );
+
+ /** returns `TRUE` if the method or property with the specified name exists, else `FALSE`.
+ */
+ boolean hasMember( [in] string aName );
+};
+
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/udkapi/com/sun/star/script/XEngine.idl b/udkapi/com/sun/star/script/XEngine.idl
new file mode 100644
index 000000000..a38371934
--- /dev/null
+++ b/udkapi/com/sun/star/script/XEngine.idl
@@ -0,0 +1,108 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+#ifndef __com_sun_star_script_XEngine_idl__
+#define __com_sun_star_script_XEngine_idl__
+
+#include
+
+#include
+
+#include
+
+
+
+module com { module sun { module star { module script {
+
+/** makes it possible to control a scripting engine.
+ @deprecated
+ */
+published interface XEngine: com::sun::star::uno::XInterface
+{
+ /** sets an interface to an object as a scripting root.
+
+ If the root object implements the XInvocation interface,
+ then the engine uses this interface to set/get properties and
+ call methods.
+
+ */
+ void setRoot( [in] com::sun::star::uno::XInterface xRoot );
+
+ /** gets an interface to the object which is the scripting root.
+ */
+ com::sun::star::uno::XInterface getRoot();
+
+ /** sets an access object to get external functions.
+ */
+ void setLibraryAccess( [in] com::sun::star::script::XLibraryAccess Library );
+
+ /** compiles a script module in the scope of the root object.
+ */
+ boolean compile( [in] string ModuleName,
+ [in] string Script,
+ [in] boolean CreateDebugInfo );
+
+ /** runs a script specified by a string.
+
+ The arguments given in aArgs can be ignored by
+ the engine. The Script is executed synchronously.
+ */
+ any run( [in] string aScript,
+ [in] com::sun::star::uno::XInterface xThis,
+ [in] sequence aArgs );
+
+ /** runs the script specified by a string and makes callbacks.
+
+ The arguments given in aArgs can be ignored by
+ the engine. The script is executed asynchronously.
+
+
+ */
+ void runAsync( [in] string acript,
+ [in] com::sun::star::uno::XInterface xThis,
+ [in] sequence args,
+ [in] com::sun::star::script::XEngineListener xCallback );
+
+ /** terminates the execution of the running script.
+
+ The waiting queue is cleared too.
+ */
+ void cancel();
+
+ /** adds an engine listener.
+
+ It is suggested to allow multiple registration of the same listener,
+ thus for each time a listener is added, it has to be removed.
+ */
+ void addEngineListener( [in] com::sun::star::script::XEngineListener Listener );
+
+ /** removes an engine listener.
+
+
It is suggested to allow multiple registration of the same listener,
+ thus for each time a listener is added, it has to be removed.
+ */
+ void removeEngineListener( [in] com::sun::star::script::XEngineListener Listener );
+
+};
+
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/udkapi/com/sun/star/script/XEngineListener.idl b/udkapi/com/sun/star/script/XEngineListener.idl
new file mode 100644
index 000000000..99e09309a
--- /dev/null
+++ b/udkapi/com/sun/star/script/XEngineListener.idl
@@ -0,0 +1,63 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+#ifndef __com_sun_star_script_XEngineListener_idl__
+#define __com_sun_star_script_XEngineListener_idl__
+
+#include
+
+#include
+
+#include
+
+#include
+
+
+
+ module com { module sun { module star { module script {
+
+/** makes it possible to receive events from a scripting engine.
+ @deprecated
+ */
+published interface XEngineListener: com::sun::star::lang::XEventListener
+{
+ /** gets fired when an interrupt occurs during the script execution.
+
+ If you call the method, the execution stops. So in this situation,
+ the stack and variable values are still available by using the
+ appropriate XDebugging methods.
+
+ */
+ void interrupt( [in] com::sun::star::script::InterruptEngineEvent Evt );
+
+ /** gets fired when the script gets into execution state.
+ */
+ void running( [in] com::sun::star::lang::EventObject Evt );
+
+ /** gets fired when the script execution has finished.
+ */
+ void finished( [in] com::sun::star::script::FinishEngineEvent Evt );
+
+};
+
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/udkapi/com/sun/star/script/XErrorQuery.idl b/udkapi/com/sun/star/script/XErrorQuery.idl
new file mode 100644
index 000000000..fe07c73c6
--- /dev/null
+++ b/udkapi/com/sun/star/script/XErrorQuery.idl
@@ -0,0 +1,42 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#ifndef __com_sun_star_script_XErrorQuery_idl__
+#define __com_sun_star_script_XErrorQuery_idl__
+
+#include
+
+module com { module sun { module star { module script {
+
+interface XErrorQuery : ::com::sun::star::uno::XInterface
+{
+ /**
+ Returns whether this object has an error
+
+ @return
+ `boolean` indicating an error or not
+ */
+ boolean hasError();
+
+};
+
+}; }; }; };
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/udkapi/com/sun/star/script/XEventAttacher.idl b/udkapi/com/sun/star/script/XEventAttacher.idl
new file mode 100644
index 000000000..d8a17e1d7
--- /dev/null
+++ b/udkapi/com/sun/star/script/XEventAttacher.idl
@@ -0,0 +1,97 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+#ifndef __com_sun_star_script_XEventAttacher_idl__
+#define __com_sun_star_script_XEventAttacher_idl__
+
+#include
+
+#include
+
+#include
+
+#include
+
+#include
+
+#include
+
+#include
+
+
+
+ module com { module sun { module star { module script {
+
+/** makes it possible to attach script events given by a sequence of
+ ScriptEventDescriptor structures to a given interface.
+ */
+published interface XEventAttacher: com::sun::star::uno::XInterface
+{
+ /** registers the given "AllListener" object as a listener at the
+ given interface by creating a suitable listener adapter and
+ calling the "addListener" method corresponding to the
+ "ListenerType".
+ */
+ com::sun::star::lang::XEventListener attachListener( [in] com::sun::star::uno::XInterface xTarget,
+ [in] com::sun::star::script::XAllListener xAllListener,
+ [in] any aHelper,
+ [in] string aListenerType,
+ [in] string aAddListenerParam )
+ raises( com::sun::star::lang::IllegalArgumentException,
+ com::sun::star::beans::IntrospectionException,
+ com::sun::star::script::CannotCreateAdapterException,
+ com::sun::star::lang::ServiceNotRegisteredException );
+
+ /** registers an object as a listener at the given interface by
+ creating a suitable listener adapter and calling the method
+ which corresponds to the listener type.
+
+ Only the event corresponding to the given event method
+ will be delegated to xAllListener.
+ */
+ com::sun::star::lang::XEventListener attachSingleEventListener( [in] com::sun::star::uno::XInterface xTarget,
+ [in] com::sun::star::script::XAllListener xAllListener,
+ [in] any aHelper,
+ [in] string aListenerType,
+ [in] string aAddListenerParam,
+ [in] string aEventMethod )
+ raises( com::sun::star::lang::IllegalArgumentException,
+ com::sun::star::beans::IntrospectionException,
+ com::sun::star::script::CannotCreateAdapterException,
+ com::sun::star::lang::ServiceNotRegisteredException );
+
+ /** removes a listener object as a listener from the given interface.
+
+ This method can and should be used as a contrary method
+ to the two attach methods.
+ */
+ void removeListener( [in] com::sun::star::uno::XInterface xTarget,
+ [in] string aListenerType,
+ [in] string aRemoveListenerParam,
+ [in] com::sun::star::lang::XEventListener xToRemoveListener )
+ raises( com::sun::star::lang::IllegalArgumentException,
+ com::sun::star::beans::IntrospectionException );
+
+};
+
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/udkapi/com/sun/star/script/XEventAttacher2.idl b/udkapi/com/sun/star/script/XEventAttacher2.idl
new file mode 100644
index 000000000..bd7f2646d
--- /dev/null
+++ b/udkapi/com/sun/star/script/XEventAttacher2.idl
@@ -0,0 +1,42 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
+
+#ifndef __com_sun_star_script_XEventAttacher2_idl__
+#define __com_sun_star_script_XEventAttacher2_idl__
+
+#include
+#include
+#include
+
+module com { module sun { module star { module script {
+
+interface XEventAttacher2: com::sun::star::script::XEventAttacher
+{
+ /** Register a multiple set of listeners listening for the same
+ target. Besides passing multiple listeners, the behavior of
+ this method is identical to that of
+ attachSingleEventListener().
+
+ @see com::sun::star::script::XEventAttacher::attachSingleEventListener
+ */
+ sequence
+ attachMultipleEventListeners(
+ [in] com::sun::star::uno::XInterface xTarget,
+ [in] sequence aListeners )
+ raises( com::sun::star::lang::IllegalArgumentException,
+ com::sun::star::beans::IntrospectionException,
+ com::sun::star::script::CannotCreateAdapterException,
+ com::sun::star::lang::ServiceNotRegisteredException );
+};
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/udkapi/com/sun/star/script/XEventAttacherManager.idl b/udkapi/com/sun/star/script/XEventAttacherManager.idl
new file mode 100644
index 000000000..46793bdef
--- /dev/null
+++ b/udkapi/com/sun/star/script/XEventAttacherManager.idl
@@ -0,0 +1,202 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+#ifndef __com_sun_star_script_XEventAttacherManager_idl__
+#define __com_sun_star_script_XEventAttacherManager_idl__
+
+#include
+
+#include
+
+#include
+
+#include
+
+#include
+
+
+
+ module com { module sun { module star { module script {
+
+/** registers listeners for specified events.
+ */
+published interface XEventAttacherManager: com::sun::star::uno::XInterface
+{
+ /** registers one event for an object identified by its index.
+
+ If any object is attached under this index, then this
+ event is attached automatically.
+ Exceptions of type
+ com::sun::star::beans::IntrospectionException and
+ com::sun::star::script::CannotCreateAdapterException
+ that can be thrown by methods of XEventAttacher are caught
+ and ignored.
+ */
+ void registerScriptEvent( [in] long nIndex,
+ [in] com::sun::star::script::ScriptEventDescriptor aScriptEvent )
+ raises( com::sun::star::lang::IllegalArgumentException );
+
+ /** registers several events for an object identified by its index.
+
+ The result is the same as if the method registerScriptEvent()
+ was called once for each ScriptEventDescriptor
+ in the sequence.
+
+ If any object is attached under this index, then this
+ event is attached automatically (see attach())
+
+ Exceptions of type
+ com::sun::star::beans::IntrospectionException and
+ com::sun::star::script::CannotCreateAdapterException
+ that can be thrown by methods of XEventAttacher are caught
+ and ignored.
+
+ @see registerScriptEvent
+ @see attach
+ */
+ void registerScriptEvents( [in] long nIndex,
+ [in] sequence aScriptEvents )
+ raises( com::sun::star::lang::IllegalArgumentException );
+
+ /** revokes the registration of an event.
+
+ The parameters ListenerType and
+ EventMethod are equivalent to the first two
+ members of the ScriptEventDescriptor
+ used to register events. If this event at this index has
+ been attached to any object, it is detached automatically
+ (see attach()).
+
+ Exceptions of type
+ com::sun::star::beans::IntrospectionException and
+ com::sun::star::script::CannotCreateAdapterException
+ that can be thrown by methods of XEventAttacher are caught
+ and ignored.
+
+ @see attach
+ */
+ void revokeScriptEvent( [in] long nIndex,
+ [in] string aListenerType,
+ [in] string aEventMethod,
+ [in] string aRemoveListenerParam )
+ raises( com::sun::star::lang::IllegalArgumentException );
+
+ /** revokes all events which are registered for the given index.
+
+ If the events at this index have been attached to any
+ object, they are detached automatically.
+ (see attach()).
+
+ @see attach
+ */
+ void revokeScriptEvents( [in] long nIndex )
+ raises( com::sun::star::lang::IllegalArgumentException );
+
+ /** creates an empty entry at the given position.
+
+ The index n of all entries with n >=
+ nIndex
will be increased by one.
+ */
+ void insertEntry( [in] long nIndex )
+ raises( com::sun::star::lang::IllegalArgumentException );
+
+ /** removes the entry at the given position.
+
+ If any events are registered at this index, they will
+ be revoked, too. So if the events at this index have been
+ attached to any object they are detached automatically.
+ (see attach()).
+
+ @see attach
+ */
+ void removeEntry( [in] long nIndex )
+ raises( com::sun::star::lang::IllegalArgumentException );
+
+ /** @return
+ all events registered for the given object index.
+
+ @param Index
+ an index previously inserted with the method insertEntry.
+
+ @throws IllegalArgumentException
+ if Index is not valid.
+ */
+ sequence getScriptEvents( [in] long Index )
+ raises( com::sun::star::lang::IllegalArgumentException );
+
+ /** attaches all the ScriptEvents which are registered
+ for the given index to the given object.
+
+ Exceptions of type
+ com::sun::star::beans::IntrospectionException and
+ com::sun::star::script::CannotCreateAdapterException
+ that can be thrown by methods of XEventAttacher are caught
+ and ignored.
+ */
+ void attach( [in] long nIndex,
+ [in] com::sun::star::uno::XInterface xObject,
+ [in] any aHelper )
+ raises( com::sun::star::lang::IllegalArgumentException,
+ com::sun::star::lang::ServiceNotRegisteredException );
+
+ /** detaches all the ScriptEvents from the given object
+ which are registered at this object for the given index.
+
+ Exceptions of type
+ com::sun::star::beans::IntrospectionException and
+ com::sun::star::script::CannotCreateAdapterException
+ that can be thrown by methods of XEventAttacher are caught
+ and ignored.
+ */
+ void detach( [in] long nIndex,
+ [in] com::sun::star::uno::XInterface xObject )
+ raises( com::sun::star::lang::IllegalArgumentException );
+
+ /** adds an XScriptListener that will be notified when an
+ event takes place. For that a
+ ScriptEventDescriptor is registered at and
+ attached to an object by an XEventAttacherManager.
+
+ It is suggested to allow multiple registration of the same listener,
+ thus for each time a listener is added, it has to be removed.
+
+ @see removeScriptListener
+ */
+ void addScriptListener( [in] com::sun::star::script::XScriptListener xListener )
+ raises( com::sun::star::lang::IllegalArgumentException );
+
+ /** removes a XScriptListener from the listener list.
+
+
Nothing happens if the listener is not registered.
+
+
It is suggested to allow multiple registration of the same listener,
+ thus for each time a listener is added, it has to be removed.
+
+ @see addScriptListener
+ */
+ void removeScriptListener( [in] com::sun::star::script::XScriptListener Listener )
+ raises( com::sun::star::lang::IllegalArgumentException );
+
+};
+
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/udkapi/com/sun/star/script/XInvocation.idl b/udkapi/com/sun/star/script/XInvocation.idl
new file mode 100644
index 000000000..0db1a9abf
--- /dev/null
+++ b/udkapi/com/sun/star/script/XInvocation.idl
@@ -0,0 +1,131 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+#ifndef __com_sun_star_script_XInvocation_idl__
+#define __com_sun_star_script_XInvocation_idl__
+
+#include
+
+#include
+
+#include
+
+#include
+
+#include
+
+#include
+
+
+
+ module com { module sun { module star { module script {
+
+/** gives access to an object's methods and properties.
+ Container access is available through
+ com::sun::star::container::XIndexContainer,
+ com::sun::star::container::XNameContainer and
+ com::sun::star::container::XEnumerationAccess.
+
+ */
+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 aFunctionName the method to invoke
+ @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 aParams,
+ [out] sequence aOutParamIndex,
+ [out] sequence 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.
+
+ If the underlying object implements an
+ com::sun::star::container::XNameContainer,
+ then this method will insert the value if there is no such
+ aPropertyName.
+
+
+ */
+ 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`.
+
+ This optimizes the calling sequence
+ ( XInvocation::hasMethod(),
+ XInvocation::invoke() )!
+
+ @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`.
+
+ This optimizes the calling sequence
+ ( XInvocation::hasProperty(),
+ XInvocation::getValue() ) or
+
+ ( XInvocation::hasProperty(),
+ XInvocation::setValue() )!
+
+ @param aName
+ specifies the name of the property.
+ */
+ boolean hasProperty( [in] string aName );
+
+};
+
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/udkapi/com/sun/star/script/XInvocation2.idl b/udkapi/com/sun/star/script/XInvocation2.idl
new file mode 100644
index 000000000..4d3eb61de
--- /dev/null
+++ b/udkapi/com/sun/star/script/XInvocation2.idl
@@ -0,0 +1,71 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+#ifndef __com_sun_star_script_XInvocation2_idl__
+#define __com_sun_star_script_XInvocation2_idl__
+
+#include
+
+#include
+
+
+ module com { module sun { module star { module script {
+
+
+/**
+ Extension of XInvocation to provide additional information
+ about the methods and properties that are accessible via
+ XInvocation.
+
+ */
+published interface XInvocation2: com::sun::star::script::XInvocation
+{
+ /** returns the names of all methods and properties accessible via XInvocation.
+ */
+ sequence< string > getMemberNames();
+
+ /** returns information items for all methods and properties accessible via XInvocation.
+
+ @see com::sun::star::script::Invocation
+ */
+ sequence< InvocationInfo > getInfo();
+
+ /** returns information item for the method or property defined by aName
+
+ @param aName
+ specifies the name of the method or property
+
+ @param bExact
+ specifies the name of the method or property
+
+ @throws IllegalArgumentException
+ if aName is not the name of a supported method or property
+
+ @see com::sun::star::script::Invocation
+ */
+ InvocationInfo getInfoForName( [in] string aName, [in] boolean bExact )
+ raises( com::sun::star::lang::IllegalArgumentException );
+
+};
+
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/udkapi/com/sun/star/script/XInvocationAdapterFactory.idl b/udkapi/com/sun/star/script/XInvocationAdapterFactory.idl
new file mode 100644
index 000000000..b4f2a42bc
--- /dev/null
+++ b/udkapi/com/sun/star/script/XInvocationAdapterFactory.idl
@@ -0,0 +1,58 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+#ifndef __com_sun_star_script_XInvocationAdapterFactory_idl__
+#define __com_sun_star_script_XInvocationAdapterFactory_idl__
+
+#include
+
+#include
+
+
+
+ module com { module sun { module star { module script {
+
+
+/** Interface to create adapter objects giving a type to be supported and a
+ an invocation interface incoming calls are delegated to.
+
+ This interface is deprecated. Use XInvocationAdapterFactory2.
+ @deprecated
+*/
+published interface XInvocationAdapterFactory: com::sun::star::uno::XInterface
+{
+ /** Creates an adapter interface of given type for calling the given
+ XInvocation interface.
+
+ @param Invocation
+ invocation interface being called on incoming adapter calls
+ @param aType
+ supported type of adapter
+
+ @returns
+ adapter interface; this interface can be queried for
+ XInterface and given type
+ */
+ com::sun::star::uno::XInterface createAdapter( [in]XInvocation Invocation, [in]type aType );
+};
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/udkapi/com/sun/star/script/XInvocationAdapterFactory2.idl b/udkapi/com/sun/star/script/XInvocationAdapterFactory2.idl
new file mode 100644
index 000000000..cb58ab8cd
--- /dev/null
+++ b/udkapi/com/sun/star/script/XInvocationAdapterFactory2.idl
@@ -0,0 +1,56 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+#ifndef __com_sun_star_script_XInvocationAdapterFactory2_idl__
+#define __com_sun_star_script_XInvocationAdapterFactory2_idl__
+
+#include
+
+#include
+
+
+
+module com { module sun { module star { module script {
+
+/** Interface to create adapter objects giving types to be supported and a
+ an invocation interface incoming calls are delegated to.
+*/
+published interface XInvocationAdapterFactory2 : com::sun::star::uno::XInterface
+{
+ /** Creates an adapter interface of given types for calling the given
+ XInvocation interface.
+
+ @param Invocation
+ invocation interface being called on incoming adapter calls
+ @param aTypes
+ supported types of adapter
+
+ @returns
+ adapter interface; this interface can be queried for
+ XInterface and given types
+ */
+ com::sun::star::uno::XInterface createAdapter(
+ [in] XInvocation Invocation,
+ [in] sequence< type > aTypes );
+};
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/udkapi/com/sun/star/script/XLibraryAccess.idl b/udkapi/com/sun/star/script/XLibraryAccess.idl
new file mode 100644
index 000000000..d077cd380
--- /dev/null
+++ b/udkapi/com/sun/star/script/XLibraryAccess.idl
@@ -0,0 +1,90 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+#ifndef __com_sun_star_script_XLibraryAccess_idl__
+#define __com_sun_star_script_XLibraryAccess_idl__
+
+#include
+
+
+
+ module com { module sun { module star { module script {
+
+/** provides access to additional scripting code.
+
+ This code is organized in modules and these modules contain
+ the functions. It is possible to get just the code from a function,
+ but you can also get the whole code of a module with all functions in it.
+ @deprecated
+ */
+published interface XLibraryAccess: com::sun::star::uno::XInterface
+{
+ /** returns `TRUE`, if the function is accessible through this library;
+ otherwise it returns `FALSE`.
+
+ @param aFunctionName
+ the fully qualified name of a function.
+ (e.g., "UtilLibrary.ModuleDate.FunctionCurrentDate")
+ */
+ boolean isFunction( [in] string aFunctionName );
+
+ /** returns `TRUE` if a fully qualified function name begins with this name.
+
+ @param aPathName
+ a part of a function name (e.g., "UtilLibrary").
+ */
+ boolean isValidPath( [in] string aPathName );
+
+ /** Return all module names which contain code.
+ e.g., { "UtilLibrary.ModuleDate", "UtilLibrary.Output", ... }
+ */
+ sequence getModuleNames();
+
+ /** get the source code of a module.
+ */
+ string getModuleSource( [in] string aModulName );
+
+ /** Get the whole compiled code of a module.
+
+ @param aModuleName the full qualified name of a module.
+ (e.g., "UtilLibrary.ModuleDate")
+ @return an empty sequence, if this module is not found or the
+ code is not compiled.
+ */
+ sequence getModuleCode( [in] string aModuleName );
+
+ /** get the source code of a function.
+ */
+ string getFunctionSource( [in] string aFunctionName );
+
+ /** Get the compiled code of a function.
+
+ @param FunctionName the full qualified name of a function.
+ (e.g., "UtilLibrary.ModuleDate.Function.CurrentDate")
+ @return an empty sequence, if this function is not found.
+ */
+ sequence getFunctionCode( [in] string FunctionName );
+
+};
+
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/udkapi/com/sun/star/script/XScriptEventsAttacher.idl b/udkapi/com/sun/star/script/XScriptEventsAttacher.idl
new file mode 100644
index 000000000..3901249ba
--- /dev/null
+++ b/udkapi/com/sun/star/script/XScriptEventsAttacher.idl
@@ -0,0 +1,79 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+#ifndef __com_sun_star_script_XScriptEventsAttacher_idl__
+#define __com_sun_star_script_XScriptEventsAttacher_idl__
+
+#include
+#include
+
+#include
+
+#include
+
+#include
+
+#include
+
+
+
+ module com { module sun { module star { module script {
+
+
+/**
+ This interface can be used to attach script events to a number of
+ objects that give access to the definition of events that should
+ be attached to them, e.g., by supporting XEventsSupplier
+*/
+published interface XScriptEventsAttacher: com::sun::star::uno::XInterface
+{
+ /**
+ Attaches the events defined by XScriptEventsSupplier to the
+ corresponding object implementing XScriptEventsSupplier.
+
+ @param Objects
+ Sequence of all objects. Usually the objects should directly
+ support XScriptEventsAttacher to define the events
+ but this is not strictly required. It's also possible that
+ the object implementing XScriptEventsAttacher
+ knows how to get the necessary information for the objects.
+ @param xListener
+ All events (if defined by XScriptEventsSupplier) that are fired
+ by one of the objects are mapped into a ScriptEvent
+ and passed to the methods of this XScriptListener.
+ @param Helper
+ Helper object for the implementation. This value will be
+ passed to the XScriptListener as Helper property in the
+ ScriptEvent.
+ */
+ void attachEvents( [in] sequence< com::sun::star::uno::XInterface > Objects,
+ [in] com::sun::star::script::XScriptListener xListener,
+ [in] any Helper )
+ raises( com::sun::star::lang::IllegalArgumentException,
+ com::sun::star::beans::IntrospectionException,
+ com::sun::star::script::CannotCreateAdapterException,
+ com::sun::star::lang::ServiceNotRegisteredException );
+
+};
+
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/udkapi/com/sun/star/script/XScriptEventsSupplier.idl b/udkapi/com/sun/star/script/XScriptEventsSupplier.idl
new file mode 100644
index 000000000..9394150c8
--- /dev/null
+++ b/udkapi/com/sun/star/script/XScriptEventsSupplier.idl
@@ -0,0 +1,49 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+#ifndef __com_sun_star_script_XScriptEventsSupplier_idl__
+#define __com_sun_star_script_XScriptEventsSupplier_idl__
+
+#include
+
+#include
+
+
+
+ module com { module sun { module star { module script {
+
+
+/**
+ Gives access to an event container represented by an
+ XNameContainer containing ScriptEventDescriptor instances.
+ */
+published interface XScriptEventsSupplier: com::sun::star::uno::XInterface
+{
+ /**
+ Returns an XNameContainer containing instances
+ of ScriptEventDescriptor
+ */
+ com::sun::star::container::XNameContainer getEvents();
+};
+
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/udkapi/com/sun/star/script/XScriptListener.idl b/udkapi/com/sun/star/script/XScriptListener.idl
new file mode 100644
index 000000000..d669c5e8f
--- /dev/null
+++ b/udkapi/com/sun/star/script/XScriptListener.idl
@@ -0,0 +1,54 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+#ifndef __com_sun_star_script_XScriptListener_idl__
+#define __com_sun_star_script_XScriptListener_idl__
+
+#include
+
+#include
+
+#include
+
+
+
+ module com { module sun { module star { module script {
+
+/** makes it possible to receive ScriptEvents.
+ */
+published interface XScriptListener: com::sun::star::lang::XEventListener
+{
+ /** gets called when an event takes place. For that a
+ ScriptEventDescriptor is registered at and
+ attached to an object by an XEventAttacherManager.
+ */
+ void firing( [in] com::sun::star::script::ScriptEvent aEvent );
+
+ /** gets called when a "vetoable event" occurs at the object.
+ */
+ any approveFiring( [in] com::sun::star::script::ScriptEvent aEvent )
+ raises( com::sun::star::reflection::InvocationTargetException );
+
+};
+
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/udkapi/com/sun/star/script/XStarBasicAccess.idl b/udkapi/com/sun/star/script/XStarBasicAccess.idl
new file mode 100644
index 000000000..e12f6dd03
--- /dev/null
+++ b/udkapi/com/sun/star/script/XStarBasicAccess.idl
@@ -0,0 +1,83 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+#ifndef __com_sun_star_script_XStarBasicAccess_idl__
+#define __com_sun_star_script_XStarBasicAccess_idl__
+
+#include
+
+
+ module com { module sun { module star { module script {
+
+
+/** Interface representing a library and provides access to its modules
+
+ @deprecated
+ */
+published interface XStarBasicAccess: com::sun::star::uno::XInterface
+{
+ /** returns
+ the library container giving access to the libraries stored in a document
+ or basic library file.
+ */
+ com::sun::star::container::XNameContainer getLibraryContainer();
+
+ /**
+ Creates an empty library. This method can be called alternatively to
+ accessing directly the NameContainer returned by getLibraryContainer.
+ By using this method together with addModule and addStarBasicDialog
+ the caller does not have to implement XStarBasicLibraryInfo, XModuleInfo,
+ and XStarBasicDialogInfo
+ */
+ void createLibrary( [in] string LibName, [in] string Password,
+ [in] string ExternalSourceURL, [in] string LinkTargetURL )
+ raises( com::sun::star::container::ElementExistException );
+
+ /**
+ Adds a module to an existing (e.g., created by createLibrary) library.
+ By using this method together with createLibrary the caller does not have
+ to implement XStarBasicLibraryInfo and XModuleInfo.
+
+ @throws NoSuchElementException
+ if the library doesn't exist.
+ */
+ void addModule( [in] string LibraryName, [in] string ModuleName,
+ [in] string Language, [in] string Source )
+ raises( com::sun::star::container::NoSuchElementException );
+
+ /**
+ Adds an old style basic dialog (SI controls) to an existing (e.g., created
+ by createLibrary) library.
+ By using this method together with createLibrary the caller does not have
+ to implement XStarBasicLibraryInfo and XStarBasicDialogInfo
+
+ @throws NoSuchElementException
+ if the library doesn't exist.
+ */
+ void addDialog( [in] string LibraryName, [in] string DialogName,
+ [in] sequence< byte > Data )
+ raises( com::sun::star::container::NoSuchElementException );
+
+};
+
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/udkapi/com/sun/star/script/XStarBasicDialogInfo.idl b/udkapi/com/sun/star/script/XStarBasicDialogInfo.idl
new file mode 100644
index 000000000..845a0de1f
--- /dev/null
+++ b/udkapi/com/sun/star/script/XStarBasicDialogInfo.idl
@@ -0,0 +1,50 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+#ifndef __com_sun_star_script_XStarBasicDialogInfo_idl__
+#define __com_sun_star_script_XStarBasicDialogInfo_idl__
+
+#include
+
+
+
+ module com { module sun { module star { module script {
+
+
+/** Interface describing old style basic dialog (SI controls) in binary data
+
+ @deprecated
+ */
+published interface XStarBasicDialogInfo: com::sun::star::uno::XInterface
+{
+ /** returns the name of the dialog
+ */
+ string getName();
+
+ /** returns binary data describing the SIDialog in SBX stream format
+ */
+ sequence< byte > getData();
+
+};
+
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/udkapi/com/sun/star/script/XStarBasicLibraryInfo.idl b/udkapi/com/sun/star/script/XStarBasicLibraryInfo.idl
new file mode 100644
index 000000000..55a210013
--- /dev/null
+++ b/udkapi/com/sun/star/script/XStarBasicLibraryInfo.idl
@@ -0,0 +1,89 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+#ifndef __com_sun_star_script_XStarBasicLibraryInfo_idl__
+#define __com_sun_star_script_XStarBasicLibraryInfo_idl__
+
+#include
+
+
+ module com { module sun { module star { module script {
+
+
+/** Interface representing a library and provides access to its modules
+
+ @deprecated
+ */
+published interface XStarBasicLibraryInfo: com::sun::star::uno::XInterface
+{
+ /** returns the library's name
+ */
+ string getName();
+
+ /** returns
+ the module container giving access to the modules stored in the library.
+ The container has to be returned in any case, no matter if the library is
+ stored embedded, external, or linked.
+
+ @see getExternalSourceURL
+ @see getLinkTargetURL
+ */
+ com::sun::star::container::XNameContainer getModuleContainer();
+
+ /** returns
+ the dialog container giving access to the dialogs stored in the library.
+ The container has to be returned in any case, no matter if the library is
+ stored embedded, external, or linked.
+
+ @see getExternalSourceURL
+ @see getLinkTargetURL
+ */
+ com::sun::star::container::XNameContainer getDialogContainer();
+
+ /** returns
+ the password, if the library is protected with one,
+ an empty string otherwise.
+ */
+ string getPassword();
+
+ /** returns an
+ URL describing the location where the library is stored if the library
+ is stored separately (for example not in the main XML file but in a
+ special library format file), an empty string otherwise.
+ This information can be useful to optimize the access to the library,
+ e.g., for loading on demand.
+ */
+ string getExternalSourceURL();
+
+ /** returns an
+ URL describing the location of the library linked to.
+
+ HINT: This method can be removed when there is a generic interface
+ for linking. Then the implementation will simply support this
+ "XLinked" interface and it can be checked by queryInterface().
+ */
+ string getLinkTargetURL();
+
+};
+
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/udkapi/com/sun/star/script/XStarBasicModuleInfo.idl b/udkapi/com/sun/star/script/XStarBasicModuleInfo.idl
new file mode 100644
index 000000000..6b1abbffd
--- /dev/null
+++ b/udkapi/com/sun/star/script/XStarBasicModuleInfo.idl
@@ -0,0 +1,56 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+#ifndef __com_sun_star_script_XStarBasicModuleInfo_idl__
+#define __com_sun_star_script_XStarBasicModuleInfo_idl__
+
+#include
+
+
+
+ module com { module sun { module star { module script {
+
+
+/** Script Module containing some scripting code in a certain scripting language
+ @deprecated
+ */
+published interface XStarBasicModuleInfo: com::sun::star::uno::XInterface
+{
+ /** returns the name of the module
+ */
+ string getName();
+
+ /** returns the type of the script language as string, for example, "StarBasic" or "JavaScript".
+ */
+ string getLanguage();
+
+ /** returns the script source code as string.
+
+ The code has to correspond with the language
+ defined by Language.
+ */
+ string getSource();
+
+};
+
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/udkapi/com/sun/star/script/XTypeConverter.idl b/udkapi/com/sun/star/script/XTypeConverter.idl
new file mode 100644
index 000000000..a335084a9
--- /dev/null
+++ b/udkapi/com/sun/star/script/XTypeConverter.idl
@@ -0,0 +1,87 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+#ifndef __com_sun_star_script_XTypeConverter_idl__
+#define __com_sun_star_script_XTypeConverter_idl__
+
+#include
+
+#include
+
+#include
+
+#include
+
+#include
+
+
+
+ module com { module sun { module star { module script {
+
+
+/** Interface to provide standard type conversions.
+
+ @see Converter
+*/
+published interface XTypeConverter: com::sun::star::uno::XInterface
+{
+ /** Converts the value aFrom
to the specified type
+ xDestinationType
.
+ Throws a CannotConvertException if the conversion
+ failed.
+ @param aFrom
+ source value
+ @param xDestinationType
+ destination type
+ @return
+ converted value (any carrying value of type xDestinationType
+ */
+ any convertTo(
+ [in] any aFrom,
+ [in] type xDestinationType )
+ raises( com::sun::star::lang::IllegalArgumentException,
+ com::sun::star::script::CannotConvertException );
+
+ /** Converts the value aFrom
to the specified simple type
+ aDestinationType
.
+ Throws a CannotConvertException if the conversion
+ failed and a com::sun::star::lang::IllegalArgumentException
+ if the destination
+ com::sun::star::uno::TypeClass is not simple,
+ e.g. not long or byte.
+
+ @param aFrom
+ source value
+ @param aDestinationType
+ destination type class
+ @return
+ converted value (any carrying value of type aDestinationType
+ */
+ any convertToSimpleType(
+ [in] any aFrom,
+ [in] com::sun::star::uno::TypeClass aDestinationType )
+ raises( com::sun::star::lang::IllegalArgumentException,
+ com::sun::star::script::CannotConvertException );
+};
+
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
--
cgit v1.2.3