b57e9c2da48341189a63fc405d49dec8627f2c54
[scilab.git] / scilab / modules / graphics / macros / twinkle.sci
1 // Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
2 // Copyright (C) INRIA
3 // Copyright (C) 2012 - 2016 - Scilab Enterprises
4 //
5 // This file is hereby licensed under the terms of the GNU GPL v2.0,
6 // pursuant to article 5.3.4 of the CeCILL v.2.1.
7 // This file was originally licensed under the terms of the CeCILL v2.1,
8 // and continues to be available under such terms.
9 // For more information, see the COPYING file which you should have received
10 // along with this program.
11
12 function twinkle(h,n)
13
14     [lhs,rhs]=argn(0)
15     if rhs==1 then
16         if (type(h)<>9 | size(h,"*")<>1) then
17             error(msprintf(gettext("%s: Wrong type for input argument #%d: Graphic handle expected.\n"), "twinkle", 1));
18         end
19         n=5;
20     elseif rhs==2 then
21         if (type(h)<>9 | size(h,"*")<>1) then
22             error(msprintf(gettext("%s: Wrong type for input argument #%d: Graphic handle expected.\n"), "twinkle", 1));
23         end
24         if (type(n)<>1 | size(n,"*")<>1) then
25             error(msprintf(gettext("%s: Wrong type for input argument #%d: Scalar expected.\n"), "twinkle", 2));
26         end
27     else
28         error(msprintf(gettext("%s: Wrong number of input arguments: %d or %d expected.\n"), "twinkle", 1, 2));
29     end
30
31     f=h;
32     while f.type<>"Figure"
33         f=f.parent;
34     end
35     realtimeinit(0.2);
36     realtime(0);
37     k=0;
38
39     v=h.visible;
40     for i=1:n
41         k=k+2;
42         h.visible="off";
43         realtime(k);
44         h.visible="on";
45         realtime(k+1);
46     end
47     h.visible=v;
48
49 endfunction