* SEP #107 implementation (xcosAddToolsMenu and xcosUpdateBlock)
[scilab.git] / scilab / modules / xcos / help / en_US / scilab_utilities_functions / xcosAddToolsMenu.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!--
3  * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
4  * Copyright (C) 2012 - Scilab Enterprises - Clément DAVID
5  * 
6  * This file must be used under the terms of the CeCILL.
7  * This source file is licensed as described in the file COPYING, which
8  * you should have received as part of this distribution.  The terms
9  * are also available at
10  * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
11  *
12  -->
13 <refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:ns3="http://www.w3.org/1999/xhtml" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" version="5.0-subset Scilab" xml:id="xcosAddToolsMenu">
14   <refnamediv>
15     <refname>xcosAddToolsMenu</refname>
16     <refpurpose>Add a menu item into the Xcos "Tools" menu.</refpurpose>
17   </refnamediv>
18   <refsynopsisdiv>
19     <title>Calling Sequence</title>
20     <synopsis>xcosAddToolsMenu(label, command)</synopsis>
21   </refsynopsisdiv>
22   <refsection id="Module_xcosAddToolsMenu">
23     <title>Module</title>
24     <itemizedlist>
25       <listitem>
26         <para>
27           <link linkend="xcos">xcos</link>
28         </para>
29       </listitem>
30     </itemizedlist>
31   </refsection>
32   <refsection id="Description_xcosAddToolsMenu">
33     <title>Description</title>
34     <para>Add a menu into Xcos with a scilab command. The scilab command can assume that there is two variable on the current scilab context :</para>
35     <itemizedlist>
36       <listitem>
37         <para>
38           <emphasis role="bold">blk :</emphasis> The selected block. Variable does not exist if nothing is selected. The variable has a <link linkend="scicos_block">scicos_block</link> type.
39         </para>
40       </listitem>
41       <listitem>
42         <para>
43           <emphasis role="bold">scs_m :</emphasis> The whole diagram. The variable has a <link linkend="scicos_diagram">scicos_diagram</link> type.
44         </para>
45       </listitem>
46     </itemizedlist>
47     <para>This function has been introduced in Scilab 5.4.0.</para>
48     <para>
49       <programlisting role="example"><![CDATA[
50 xcosAddToolsMenu("print plop", "disp(''plop'')");
51 xcosAddToolsMenu("print selected block", "disp(blk)");
52 xcosAddToolsMenu("print diagram", "disp(scs_m)");
53
54 // define a custom update function
55 function myUpdateFunction(blk, scs_m)
56     execstr(''[ok, blk] = '' + blk.gui + ''(''''set'''', blk)'') ;
57     xcosUpdateBlock(blk) ;
58 endfunction
59 xcosAddToolsMenu("update block", "myUpdateFunction(blk, scs_m)");
60 ]]></programlisting>
61     </para>
62   </refsection>
63   <refsection id="SeeAlso_xcosAddToolsMenu">
64     <title>See Also</title>
65     <itemizedlist>
66       <listitem>
67         <para>
68           <link linkend="xcos">xcos</link>
69         </para>
70       </listitem>
71       <listitem>
72         <para>
73           <link linkend="xcosUpdateBlock">xcosUpdateBlock - Update a block instance</link>
74         </para>
75       </listitem>
76       <listitem>
77         <para>
78           <link linkend="scicos_block">scicos_block.</link>
79         </para>
80       </listitem>
81       <listitem>
82         <para>
83           <link linkend="scicos_diagram">scicos_diagram</link>
84         </para>
85       </listitem>
86     </itemizedlist>
87   </refsection>
88   <refsection id="Authors_xcosAddToolsMenu">
89     <title>Authors</title>
90     <para>
91       <emphasis role="bold">Clément David</emphasis> - Scilab Enterprises
92     </para>
93   </refsection>
94 </refentry>