# HG changeset patch # User Adam Chlipala # Date 1242915500 14400 # Node ID 26e911ee924cd20ff967ca6c94cafc566a036b53 # Parent 493f447598799167787691a45b188afa94b5e9a1 Split JavaScript inp() into separate functions diff -r 493f44759879 -r 26e911ee924c lib/js/urweb.js --- a/lib/js/urweb.js Sun May 17 18:41:43 2009 -0400 +++ b/lib/js/urweb.js Thu May 21 10:18:20 2009 -0400 @@ -295,7 +295,7 @@ populate(x); } -function inp(t, s, content) { +function input(t, s) { var x = document.createElement(t); x.dead = false; x.signal = ss(s); @@ -303,14 +303,23 @@ x.recreate = function(v) { if (x.value != v) x.value = v; }; populate(x); addNode(x); - if (t == "select") { - x.innerHTML = content; - x.value = s.data; - x.onchange = function() { sv(s, x.value) }; - } else { - x.value = s.data; - x.onkeyup = function() { sv(s, x.value) }; - } + + return x; +} + +function inp(s) { + var x = input("input", s); + x.value = s.data; + x.onkeyup = function() { sv(s, x.value) }; + + return x; +} + +function sel(s, content) { + var x = input("select", s); + x.innerHTML = content; + x.value = s.data; + x.onchange = function() { sv(s, x.value) }; return x; } diff -r 493f44759879 -r 26e911ee924c src/monoize.sml --- a/src/monoize.sml Sun May 17 18:41:43 2009 -0400 +++ b/src/monoize.sml Thu May 21 10:18:20 2009 -0400 @@ -2565,9 +2565,9 @@ loc)), loc), fm) end | SOME (_, src, _) => - (strcat [str ""], + str ")"], fm)) | _ => (Print.prefaces "Targs" (map (fn t => ("T", CorePrint.p_con env t)) targs); raise Fail "No name passed to textbox tag")) @@ -2637,9 +2637,9 @@ end | SOME (_, src, _) => let - val sc = strcat [str "inp(\"input\",", + val sc = strcat [str "inp(", (L'.EJavaScript (L'.Script, src), loc), - str ",\"\")"] + str ")"] val sc = setAttrs sc in (strcat [str "