comparison src/editor.tp @ 107:152b6cfb98b6

Click-to-select no longer selects the whole lambda when it shouldn't and no longer replaces the selected code with a single symbol.
author Mike Pavone <pavone@retrodev.com>
date Fri, 12 Apr 2013 19:27:33 -0700
parents 35006a6e1c47
children 5099c1a96e3f
comparison
equal deleted inserted replaced
106:76a21129e8f5 107:152b6cfb98b6
68 inscope <- q: "#inscope" 68 inscope <- q: "#inscope"
69 inscope innerHTML!: "" 69 inscope innerHTML!: ""
70 each: syms :idx key { 70 each: syms :idx key {
71 inscope appendChild: (newEl: "li" #{ 71 inscope appendChild: (newEl: "li" #{
72 textContent <- key 72 textContent <- key
73 onclick <- { handler: key } 73 onclick <- :Event { handler: key }
74 }) 74 })
75 } 75 }
76 } 76 }
77 77
78 symbolClick <- :domnode astnode event { 78 symbolClick <- :domnode astnode event {
79 selectNode: domnode 79 selectNode: domnode
80 popInscope: ((astnode symbols) allSymbols: (foreign: undefined)) onClick: :key { 80 popInscope: ((astnode symbols) allSymbols: (foreign: undefined)) onClick: :key {
81 domnode textContent!: key 81 domnode textContent!: key
82 astnode name!: key 82 astnode name!: key
83 } 83 }
84 event stopPropagation 84 event stopPropagation: (foreign: undefined)
85 } 85 }
86 86
87 funClick <- :domnode astnode event { 87 funClick <- :domnode astnode event {
88 selectParent: domnode 88 selectParent: domnode
89 selectQuery: ".selectParent > .funpart" in: (domnode parentNode) 89 selectQuery: ".selectParent > .funpart" in: (domnode parentNode)
90 symtable <- astnode symbols 90 symtable <- astnode symbols
91 syms <- filter: (symtable allSymbols) :sym { 91 syms <- filter: (symtable allSymbols) :sym {
92 isLambda: ((symtable find: sym) def) 92 isLambda: ((symtable find: sym) def)
93 } 93 }
94 popInscope: syms onClick: {} 94 popInscope: syms onClick: {}
95 event stopPropagation 95 event stopPropagation: (foreign: undefined)
96 } 96 }
97 97
98 lambdaClick <- :domnode astnode event { 98 lambdaClick <- :domnode astnode event {
99 symbolClick: domnode astnode event 99 symbolClick: domnode astnode event
100 } 100 }