office-gobmx/scripting
Mike Kaganski 4541614e5f tdf#159412: make sure to keep the value while changing the type
SbxValue::SetType clears the original value. We need to use the Get/Put
cycle, asking for a specific type in Get, and then making sure that the
variable is not fixed on Put.

Change-Id: I0a6c106d511e8491c89a5a2153f47a708f83ee1e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162664
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2024-01-29 03:34:21 +01:00
..
examples 'new Float' is deprecated in Java 2023-11-02 12:00:24 +01:00
java Avoid NullPointerException 2023-04-18 16:31:04 +02:00
source tdf#159412: make sure to keep the value while changing the type 2024-01-29 03:34:21 +01:00
util
workben/bindings
astyle.options
Format_java_code.sh
IwyuFilter_scripting.yaml
Jar_HelloWorld.mk
Jar_Highlight.mk
Jar_MemoryUsage.mk
Jar_ScriptFramework.mk
Jar_ScriptProviderForBeanShell.mk
Jar_ScriptProviderForJava.mk
Jar_ScriptProviderForJavaScript.mk
Library_basprov.mk
Library_dlgprov.mk
Library_protocolhandler.mk
Library_scriptframe.mk
Library_stringresource.mk
Library_vbaevents.mk
Makefile
Module_scripting.mk
Package_java.mk
Package_java_jars.mk
Package_scriptbindinglib.mk
Package_scriptproviderforpython.mk
Package_ScriptsBeanShell.mk
Package_ScriptsJavaScript.mk
Package_ScriptsPython.mk
Pyuno_mailmerge.mk
Rdb_scriptproviderforbeanshell.mk
Rdb_scriptproviderforjavascript.mk
README.md

Scripting Framework

This module provides the source code for the Scripting Framework.

For more information on the Scripting Framework, see the project web page: https://framework.openoffice.org/scripting/

This module uses astyle to keep consistent java coding style. Please run

./Format_java_code.sh

before committing.

Source Code Structure

The following directories contain the source code currently used by the Scripting Framework:

  • source/provider

C++ source for the implementations of the com.sun.star.script.provider.* and com.sun.star.script.browse.* UNO types. These types are used for browsing and executing scripts.

  • source/protocolhandler

C++ for a ProtocolHandler implementation that handles vnd.sun.star.script URIs and dispatches them for execution to the Scripting Framework.

  • source/basprov

C++ implementation of the LanguageScriptProvider UNO service for Basic

  • source/dlgprov

C++ implementation of the DialogProvider UNO service used for loading UNO dialogs from various languages

  • source/pyprov

LanguageScriptProvider for Python

  • java/com/sun/star/script/framework/provider

Implementation of an abstract base class ScriptProvider which provides core methods for implementing Java based LanguageScriptProvider implementations

  • java/com/sun/star/script/framework/provider/*

BeanShell, JavaScript and Java LanguageScriptProvider implementations

  • java/com/sun/star/script/framework/browse/*

BrowseNode implementations for the Java based LanguageScriptProviders

  • java/com/sun/star/script/framework/io
  • java/com/sun/star/script/framework/container

Classes for performing script IO

  • examples

Example scripts in BeanShell, JavaScript, Java and Python

Deprecated Code

  • java/org/openoffice/*

Support for developing scripts in IDEs such as NetBeans.