File: do_block.sci

package info (click to toggle)
scilab 2.4-1
  • links: PTS
  • area: non-free
  • in suites: potato, slink
  • size: 55,196 kB
  • ctags: 38,019
  • sloc: ansic: 231,970; fortran: 148,976; tcl: 7,099; makefile: 4,585; sh: 2,978; csh: 154; cpp: 101; asm: 39; sed: 5
file content (38 lines) | stat: -rw-r--r-- 811 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
function scs_m=do_block(scs_m)
// do_block - edit a block icon
// Copyright INRIA
while %t
  [btn,xc,yc,win,Cmenu]=getclick()
  if Cmenu<>[] then
    Cmenu=resume(Cmenu)
  end
  K=getblock(scs_m,[xc;yc])
  if K<>[] then break,end
end
gr_i=scs_m(K)(2)(9)
if type(gr_i)==15 then
  [gr_i,coli]=gr_i(1:2)
else
  coli=[]
end
if gr_i==[] then gr_i=' ',end
while %t do
  gr_i=dialog(['Give scilab instructions to draw block';
      'shape.';
      'orig(1) : block down left corner x coordinate';
	'orig(2) : block down left corner y coordinate';
	  'sz(1)   : block width';
	  'sz(2)   : block height'],gr_i)
  if gr_i==[] then return,end
  mac=null();deff('[]=mac()',gr_i,'n')
  if check_mac(mac) then
    o=scs_m(K)
    drawblock(o)
    o(2)(9)=list(gr_i,coli)
    drawblock(o)
    scs_m(K)=o
    break
  end
end