summaryrefslogtreecommitdiff
path: root/js/Misc
diff options
context:
space:
mode:
Diffstat (limited to 'js/Misc')
-rw-r--r--js/Misc/DSUPER.js52
1 files changed, 50 insertions, 2 deletions
diff --git a/js/Misc/DSUPER.js b/js/Misc/DSUPER.js
index 1475ffe4..90eca99e 100644
--- a/js/Misc/DSUPER.js
+++ b/js/Misc/DSUPER.js
@@ -1,3 +1,51 @@
-Syntax error in input LexToken(END,'end',1,2533)
/* autogenerated from "macros/Misc/DSUPER.sci" */
-None
+function DSUPER() {
+DSUPER.prototype.define = function DSUPER() {
+}
+DSUPER.prototype.details = function DSUPER() {
+}
+DSUPER.prototype.get = function DSUPER() {
+}
+DSUPER.prototype.set = function DSUPER() {
+y=needcompile;
+typ=list();
+graphics=arg1.graphics;
+if ((length(graphics.exprs)==0)) {
+warnBlockByUID(arg1.model.label,gettext("Invalid masked block."));
+x=arg1;
+return;
+}
+exprs=graphics.exprs(1);
+exprs0=graphics.exprs(2)(1);
+btitre=graphics.exprs(2)(2)(1);
+bitems=graphics.exprs(2)(2).slice(2-1,$);
+if (exprs0==[]) {
+x=arg1;
+return;
+}
+context=[arg1.model.rpar.props.context];
+[%scicos_context,ierr]=script2var(context,%scicos_context);
+if (ierr!=0) {
+x=arg1;
+return;
+}
+tt="scicos_context."+exprs0(1);
+for (i=2;i<=size(exprs0,1);i+=1) {
+tt=tt+",scicos_context."+exprs0(i);
+}
+ss=graphics.exprs(2)(3);
+scicos_context=%scicos_context;
+execstr("[ok,"+tt+",exprs]=scicos_getvalue(btitre,bitems,ss,exprs)");
+if (ok) {
+x=arg1;
+%scicos_context=scicos_context;
+sblock=x.model.rpar;
+[sblock,%w,needcompile2,ok]=do_eval(sblock,list(),scicos_context);
+y=max(2,needcompile,needcompile2);
+x.graphics.exprs[1-1]=exprs;
+x.model.rpar=sblock;
+} else {
+x=arg1;
+}
+}
+}