Kaydet (Commit) 24c0fc4f authored tarafından Rüdiger Timm's avatar Rüdiger Timm

INTEGRATION: CWS scriptingf6 (1.2.22); FILE MERGED

2004/10/13 09:51:55 toconnor 1.2.22.4: #i30252# ensure highlight example works
2004/09/14 15:27:52 dfoster 1.2.22.3: #i30252#
Fix the Highlight examples so that (a) they try to load the library if
they can't get the dialog on first attempt, (b) the dialog contains bindings
to the BeanShell handler code.
2004/08/03 16:12:52 dfoster 1.2.22.2: #i32502#
2004/07/23 09:55:23 dfoster 1.2.22.1: #i30606#
Add descriptions to code in examples.
üst 781f69e9
......@@ -3,19 +3,66 @@ importClass(Packages.com.sun.star.lang.XMultiComponentFactory);
importClass(Packages.com.sun.star.awt.XDialogProvider);
importClass(Packages.com.sun.star.awt.XDialog);
importClass(Packages.com.sun.star.uno.Exception);
importClass(Packages.drafts.com.sun.star.script.provider.XScriptContext);
importClass(Packages.com.sun.star.script.provider.XScriptContext);
importClass(java.lang.Thread);
importClass(java.lang.System);
function tryLoadingLibrary( xmcf, context, name )
{
try
{
obj = xmcf.createInstanceWithContext(
"com.sun.star.script.Application" + name + "LibraryContainer",
context.getComponentContext());
xLibraryContainer = UnoRuntime.queryInterface(XLibraryContainer, obj);
System.err.println("Got XLibraryContainer");
serviceObj = context.getComponentContext().getValueByName(
"/singletons/com.sun.star.util.theMacroExpander");
xme = AnyConverter.toObject(new Type(XMacroExpander), serviceObj);
bootstrapName = "bootstraprc";
if (System.getProperty("os.name").startsWith("Windows"))
{
bootstrapName = "bootstrap.ini";
}
libURL = xme.expandMacros(
"${$SYSBINDIR/" + bootstrapName + "::BaseInstallation}" +
"/share/basic/ScriptBindingLibrary/" +
name.toLowerCase() + ".xlb/");
System.err.println("libURL is: " + libURL);
xLibraryContainer.createLibraryLink(
"ScriptBindingLibrary", libURL, false);
System.err.println("liblink created");
}
catch (e)
{
System.err.println("Got an exception loading lib: " + e.getMessage());
return false;
}
return true;
}
function getDialogProvider()
{
// UNO awt components of the Highlight dialog
//get the XMultiServiceFactory
xmcf = XSCRIPTCONTEXT.getComponentContext().getServiceManager();
args = new Array;
//get the XDocument from the context
args[0] = XSCRIPTCONTEXT.getDocument();
//try to create the DialogProvider
try {
obj = xmcf.createInstanceWithArgumentsAndContext(
"com.sun.star.awt.DialogProvider", args,
......@@ -29,14 +76,37 @@ function getDialogProvider()
return UnoRuntime.queryInterface(XDialogProvider, obj);
}
//get the DialogProvider
xDialogProvider = getDialogProvider();
if (xDialogProvider != null)
{
try {
//try to create the Highlight dialog (found in the ScriptBinding library)
try
{
findDialog = xDialogProvider.createDialog("vnd.sun.star.script:" +
"ScriptBindingLibrary.Highlight?location=application");
findDialog.execute();
if( findDialog == null )
{
if (tryLoadingLibrary(xmcf, XSCRIPTCONTEXT, "Dialog") == false ||
tryLoadingLibrary(xmcf, XSCRIPTCONTEXT, "Script") == false)
{
System.err.println("Error loading ScriptBindingLibrary");
}
else
{
// try to create the Highlight dialog (found in the
// ScriptBindingLibrary)
findDialog = xDialogProvider.createDialog("vnd.sun.star.script:" +
"ScriptBindingLibrary.Highlight?location=application");
}
}
//launch the dialog
if ( findDialog != null )
{
findDialog.execute();
}
}
catch (e) {
System.err.println("Got exception on first creating dialog: " +
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment