1 <?xml version=
"1.0" encoding=
"UTF-8"?>
2 <helpdocument version=
"1.0">
5 ***********************************************************************
7 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
9 * Copyright 2008 by Sun Microsystems, Inc.
11 * OpenOffice.org - a multi-platform office productivity suite
13 * $RCSfile: scripting.xhp,v $
14 * $Revision: 1.17.4.1 $
16 * This file is part of OpenOffice.org.
18 * OpenOffice.org is free software: you can redistribute it and/or modify
19 * it under the terms of the GNU Lesser General Public License version 3
20 * only, as published by the Free Software Foundation.
22 * OpenOffice.org is distributed in the hope that it will be useful,
23 * but WITHOUT ANY WARRANTY; without even the implied warranty of
24 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
25 * GNU Lesser General Public License version 3 for more details
26 * (a copy is included in the LICENSE file that accompanied this code).
28 * You should have received a copy of the GNU Lesser General Public License
29 * version 3 along with OpenOffice.org. If not, see
30 * <http://www.openoffice.org/license.html>
31 * for a copy of the LGPLv3 License.
33 ************************************************************************
38 <topic id=
"textsharedguidescriptingxml" indexer=
"include">
39 <title id=
"tit" xml-lang=
"en-US">Scripting %PRODUCTNAME
</title>
40 <filename>/text/shared/guide/scripting.xhp
</filename>
44 <bookmark xml-lang=
"en-US" branch=
"index" id=
"bm_id5277565"><bookmark_value>assigning scripts
</bookmark_value>
45 <bookmark_value>programming;scripting
</bookmark_value>
46 <bookmark_value>form controls;assigning macros
</bookmark_value>
47 <bookmark_value>pictures;assigning macros
</bookmark_value>
48 <bookmark_value>hyperlinks;assigning macros
</bookmark_value>
49 <bookmark_value>shortcut keys;assigning macros
</bookmark_value>
50 <bookmark_value>controls;assigning macros (Basic)
</bookmark_value>
51 <bookmark_value>menus;assigning macros
</bookmark_value>
52 <bookmark_value>events;assigning scripts
</bookmark_value>
53 </bookmark><comment>MW deleted
"programming;...",
"scripting in programming",
"BeanShell scripting",
"Basic;..." and
"java;..."</comment><comment>MW added
"controls;..",
"menus;..." and
"events;..."</comment>
54 <paragraph role=
"heading" id=
"par_idN1070A" xml-lang=
"en-US" level=
"1" l10n=
"NEW"><variable id=
"scripting"><link href=
"text/shared/guide/scripting.xhp">Assigning Scripts in %PRODUCTNAME
</link>
55 </variable></paragraph>
56 <paragraph role=
"paragraph" id=
"par_idN10728" xml-lang=
"en-US" l10n=
"NEW">You can assign custom scripts (macros) to menu items, icons, dialog controls, and events in %PRODUCTNAME.
</paragraph>
57 <paragraph role=
"paragraph" id=
"par_idN1072B" xml-lang=
"en-US" l10n=
"NEW">%PRODUCTNAME internally supports the following scripting languages:
</paragraph>
60 <paragraph role=
"paragraph" id=
"par_idN10731" xml-lang=
"en-US" l10n=
"NEW">%PRODUCTNAME Basic
</paragraph>
63 <paragraph role=
"paragraph" id=
"par_idN10739" xml-lang=
"en-US" l10n=
"NEW">JavaScript
</paragraph>
66 <paragraph role=
"paragraph" id=
"par_idN1073D" xml-lang=
"en-US" l10n=
"CHG">BeanShell
</paragraph>
71 <paragraph role=
"paragraph" id=
"par_id6797082" xml-lang=
"en-US" l10n=
"CHG">Python (not included with all distributions)
<comment>i50641
</comment><comment>removed switch, added text
</comment></paragraph>
74 <paragraph role=
"paragraph" id=
"par_idN1091F" xml-lang=
"en-US" l10n=
"NEW">In addition, developers can use high-level languages, for example Java programming language, to control %PRODUCTNAME externally. See the API project at OpenOffice.org.
</paragraph>
75 <paragraph role=
"heading" id=
"par_idN10751" xml-lang=
"en-US" level=
"2" l10n=
"NEW">To assign a script to a new menu entry
</paragraph>
78 <paragraph role=
"paragraph" id=
"par_idN10758" xml-lang=
"en-US" l10n=
"NEW">Choose
<emph>Tools - Customize
</emph>, and click the
<emph>Menus
</emph> tab.
</paragraph>
81 <paragraph role=
"paragraph" id=
"par_idN1093D" xml-lang=
"en-US" l10n=
"NEW">Click
<emph>Add
</emph>.
</paragraph>
84 <paragraph role=
"paragraph" id=
"par_idN10760" xml-lang=
"en-US" l10n=
"NEW">In the
<emph>Category
</emph> list box, scroll down and open the
"%PRODUCTNAME Macros" entry.
</paragraph>
87 <paragraph role=
"paragraph" id=
"par_idN10768" xml-lang=
"en-US" l10n=
"NEW">You see entries for
"%PRODUCTNAME Macros" (scripts in the share directory of your %PRODUCTNAME installation),
"My Macros" (scripts in the user directory), and the current document. Open any one of them to see the supported scripting languages.
</paragraph>
90 <paragraph role=
"paragraph" id=
"par_idN1076C" xml-lang=
"en-US" l10n=
"NEW">Open any scripting language entry to see the available scripts. Select a script.
</paragraph>
93 <paragraph role=
"paragraph" id=
"par_idN10770" xml-lang=
"en-US" l10n=
"NEW">A list of the script functions appears in the
<emph>Commands
</emph> list box. Select a function.
</paragraph>
96 <paragraph role=
"paragraph" id=
"par_idN10778" xml-lang=
"en-US" l10n=
"NEW">Click
<emph>Add
</emph> to create a new menu assignment. The new menu entry appears in the
<emph>Entries
</emph> list box.
</paragraph>
99 <paragraph role=
"heading" id=
"par_idN10783" xml-lang=
"en-US" level=
"2" l10n=
"NEW">To assign a script to a key combination
</paragraph>
100 <list type=
"ordered">
102 <paragraph role=
"paragraph" id=
"par_idN10787" xml-lang=
"en-US" l10n=
"NEW">Choose
<emph>Tools - Customize - Keyboard
</emph>.
</paragraph>
105 <paragraph role=
"paragraph" id=
"par_idN10A59" xml-lang=
"en-US" l10n=
"NEW">In the
<emph>Category
</emph> list box, scroll down and open the
"%PRODUCTNAME Macros" entry.
</paragraph>
108 <paragraph role=
"paragraph" id=
"par_idN10A61" xml-lang=
"en-US" l10n=
"NEW">You see entries for
"%PRODUCTNAME Macros" (scripts in the share directory of your %PRODUCTNAME installation),
"My Macros" (scripts in the user directory), and the current document. Open any one of them to see the supported scripting languages.
</paragraph>
111 <paragraph role=
"paragraph" id=
"par_idN10A65" xml-lang=
"en-US" l10n=
"NEW">Open any scripting language entry to see the available scripts. Select any script.
</paragraph>
114 <paragraph role=
"paragraph" id=
"par_idN10A69" xml-lang=
"en-US" l10n=
"NEW">A list of the script functions will appear in the
<emph>Commands
</emph> list box. Select any function.
</paragraph>
117 <paragraph role=
"paragraph" id=
"par_idN10A71" xml-lang=
"en-US" l10n=
"NEW">Click the option button for %PRODUCTNAME or Writer (or whichever application is currently open).
</paragraph>
118 <paragraph role=
"paragraph" id=
"par_idN10A74" xml-lang=
"en-US" l10n=
"NEW">Selecting the option button sets the scope of the new key combination to be applicable in all of %PRODUCTNAME or only in documents of the current module.
</paragraph>
121 <paragraph role=
"paragraph" id=
"par_idN10A78" xml-lang=
"en-US" l10n=
"NEW">Select a key combination from the
<emph>Shortcut keys
</emph> list box and click
<emph>Modify
</emph>.
</paragraph>
124 <paragraph role=
"heading" id=
"par_idN1078A" xml-lang=
"en-US" level=
"2" l10n=
"NEW">To assign a script to an event
</paragraph>
125 <list type=
"ordered">
127 <paragraph role=
"paragraph" id=
"par_idN1078E" xml-lang=
"en-US" l10n=
"NEW">Choose
<emph>Tools - Customize - Events
</emph>.
</paragraph>
130 <paragraph role=
"paragraph" id=
"par_idN10A16" xml-lang=
"en-US" l10n=
"NEW">Click
<emph>Macro
</emph> button.
</paragraph>
133 <paragraph role=
"paragraph" id=
"par_idN10A9E" xml-lang=
"en-US" l10n=
"NEW">In the
<emph>Library
</emph> list box, scroll down and open the
"%PRODUCTNAME Macros" entry.
</paragraph>
136 <paragraph role=
"paragraph" id=
"par_idN10AA6" xml-lang=
"en-US" l10n=
"NEW">You see entries for
"%PRODUCTNAME Macros" (scripts in the share directory of your %PRODUCTNAME installation),
"My Macros" (scripts in the user directory), and the current document. Open any one of them to see the supported scripting languages.
</paragraph>
139 <paragraph role=
"paragraph" id=
"par_idN10AAA" xml-lang=
"en-US" l10n=
"NEW">Open any scripting language entry to see the available scripts. Select any script.
</paragraph>
142 <paragraph role=
"paragraph" id=
"par_idN10AAE" xml-lang=
"en-US" l10n=
"NEW">A list of the script functions will appear in the
<emph>Assigned Action
</emph> list box. Select any function.
</paragraph>
145 <paragraph role=
"paragraph" id=
"par_idN10AB6" xml-lang=
"en-US" l10n=
"NEW">Select to save in %PRODUCTNAME or current document.
</paragraph>
146 <paragraph role=
"paragraph" id=
"par_idN10AB9" xml-lang=
"en-US" l10n=
"CHG">This sets the scope of the new event assignment to be applicable in all of %PRODUCTNAME or only in documents of the current module.
</paragraph>
149 <paragraph role=
"paragraph" id=
"par_idN10ABD" xml-lang=
"en-US" l10n=
"NEW">Select an event from the list and click
<emph>OK
</emph>.
</paragraph>
152 <paragraph role=
"heading" id=
"par_idN10791" xml-lang=
"en-US" level=
"2" l10n=
"NEW">To assign a script to an event for an embedded object
</paragraph>
153 <list type=
"ordered">
155 <paragraph role=
"paragraph" id=
"par_idN10795" xml-lang=
"en-US" l10n=
"NEW">Select the embedded object, for example a chart, in your document.
</paragraph>
158 <paragraph role=
"paragraph" id=
"par_idN10ADB" xml-lang=
"en-US" l10n=
"NEW">Choose
<emph>Format - Frame/Object - Macro
</emph>.
</paragraph>
161 <paragraph role=
"paragraph" id=
"par_idN10ADF" xml-lang=
"en-US" l10n=
"NEW">In the
<emph>Macros
</emph> list box, open the %PRODUCTNAME Scripts entry.
</paragraph>
164 <paragraph role=
"paragraph" id=
"par_idN10AE7" xml-lang=
"en-US" l10n=
"NEW">You see entries for share (scripts in the share directory of your %PRODUCTNAME installation), user (scripts in the user directory), and the current document. Open any one of them to see the supported scripting languages.
</paragraph>
167 <paragraph role=
"paragraph" id=
"par_idN10AEB" xml-lang=
"en-US" l10n=
"NEW">Open any scripting language entry to see the available scripts. Select any script.
</paragraph>
170 <paragraph role=
"paragraph" id=
"par_idN10AEF" xml-lang=
"en-US" l10n=
"NEW">A list of the script functions will appear in the
<emph>Existing macros in
</emph> list box. Select any function.
</paragraph>
173 <paragraph role=
"paragraph" id=
"par_idN10AF7" xml-lang=
"en-US" l10n=
"NEW">Select an event from the list and click
<emph>OK
</emph>.
</paragraph>
176 <paragraph role=
"heading" id=
"par_idN10798" xml-lang=
"en-US" level=
"2" l10n=
"NEW">To assign a script to a hyperlink
</paragraph>
177 <list type=
"ordered">
179 <paragraph role=
"paragraph" id=
"par_idN1079C" xml-lang=
"en-US" l10n=
"NEW">Position the cursor inside the hyperlink.
</paragraph>
182 <paragraph role=
"paragraph" id=
"par_idN10B15" xml-lang=
"en-US" l10n=
"NEW">Choose
<emph>Insert - Hyperlink
</emph>.
</paragraph>
185 <paragraph role=
"paragraph" id=
"par_idN10B19" xml-lang=
"en-US" l10n=
"NEW">Click the
<emph>Events
</emph> button.
</paragraph>
188 <paragraph role=
"paragraph" id=
"par_idN10B21" xml-lang=
"en-US" l10n=
"NEW">Select and assign as stated above.
</paragraph>
191 <paragraph role=
"heading" id=
"par_idN1079F" xml-lang=
"en-US" level=
"2" l10n=
"NEW">To assign a script to a graphic
</paragraph>
192 <list type=
"ordered">
194 <paragraph role=
"paragraph" id=
"par_idN107A3" xml-lang=
"en-US" l10n=
"NEW">Select the graphic in your document.
</paragraph>
197 <paragraph role=
"paragraph" id=
"par_idN10B3B" xml-lang=
"en-US" l10n=
"CHG">Choose
<emph>Format - Picture - Macro
</emph>.
</paragraph>
200 <paragraph role=
"paragraph" id=
"par_idN10B3F" xml-lang=
"en-US" l10n=
"NEW">Select and assign as stated above.
</paragraph>
203 <paragraph role=
"heading" id=
"par_idN107A6" xml-lang=
"en-US" level=
"2" l10n=
"NEW">To assign a script to a form control
</paragraph>
204 <list type=
"ordered">
206 <paragraph role=
"paragraph" id=
"par_idN107AA" xml-lang=
"en-US" l10n=
"CHG">Insert a form control, for example a button: Open the Form Controls toolbar, click the
<emph>Push Button
</emph> icon, drag open a button on your document.
</paragraph>
209 <paragraph role=
"paragraph" id=
"par_idN10B59" xml-lang=
"en-US" l10n=
"CHG">With the form control selected, click
<emph>Control
</emph> on the Form Controls toolbar.
</paragraph>
212 <paragraph role=
"paragraph" id=
"par_idN10B5D" xml-lang=
"en-US" l10n=
"NEW">Click the
<emph>Events
</emph> tab of the Properties dialog.
</paragraph>
215 <paragraph role=
"paragraph" id=
"par_idN10B61" xml-lang=
"en-US" l10n=
"NEW">Click one of the
<emph>...
</emph> buttons to open a dialog where you can assign a script to the selected event.
</paragraph>
218 <paragraph role=
"heading" id=
"par_idN107AD" xml-lang=
"en-US" level=
"2" l10n=
"NEW">To assign a script to a control in the %PRODUCTNAME Basic dialog
</paragraph>
219 <list type=
"ordered">
221 <paragraph role=
"paragraph" id=
"par_idN107B1" xml-lang=
"en-US" l10n=
"NEW">Open the %PRODUCTNAME Basic dialog editor, then create a dialog with a control on it.
</paragraph>
224 <paragraph role=
"paragraph" id=
"par_idN10B7F" xml-lang=
"en-US" l10n=
"NEW">Right-click the control, then choose
<emph>Properties
</emph>.
</paragraph>
227 <paragraph role=
"paragraph" id=
"par_idN10B87" xml-lang=
"en-US" l10n=
"NEW">Click the
<emph>Events
</emph> tab of the Properties dialog.
</paragraph>
230 <paragraph role=
"paragraph" id=
"par_idN10B8B" xml-lang=
"en-US" l10n=
"NEW">Click one of the
<emph>...
</emph> buttons to open a dialog where you can assign a script to the selected event.
</paragraph>