summaryrefslogtreecommitdiff
path: root/src/editor/simple/editor.js
diff options
context:
space:
mode:
authorhallgren <hallgren@chalmers.se>2011-09-27 18:40:09 +0000
committerhallgren <hallgren@chalmers.se>2011-09-27 18:40:09 +0000
commit667b37f418f3c8bdde227c7491bc5a2a00d18947 (patch)
tree5bf5e576a869ec01b9840970c78d3f4bfd252fc6 /src/editor/simple/editor.js
parent64beaae58ff303892e553b9744ccf3c1651a08b9 (diff)
gfse: work in progress on support for example-based grammar writing
Diffstat (limited to 'src/editor/simple/editor.js')
-rw-r--r--src/editor/simple/editor.js10
1 files changed, 6 insertions, 4 deletions
diff --git a/src/editor/simple/editor.js b/src/editor/simple/editor.js
index 78867ec3d..1a3dabf92 100644
--- a/src/editor/simple/editor.js
+++ b/src/editor/simple/editor.js
@@ -492,7 +492,8 @@ function draw_concrete(g,i) {
indent([kw("lincat"),draw_lincats(g,i)]),
indent([kw("lin"),draw_lins(g,i)]),
indent([extensible([kw("param"),draw_params(g,i)])]),
- indent([extensible([kw("oper"),draw_opers(g,i)])])
+ indent([extensible([kw("oper"),draw_opers(g,i)])]),
+ exb_extra(g,i)
])
}
@@ -780,8 +781,8 @@ function arg_names(type) {
return map(unique,names);
}
-function draw_lins(g,i) {
- var conc=g.concretes[i];
+function draw_lins(g,ci) {
+ var conc=g.concretes[ci];
function edit(f) {
return function(g,el) {
function check(s,cont) {
@@ -799,7 +800,7 @@ function draw_lins(g,i) {
string_editor(el,f.lin,check,true)
}
}
- function del(fun) { return function () { delete_lin(g,i,fun); } }
+ function del(fun) { return function () { delete_lin(g,ci,fun); } }
function dl(f,cls) {
var l=[ident(f.fun)]
for(var i in f.args) {
@@ -808,6 +809,7 @@ function draw_lins(g,i) {
}
l.push(sep(" = "));
var t=editable("span",text_ne(f.lin),g,edit(f),"Edit lin for "+f.fun);
+ appendChildren(t,exb_linbuttons(g,ci,f));
l.push(t);
return node("span",{"class":cls},l);
}