Mercurial > repos > tabletprog
annotate editor.tp @ 12:6e4851a204a5
Add ability to load code into editor
author | Mike Pavone <pavone@retrodev.com> |
---|---|
date | Wed, 21 Mar 2012 23:13:51 -0700 |
parents | 5447cff52da6 |
children | 85fb6ba15bc6 |
rev | line source |
---|---|
11 | 1 #{ |
2 //mquery functions | |
3 q <- foreign: :query {} | |
4 qall <- foreign: :query {} | |
5 each <- foreign: :iterable fun {} | |
6 addClass <- foreign: :node className {} | |
7 removeClass <- foreign: :node className {} | |
12
6e4851a204a5
Add ability to load code into editor
Mike Pavone <pavone@retrodev.com>
parents:
11
diff
changeset
|
8 get <- foreign: :url onSuccess onFail onOther {} |
11 | 9 |
10 //tabletprog JS helpers | |
11 setP <- foreign: :object property val {} | |
12 getP <- foreign: :object property {} | |
13 | |
14 //js builtins | |
15 console <- foreign: #{ | |
16 log <- foreign: #{} | |
17 } | |
18 | |
19 main <- { | |
12
6e4851a204a5
Add ability to load code into editor
Mike Pavone <pavone@retrodev.com>
parents:
11
diff
changeset
|
20 //bind handlers for file browser links |
6e4851a204a5
Add ability to load code into editor
Mike Pavone <pavone@retrodev.com>
parents:
11
diff
changeset
|
21 each: (qall: "a") :idx el { |
6e4851a204a5
Add ability to load code into editor
Mike Pavone <pavone@retrodev.com>
parents:
11
diff
changeset
|
22 el setP: "onclick" :event { |
6e4851a204a5
Add ability to load code into editor
Mike Pavone <pavone@retrodev.com>
parents:
11
diff
changeset
|
23 console log: "click" |
6e4851a204a5
Add ability to load code into editor
Mike Pavone <pavone@retrodev.com>
parents:
11
diff
changeset
|
24 link <- foreign: this |
6e4851a204a5
Add ability to load code into editor
Mike Pavone <pavone@retrodev.com>
parents:
11
diff
changeset
|
25 get: (link getP: "href") :request { |
6e4851a204a5
Add ability to load code into editor
Mike Pavone <pavone@retrodev.com>
parents:
11
diff
changeset
|
26 addClass: (q: "body") "editorMode" |
6e4851a204a5
Add ability to load code into editor
Mike Pavone <pavone@retrodev.com>
parents:
11
diff
changeset
|
27 console log: (request getP: "responseText") |
6e4851a204a5
Add ability to load code into editor
Mike Pavone <pavone@retrodev.com>
parents:
11
diff
changeset
|
28 (q: "#src") setP: "textContent" (request getP: "responseText") |
6e4851a204a5
Add ability to load code into editor
Mike Pavone <pavone@retrodev.com>
parents:
11
diff
changeset
|
29 } |
6e4851a204a5
Add ability to load code into editor
Mike Pavone <pavone@retrodev.com>
parents:
11
diff
changeset
|
30 console log: "returning false" |
6e4851a204a5
Add ability to load code into editor
Mike Pavone <pavone@retrodev.com>
parents:
11
diff
changeset
|
31 foreign: false |
6e4851a204a5
Add ability to load code into editor
Mike Pavone <pavone@retrodev.com>
parents:
11
diff
changeset
|
32 } |
6e4851a204a5
Add ability to load code into editor
Mike Pavone <pavone@retrodev.com>
parents:
11
diff
changeset
|
33 } |
6e4851a204a5
Add ability to load code into editor
Mike Pavone <pavone@retrodev.com>
parents:
11
diff
changeset
|
34 |
6e4851a204a5
Add ability to load code into editor
Mike Pavone <pavone@retrodev.com>
parents:
11
diff
changeset
|
35 //bind handlers for editor buttons |
6e4851a204a5
Add ability to load code into editor
Mike Pavone <pavone@retrodev.com>
parents:
11
diff
changeset
|
36 each: (qall: ".controls li") :idx el { |
11 | 37 el setP: "onclick" :event { |
38 srcel <- (q: "#src") | |
12
6e4851a204a5
Add ability to load code into editor
Mike Pavone <pavone@retrodev.com>
parents:
11
diff
changeset
|
39 srcel setP: "textContent" (srcel getP: "textContent") + (el getP: "textContent") |
11 | 40 } |
41 } | |
42 (q: "#ops_button") setP: "onclick" :event { | |
43 addClass: (q: ".controls") "showops" | |
44 } | |
45 | |
46 (q: "#builtin_button") setP: "onclick" :event { | |
47 removeClass: (q: ".controls") "showops" | |
48 } | |
49 } | |
50 | |
51 } |