<?xml version="1.0" encoding="UTF-8"?>
<!--
 * Copyright (C) INRIA -  Serge Steer Serge.Steer@inria.fr
 *
 * Copyright (C) 2012 - 2016 - Scilab Enterprises
 *
 * This file is hereby licensed under the terms of the GNU GPL v2.0,
 * pursuant to article 5.3.4 of the CeCILL v.2.1.
 * This file was originally licensed under the terms of the CeCILL v2.1,
 * and continues to be available under such terms.
 * For more information, see the COPYING file which you should have received
 * along with this program.
-->

<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink"
          xmlns:svg="http://www.w3.org/2000/svg" xmlns:mml="http://www.w3.org/1998/Math/MathML"
          xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org"
          xml:lang="ja" xml:id="datatipSetDisplay">

    <refnamediv>

        <refname>datatipSetDisplay</refname>

        <refpurpose>

            datatip文字列を計算する際に使用される関数を設定.

        </refpurpose>

    </refnamediv>

    <refsynopsisdiv>

        <title>呼び出し手順</title>

        <synopsis>

            datatipSetDisplay(handle,"fun")

            datatipSetDisplay(handle, fun)

        </synopsis>

    </refsynopsisdiv>

    <refsection>

        <title>引数</title>

        <variablelist>

            <varlistentry>

                <term>handle</term>

                <listitem>

                    <para>

                        datatipまたはその親のハンドル.

                    </para>

                </listitem>

            </varlistentry>

        </variablelist>

        <variablelist>

            <varlistentry>

                <term>"fun"</term>

                <listitem>

                    <para>

                        関数(type==11 または type==13) またはこの関数の名前

                        を有する変数.

                        この関数の呼び出し手順は,

                        <literal>str=fun(h)</literal> である必要があります.

                        ただし, <literal>h</literal>はdatatipのハンドルです.

                    </para>

                    <para>

                        この関数は文字列または文字列のベクトルを

                        <literal>str</literal>に返す必要があります.

                    </para>

                </listitem>

            </varlistentry>

        </variablelist>

    </refsection>

    <refsection>

        <title>説明</title>

        <para>

            datatip点に表示されるテキストを整形する際に使用される

            関数を設定します.

            datatipの親のハンドルが最初の引数に設定された場合,

            表示関数を有さない全てのdatatipは同じ関数を共用します.

        </para>

    </refsection>

    <refsection>

        <title>例</title>

        <programlisting role="example"><![CDATA[

    x=linspace(-1,1,1000);

    clf()

    plot(x,sinc(20*x),x,1-x.^2);

    e=gce();e=e.children;

    d21=datatipCreate(e(2),600);

    d1=datatipCreate(e(1),700);



    function str=mydisplay(h)

        pt = h.data;

        str=msprintf('sinc(%-0.2g)=%-0.2g', 20*pt(1),pt(2))

    endfunction

    datatipSetDisplay(d21,"mydisplay")

    ]]></programlisting>

        <scilab:image>

            x=linspace(-1,1,1000);

            clf()

            plot(x,sinc(20*x),x,1-x.^2);

            e=gce();e=e.children;

            d21=datatipCreate(e(2),600);

            d1=datatipCreate(e(1),700);



            function str=mydisplay(h)

            pt = h.data;

            str=msprintf('sinc(%-0.2g)=%-0.2g', 20*pt(1),pt(2))

            endfunction

            datatipSetDisplay(d21,mydisplay)

            datatipSetDisplay(d21,"mydisplay")

        </scilab:image>

        表示関数は異なる位置にtipテキストを配置する際にも

        使用できます:

        <programlisting role="example"><![CDATA[

    function str=infodisplay(h)

        pt = h.data;

        gcf().info_message = msprintf('x=%0.2g,\t 1-x^2=%0.2g', pt(1),pt(2));

        str=''

    endfunction

    datatipSetDisplay(d1,"infodisplay") //infoバー上にtipテキストを表示

    ]]></programlisting>

    </refsection>

    <refsection role="see also">

        <title>参照</title>

        <simplelist type="inline">

            <member>

                <link linkend="datatips">datatips</link>

            </member>

            <member>

                <link linkend="datatipSetOrientation">datatipSetOrientation</link>

            </member>

        </simplelist>

    </refsection>

</refentry>

