comparison src/editor.tp @ 116:9cf3e0b18ecc

Add support for selecting operator expressions in the editor
author Mike Pavone <pavone@retrodev.com>
date Mon, 15 Apr 2013 21:14:55 -0700
parents c0bfff39abe3
children f4e464a17579
comparison
equal deleted inserted replaced
115:a83989115028 116:9cf3e0b18ecc
96 selectNode: domnode 96 selectNode: domnode
97 popInscope: ((astnode symbols) allSymbols: (foreign: undefined)) onClick: :key { 97 popInscope: ((astnode symbols) allSymbols: (foreign: undefined)) onClick: :key {
98 domnode textContent!: key 98 domnode textContent!: key
99 astnode name!: key 99 astnode name!: key
100 } 100 }
101 event stopPropagation: (foreign: undefined)
102 }
103
104 opClick <- :domnode astnode event {
105 selectParent: domnode
106 selectQuery: ".selectParent > .opname" in: domnode
107 showOps
101 event stopPropagation: (foreign: undefined) 108 event stopPropagation: (foreign: undefined)
102 } 109 }
103 110
104 funClick <- :domnode astnode event { 111 funClick <- :domnode astnode event {
105 selectParent: domnode 112 selectParent: domnode
180 187
181 lambdaClick <- :domnode astnode event { 188 lambdaClick <- :domnode astnode event {
182 symbolClick: domnode astnode event 189 symbolClick: domnode astnode event
183 } 190 }
184 191
192 visible <- "showops"
193
194 showOps <- {
195 each: (qall: ".controls") :idx el {
196 removeClass: el visible
197 addClass: el "showops"
198 }
199 visible <- "showops"
200 }
201
202 showLit <- {
203 each: (qall: ".controls") :idx el {
204 removeClass: el visible
205 addClass: el "showlit"
206 }
207 visible <- "showlit"
208 }
209
185 main <- { 210 main <- {
186 get: "/src/" :data { 211 get: "/src/" :data {
187 fakeEl <- newEl: "div" #{ 212 fakeEl <- newEl: "div" #{
188 innerHTML <- data response 213 innerHTML <- data response
189 } 214 }
212 el onclick!: :event { 237 el onclick!: :event {
213 srcel <- (q: "#src") 238 srcel <- (q: "#src")
214 srcel textContent!: (srcel textContent) + (el textContent) 239 srcel textContent!: (srcel textContent) + (el textContent)
215 } 240 }
216 } 241 }
217 visible <- "showops"
218 (q: "#ops_button") onclick!: :event { 242 (q: "#ops_button") onclick!: :event {
219 each: (qall: ".controls") :idx el { 243 showOps
220 removeClass: el visible
221 addClass: el "showops"
222 }
223 visible <- "showops"
224 } 244 }
225 (q: "#lit_button") onclick!: :event { 245 (q: "#lit_button") onclick!: :event {
226 each: (qall: ".controls") :idx el { 246 showLit
227 removeClass: el visible
228 addClass: el "showlit"
229 }
230 visible <- "showlit"
231 } 247 }
232 248
233 (q: "#in") onclick!: :event { 249 (q: "#in") onclick!: :event {
234 console log: "inwards" 250 console log: "inwards"
235 if: (selection valid?) { 251 if: (selection valid?) {