blob: c1b5bed18175b1b609c619a7738bd4a3990c6707 [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<meta http-equiv="CONTENT-TYPE"
content="text/html; charset=iso-8859-1">
<title></title>
<meta name="GENERATOR" content="StarOffice 6.1 Beta 1 (Linux)">
<meta name="CREATED" content="20030313;16153200">
<meta name="CHANGED" content="20030313;16505100">
</head>
<body lang="en-US" dir="ltr">
<h1><a name="top"></a>User Guide for the OpenOffice.org Scripting
Framework</h1>
<h2>Contents</h2>
<ul>
<li>
<p style="margin-bottom: 0in;"><a href="#prerequisites">Pre-requisites</a></p>
</li>
<li>
<p style="margin-bottom: 0in;"><a href="#switchon">Configuring
display of OpenOffice.org Scripts</a></p>
</li>
<li>
<p style="margin-bottom: 0in;"><a href="#bindscripts">Assiging
OpenOffice.org Scripts</a> </p>
</li>
<li>
<p style="margin-bottom: 0in;"><a href="#usingsf">Running the
example OpenOffice.org Scripts</a></p>
</li>
<li>
<p style="margin-bottom: 0in;"><a
href="#Leveraging_StarBasic_Security">OpenOffice.org Security</a></p>
</li>
</ul>
<h2><a name="prerequisites"></a>Pre-requisites</h2>
<p>Before you install the Scripting Framework, be aware of the
following: </p>
<ul>
<li>
<p style="margin-bottom: 0in;">This is an Early Developer Release
of the OpenOffice.org Scripting Framework provided for users and
developers of
OpenOffice.org to try out and provide feedback. Future releases of the
Framework may change. </p>
</li>
<li>
<p>The Scripting Framework is currently available in English only. </p>
</li>
</ul>
<h2><a name="switchon"></a>Configuring display
of OpenOffice.org scripts</h2>
<p>As the Scripting Framework project is still in development, display
of OpenOffice.org scripts is switched off by default in your OpenOffice.org
installation. To enable the Scripting Framework download one of the following UNO packages:<br>
</p>
<ul>
<li><a href="../EnableSF.zip">EnableSF.zip</a> simply enables the display of
Scripting Framework scripts
in parallel with the existing method for listing Basic macros. Note that the
Basic macros will also be listed under the Scripting Framework scripts.</li>
<li><a href="../EnableSF2.zip">EnableSF2.zip</a> simply enables the display of Scripting Framework scripts
instead of the existing method for listing Basic macros.</li>
</ul>
The UNO package is then installed using the pkgchk executable found in the OpenOffice.org program directory.<br>
<font face="Courier, monospace" size="2">pkgchk EnableSF.zip</font>
<h2><a name="bindscripts"></a>Assigning OpenOffice.org Scripts</h2>
<p>The execution of OpenOffice.org scripts can be assigned to menu and
key items
and also to application, document, object and dialog events.<br>
</p>
<p>To assign a script to a new menu item:<br>
</p>
<ol>
<li>Select the Tools/Configure menu item, and go to the Menu tab.</li>
<li>In the Category section of the Menu tab, scroll to the bottom of
the list and expand the item OpenOffice.org Scripts</li>
<li>You should see entries for share (scripts in the share directory
of your OpenOffice.org installation), user (scripts in the user
directory of your OpenOffice.org installation), and the current
document. Expand one of these entries to see the languages for which
scripts are available</li>
<li>Under the language entries you will see entries for script that
are available. Select one of these entries.</li>
<li>A list of the script functions available for assignment will
appear in the Function list. Select one of the functions.</li>
<li>Now click the New button to create a new menu assignment. The new
menu item will appear in the Menu Entries section of the tab. You can
rename the new menu item by clicking on it.</li>
</ol>
To assign a script to a key combination:<br>
<ol>
<li>Select the Tools/Configure menu item, and go to the Keyboard tab.</li>
<li>To select an OpenOffice.org script to assign, follow steps
2 to 5 for creating menu&nbsp; items. <br>
</li>
<li>Now select a key combination from the Shortcut Keys section and
click the Modify button to create a new menu assignment.</li>
</ol>
To assign a script to an event:<br>
<ol>
<li>Select the Tools/Configure menu item, and go to the Events tab.</li>
<li>To select an OpenOffice.org script, follow steps 2 to 5 for
creating menu items.<br>
</li>
<li>Now select an event from the list and click the Assign button to
assign the selected script to the selected event.</li>
</ol>
To assign a script to an event for an embedded Object (eg. a chart):<br>
<span style="text-decoration: underline;"></span>
<ol>
<li>Select the embedded Object in your document and then select the
Format/Object... menu item.</li>
<li>In the Object dialog that appears select the Macro tab.</li>
<li>You should be able to select an OpenOffice.org script and assign
it to an Object event as in the assign script to event steps above.</li>
</ol>
To assign a script to a Hyperlink:<br>
<ol>
<li>Select the Insert/Hyperlink menu item.</li>
<li>In the Hyperlink dialog clicking on the Events button will allow
you to assign an OpenOffice.org script to a hyperlink event.</li>
</ol>
To assign a script to a Graphic:<br>
<ol>
<li>Select the Format/Graphics... menu item.</li>
<li>In the Graphics dialog you can assign an OpenOffice.org script to
an event in the Macro tab.</li>
</ol>
To assign a script to a Form control:<br>
<ol>
<li>Insert a Form control (eg. a button) into your document by
clicking on the form functions button on the left hand toolbar,
selecting a control and then selecting an area in your document to
create the control.</li>
<li>Select the control and then select the Format/Control... menu
item to bring up a Properties dialog for the control.</li>
<li>Select the Events tab of the Properties dialog and click on one
of the buttons labelled "..." beside the event to which you want to
assign an OpenOffice.org script.</li>
<li>An Assign Macro dialog will pop up in which you can select an
OpenOffice.org script and assign it to the selected event.<br>
</li>
</ol>
To assign a script to a control in an OpenOffice.org Basic dialog:<br>
<ol>
<li>Open the OpenOffice.org Basic dialog editor and create a dialog
with a control on it (eg. a button)</li>
<li>Right click on the control and select Properties... on the popup
menu. <br>
</li>
<li>Select the Events tab of the Properties dialog and click on one
of the buttons labelled "..." beside the event to which you want to
assign an OpenOffice.org script.</li>
<li>An Assign Macro dialog will pop up in which you can select an
OpenOffice.org script and assign it to the selected event.<br>
</li>
</ol>
<h2><a name="usingsf"></a>Running the example OpenOffice.org Scripts</h2>
<p>There are three example scripts supplied with the Scripting
Framework, Highlight, MemoryUsage, and ExportSheetsToHTML.<br>
</p>
<p>Highlight is a BeanShell application level
script for Writer that allows the user to search for a word or phrase.
It will highlight all instances in red and give a count of the number
of
instances. </p>
<p>The second example, MemoryUsage, is a Java script stored in a Calc
spreadsheet that checks the current memory usage in the Java Virtual
Machine and updates cells in the spreadsheet with the usage values. The
spreadsheet also contains a graph which will update when the cell
values
are changed. </p>
<p>The ExportSheetsToHTML example is a JavaScript application level
script for Calc which will save each individual sheet in a Calc
spreadsheet as a separate html file.</p>
<p><b>Running the Highlight example</b></p>
<p>To run this example you first need to create a menu item from which
you can execute the script. </p>
<ul>
<li>
<p style="margin-bottom: 0in;">Start OpenOffice.org and open an
existing Writer document or create a new one. </p>
</li>
<li>
<p style="margin-bottom: 0in;">Follow the steps for creating a menu
item in the Assigning OpenOffice.org Scripts section. The Highlight
example is available at OpenOffice.org Scripts/share/BeanShell/Highlight<br>
</p>
</li>
<li>
<p style="margin-bottom: 0in;">Your new menu item will now be
available and clicking on it will invoke the script. </p>
</li>
<li>
<p>You should see a Highlight Text dialog appear which you can use
to highlight various text strings you are looking for in the document. </p>
</li>
</ul>
<p><b>Running the MemoryUsage example</b></p>
<p>The Java version of the MemoryUsage example is already deployed
inside an OpenOffice.org document, ExampleSpreadSheet.sxc. To run the
Java
example, just open: </p>
<p>&lt;OpenOffice.org
Installation&gt;/user/Scripts/java/ExampleSpreadSheet.sxc. </p>
<p>You can then execute the MemoryUsage script by pressing <b>CTRL+Shift+M</b>
with the ExampleSpreadSheet.sxc window focused. You should see the
memory usage values being updated, and the graph should change to
reflect the new values. You can also find the MemoryUsage example under
OpenOffice.org Scripts/share/Java/MemoryUsage in the Tools/Configure
dialog.<br>
</p>
<p><span style="font-weight: bold;">Running the ExportSheetsToHTML
example</span><br>
</p>
<p>To run this example you first need to create or open an existing
spreadsheet document. If you have created a new document save it (eg.
c:\temp\mycalcdoc.sxc)<br>
</p>
<p>Follow the instructions in the Assigning OpenOffice.org Scripts
section to create a key assignment for the script. You can find the
ExportSheetsToHTML example at
OpenOffice.org Scripts/share/JavaScript/ExportSheetsToHTML.</p>
<ul>
</ul>
This will have created a key binding to the ExportSheetsToHTML script.
Pressing your key binding will now save each sheet in HTML format in
the
same
directory as the original document (eg. c:\temp\mycalcdoc_sheet1.html,
c:\temp\mycalcdoc_sheet2.html, ...)<br>
<p><a href="#top">Top</a> </p>
<h2><a name="Leveraging_StarBasic_Security"></a>OpenOffice.org Security</h2>
<p style="margin-bottom: 0in;">The Scripting Framework currently uses
the same
Security
settings as OpenOffice.org Basic.&nbsp; The settings allow the user to
control
the
execution of macros present in OpenOffice.org documents. Found in&nbsp;
the&nbsp; Tools-&gt;Options dialog under&nbsp;
OpenOffice.org-&gt;Security, these&nbsp; settings allow the user&nbsp;
to specify the conditions under which it is permissable to execute
document based OpenOffice.org Basic macros and OpenOffice.org scripts.</p>
<p style="margin-bottom: 0in;">A full description of how these settings
work can be found by clicking
the "Help" button in the dialog, and then clicking "OpenOffice.org",
and
"Security" in the left-hand pane of the Help dialog. The possible
scenarios associated with the security settings are summarised in the
table below.<br>
<br>
</p>
<table border="2" cellpadding="2" cellspacing="2">
<tbody>
<tr>
<th>
<p>"Run Macro"</p>
</th>
<th>
<p>"Confirm in the case of other document sources"</p>
</th>
<th>
<p>"Show Warning before Running"</p>
</th>
<th>
<p>Document path in "Path List"</p>
</th>
<th>
<p>Behaviour</p>
</th>
</tr>
<tr>
<td>
<p>Never</p>
</td>
<td>
<p>N/A</p>
</td>
<td>
<p>N/A</p>
</td>
<td>
<p>N/A</p>
</td>
<td>
<p>Macros/Scripts never run. No warning displayed. </p>
</td>
</tr>
<tr>
<td>
<p>According to path list</p>
</td>
<td>
<p>No</p>
</td>
<td>
<p>No</p>
</td>
<td>
<p>No</p>
</td>
<td>
<p>Macros/Scripts never run. No warning displayed. </p>
</td>
</tr>
<tr>
<td>
<p>According to path list</p>
</td>
<td>
<p>No</p>
</td>
<td>
<p>No</p>
</td>
<td>
<p>Yes</p>
</td>
<td>
<p>Macros/Scripts run. No warning displayed. </p>
</td>
</tr>
<tr>
<td>
<p>According to path list</p>
</td>
<td>
<p>No</p>
</td>
<td>
<p>Yes</p>
</td>
<td>
<p>No</p>
</td>
<td>
<p>Macros/Scripts never run. No warning displayed. </p>
</td>
</tr>
<tr>
<td>
<p>According to path list</p>
</td>
<td>
<p>No</p>
</td>
<td>
<p>Yes</p>
</td>
<td>
<p>Yes</p>
</td>
<td>
<p>Warning displayed on document load. If "Run" button clicked
macros will run, otherwise they will not.</p>
</td>
</tr>
<tr>
<td>
<p>According to path list</p>
</td>
<td>
<p>Yes</p>
</td>
<td>
<p>No</p>
</td>
<td>
<p>No</p>
</td>
<td>
<p>Warning with checkbox to add path to path list is displayed on
document load. If "Run" button clicked macros/scripts will run,
otherwise
they will not. Regardless of which button is clicked, if checkbox is
ticked document path is added to "Path List".</p>
</td>
</tr>
<tr>
<td>
<p>According to path list</p>
</td>
<td>
<p>Yes</p>
</td>
<td>
<p>No</p>
</td>
<td>
<p>Yes</p>
</td>
<td>
<p>Macros/Scripts run. No warning displayed. </p>
</td>
</tr>
<tr>
<td>
<p>According to path list</p>
</td>
<td>
<p>Yes</p>
</td>
<td>
<p>Yes</p>
</td>
<td>
<p>No</p>
</td>
<td>
<p>Warning with checkbox to add path to path list is displayed on
document load. If "Run" button clicked macros/scripts will run,
otherwise
they will not. Regardless of which button is clicked, if checkbox is
ticked document path is added to "Path List".</p>
</td>
</tr>
<tr>
<td>
<p>According to path list</p>
</td>
<td>
<p>Yes</p>
</td>
<td>
<p>Yes</p>
</td>
<td>
<p>Yes</p>
</td>
<td>
<p>Warning displayed on document load. If "Run" button clicked
macros/scripts will run, otherwise they will not.</p>
</td>
</tr>
<tr>
<td>
<p>Always</p>
</td>
<td>
<p>N/A</p>
</td>
<td>
<p>No</p>
</td>
<td>
<p>N/A</p>
</td>
<td>
<p>Macros/Scripts run. No warning displayed. </p>
</td>
</tr>
<tr>
<td>
<p>Always</p>
</td>
<td>
<p>N/A</p>
</td>
<td>
<p>Yes</p>
</td>
<td>
<p>N/A</p>
</td>
<td>
<p>Warning displayed on document load. If "Run" button clicked
macros/scripts will run, otherwise they will not</p>
</td>
</tr>
</tbody>
</table>
<p><br>
<a href="#top">Top</a></p>
<hr> Last Modified: Nov 19 2003
</body>
</html>