ranger-compiler 3.0.3 → 3.0.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +27 -0
- package/README.md +1 -1
- package/dist/Lang.rgr +158 -9
- package/dist/lib/JSON.rgr +31 -4
- package/dist/lib/RangerProcess.rgr +273 -0
- package/dist/lib/stdlib.rgr +33 -3
- package/dist/package.json +1 -1
- package/dist/rgrc.js +1139 -47
- package/package.json +2 -2
- package/dist/lib/lib/ACEEditor.rgr +0 -5
- package/dist/lib/lib/Ajax.rgr +0 -196
- package/dist/lib/lib/CmdParams.rgr +0 -72
- package/dist/lib/lib/Crypto.rgr +0 -90
- package/dist/lib/lib/DOMLib.rgr +0 -307
- package/dist/lib/lib/Engine3D.rgr +0 -870
- package/dist/lib/lib/ImmutableVector.rgr +0 -364
- package/dist/lib/lib/IndexedDB.rgr +0 -32
- package/dist/lib/lib/JSON.rgr +0 -702
- package/dist/lib/lib/JinxProcess.rgr +0 -838
- package/dist/lib/lib/SQL.rgr +0 -44
- package/dist/lib/lib/ServiceLib.rgr +0 -9
- package/dist/lib/lib/Storage.rgr +0 -89
- package/dist/lib/lib/Time.rgr +0 -75
- package/dist/lib/lib/Timers.rgr +0 -176
- package/dist/lib/lib/TypedArrays.rgr +0 -14
- package/dist/lib/lib/ViewLib.rgr +0 -851
- package/dist/lib/lib/WebLib.rgr +0 -47
- package/dist/lib/lib/WebServerLib.rgr +0 -137
- package/dist/lib/lib/ranger-dir.rgr +0 -175
- package/dist/lib/lib/stdlib.rgr +0 -665
- package/dist/lib/lib/stdops.rgr +0 -168
package/dist/lib/lib/ViewLib.rgr
DELETED
|
@@ -1,851 +0,0 @@
|
|
|
1
|
-
|
|
2
|
-
systemclass Bytes {
|
|
3
|
-
java7 'byte[]'
|
|
4
|
-
}
|
|
5
|
-
|
|
6
|
-
operators {
|
|
7
|
-
to_bytes _:Bytes (str:string) {
|
|
8
|
-
templates {
|
|
9
|
-
java7 ( (e 1) '.getBytes()')
|
|
10
|
-
}
|
|
11
|
-
}
|
|
12
|
-
to_string _:string (bytes:Bytes) {
|
|
13
|
-
templates {
|
|
14
|
-
java7 ( 'new String('(e 1) ')')
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
to_base64 _:string (bytes:Bytes) {
|
|
18
|
-
templates {
|
|
19
|
-
java7 ('Base64.encodeToString(' (e 1) ', Base64.DEFAULT)' (imp 'android.util.Base64'))
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
systemclass UIContextHandle {
|
|
25
|
-
java7 Activity ( (imp "android.app.Activity") (imp "android.content.Context") )
|
|
26
|
-
es6 HTMLElement
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
systemclass ViewGroup {
|
|
30
|
-
java7 ViewGroup ( (imp 'android.view.ViewGroup'))
|
|
31
|
-
es6 HTMLElement
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
systemclass ViewSpan {
|
|
35
|
-
java7 Spanned ( (imp 'android.text.Spanned'))
|
|
36
|
-
es6 HTMLElement
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
systemclass ViewArgs {
|
|
40
|
-
java7 Bundle ( (imp 'android.os.Bundle'))
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
; should / could the types be operators ?
|
|
44
|
-
systemclass LayoutStorage {
|
|
45
|
-
java7 LayoutInflater ( (imp "android.view.LayoutInflater") )
|
|
46
|
-
es6 HTMLElement
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
systemclass ViewAnimation {
|
|
50
|
-
java7 Animation ( (imp 'android.animation.Animator') (imp 'android.animation.AnimatorListenerAdapter') (imp 'android.view.animation.AnimationUtils') )
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
systemclass View {
|
|
54
|
-
java7 View ( (imp 'android.view.View'))
|
|
55
|
-
es6 HTMLElement
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
systemclass Button {
|
|
59
|
-
java7 Button ( (imp 'android.widget.Button'))
|
|
60
|
-
es6 HTMLElement
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
systemclass Input {
|
|
64
|
-
java7 EditText ( (imp 'android.widget.EditText'))
|
|
65
|
-
es6 HTMLElement
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
systemclass ImageView {
|
|
69
|
-
java7 ImageView ( (imp 'android.widget.ImageView') )
|
|
70
|
-
es6 HTMLElement
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
systemclass ImageBitmap {
|
|
74
|
-
java7 Bitmap ( (imp 'android.graphics.Bitmap') )
|
|
75
|
-
es6 HTMLElement
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
systemclass ViewSlider {
|
|
79
|
-
java7 SeekBar ( (imp 'android.widget.SeekBar'))
|
|
80
|
-
es6 HTMLElement
|
|
81
|
-
}
|
|
82
|
-
|
|
83
|
-
class UIContext {
|
|
84
|
-
def view@(weak):ViewGroup
|
|
85
|
-
def ctx@(weak):UIContextHandle
|
|
86
|
-
def comps@(weak):LayoutStorage
|
|
87
|
-
def args@(weak):ViewArgs
|
|
88
|
-
def parent:UIContext
|
|
89
|
-
|
|
90
|
-
static fn create:UIContext ( mainView:ViewGroup h:UIContextHandle c:LayoutStorage args:ViewArgs) {
|
|
91
|
-
def o (new UIContext)
|
|
92
|
-
o.ctx = h
|
|
93
|
-
o.comps = c
|
|
94
|
-
o.view = mainView
|
|
95
|
-
o.args = args
|
|
96
|
-
return o
|
|
97
|
-
}
|
|
98
|
-
fn fork:UIContext () {
|
|
99
|
-
def newObj (new UIContext)
|
|
100
|
-
newObj.parent = this
|
|
101
|
-
return newObj
|
|
102
|
-
}
|
|
103
|
-
fn getRoot:UIContext () {
|
|
104
|
-
if(!null? parent) {
|
|
105
|
-
return (unwrap parent)
|
|
106
|
-
}
|
|
107
|
-
return this
|
|
108
|
-
}
|
|
109
|
-
fn getArgs:ViewArgs () {
|
|
110
|
-
return (unwrap args)
|
|
111
|
-
}
|
|
112
|
-
fn getMain:ViewGroup () {
|
|
113
|
-
return (unwrap ( (this.getRoot()).view) )
|
|
114
|
-
}
|
|
115
|
-
fn getCtx:UIContextHandle () {
|
|
116
|
-
return (unwrap ( (this.getRoot()).ctx) )
|
|
117
|
-
}
|
|
118
|
-
fn viewFactory:LayoutStorage() {
|
|
119
|
-
return (unwrap ( (this.getRoot()).comps) )
|
|
120
|
-
}
|
|
121
|
-
}
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
operators {
|
|
125
|
-
setTextNotUsed _:void (btn:Button txt:string) {
|
|
126
|
-
templates {
|
|
127
|
-
ranger ( "(setText " (e 1) " " (e 2) " )" )
|
|
128
|
-
}
|
|
129
|
-
}
|
|
130
|
-
}
|
|
131
|
-
|
|
132
|
-
; case uictx c:UIContextHandle {
|
|
133
|
-
; ui_thread c {
|
|
134
|
-
; setPageTitle sObj.name
|
|
135
|
-
; }
|
|
136
|
-
; }
|
|
137
|
-
|
|
138
|
-
;"
|
|
139
|
-
|
|
140
|
-
operator type:void all {
|
|
141
|
-
|
|
142
|
-
fn task.ui:JinxProcess ( cb@(strong):(_:void (ctx:JinxProcessCtx)) ) {
|
|
143
|
-
def t (new JinxUIThreadTask)
|
|
144
|
-
t.callback = cb
|
|
145
|
-
return t
|
|
146
|
-
}
|
|
147
|
-
}
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
operators {
|
|
151
|
-
|
|
152
|
-
getActiveView _:ViewGroup () {
|
|
153
|
-
templates {
|
|
154
|
-
ranger ('(getActiveView )')
|
|
155
|
-
es6 ( 'view' )
|
|
156
|
-
}
|
|
157
|
-
}
|
|
158
|
-
|
|
159
|
-
getArguments _:ViewArgs () {
|
|
160
|
-
templates {
|
|
161
|
-
ranger ('(getArguments)')
|
|
162
|
-
java7 ('getArguments()')
|
|
163
|
-
}
|
|
164
|
-
}
|
|
165
|
-
|
|
166
|
-
pageProcess _:JinxProcess () {
|
|
167
|
-
templates {
|
|
168
|
-
ranger ("(pageProcess )")
|
|
169
|
-
* @macro(true) ("(cast (unwrap (get ctx.anyValues \"process\" )) to:JinxProcess)")
|
|
170
|
-
}
|
|
171
|
-
}
|
|
172
|
-
|
|
173
|
-
pageView _:View () {
|
|
174
|
-
templates {
|
|
175
|
-
ranger ("(pageView )")
|
|
176
|
-
* @macro(true) ("(cast (unwrap (get ctx.anyValues \"view\" )) to:View)")
|
|
177
|
-
}
|
|
178
|
-
}
|
|
179
|
-
|
|
180
|
-
setViewProcess _:void ( process:JinxProcess ) {
|
|
181
|
-
templates {
|
|
182
|
-
ranger ("(setViewProcess " (e 1) ")")
|
|
183
|
-
es6 ("")
|
|
184
|
-
java7 ("mainProcess = " (e 1) ";" nl)
|
|
185
|
-
}
|
|
186
|
-
}
|
|
187
|
-
|
|
188
|
-
; ViewSpan
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
getMainView _:ViewGroup () {
|
|
192
|
-
templates {
|
|
193
|
-
ranger ("(getMainView )")
|
|
194
|
-
es6 ( "document.body" )
|
|
195
|
-
java7 ("(ViewGroup)view" ) ; container?
|
|
196
|
-
}
|
|
197
|
-
}
|
|
198
|
-
|
|
199
|
-
getUIContext _:UIContextHandle () {
|
|
200
|
-
templates {
|
|
201
|
-
ranger ("(getUIContext )")
|
|
202
|
-
es6 ( "window" )
|
|
203
|
-
java7 ("getActivity()" (imp "android.content.Context") (imp "android.app.Activity"))
|
|
204
|
-
}
|
|
205
|
-
}
|
|
206
|
-
|
|
207
|
-
getLayoutStorage _:LayoutStorage () {
|
|
208
|
-
templates {
|
|
209
|
-
ranger ("(getLayoutStorage )")
|
|
210
|
-
es6 ( "window" )
|
|
211
|
-
java7 ("inflater" (imp "android.view.LayoutInflater") )
|
|
212
|
-
}
|
|
213
|
-
}
|
|
214
|
-
|
|
215
|
-
ui_thread _:void ( handle:UIContext code:block ) {
|
|
216
|
-
templates {
|
|
217
|
-
ranger ("(ui_thread " (e 1) " {" nl (block 2) nl "})")
|
|
218
|
-
es6 ( (block 2) )
|
|
219
|
-
java7 (
|
|
220
|
-
(e 1) ".getCtx().runOnUiThread(new Runnable(){" nl I
|
|
221
|
-
"@Override" nl
|
|
222
|
-
"public void run() {" nl I
|
|
223
|
-
(block 2)
|
|
224
|
-
nl i "}"
|
|
225
|
-
nl i
|
|
226
|
-
"});"
|
|
227
|
-
|
|
228
|
-
(imp "android.app.Activity")
|
|
229
|
-
)
|
|
230
|
-
}
|
|
231
|
-
}
|
|
232
|
-
|
|
233
|
-
fadeOut _:void (view:View ms:int) {
|
|
234
|
-
templates {
|
|
235
|
-
ranger ( '(fadeOut '(e 1)' ' (e 2) ')')
|
|
236
|
-
java7 ( (e 1) `.animate().alpha(0f).setDuration(` (e 2) `)
|
|
237
|
-
.setListener(new AnimatorListenerAdapter() {
|
|
238
|
-
@Override
|
|
239
|
-
public void onAnimationEnd(Animator animation) {
|
|
240
|
-
` (e 1) `.setVisibility(View.GONE);
|
|
241
|
-
}
|
|
242
|
-
});`
|
|
243
|
-
(imp 'android.animation.AnimatorListenerAdapter')
|
|
244
|
-
(imp 'android.animation.Animator')
|
|
245
|
-
)
|
|
246
|
-
}
|
|
247
|
-
}
|
|
248
|
-
|
|
249
|
-
onDraw _void (view:ViewGroup cb:(_:void ()) ) {
|
|
250
|
-
templates {
|
|
251
|
-
ranger ('(onInsert ' (e 1)' ' (e 2)')')
|
|
252
|
-
java7 ( (e 1) `.getViewTreeObserver().addOnPreDrawListener(new ViewTreeObserver.OnPreDrawListener() {` nl I
|
|
253
|
-
'@Override' nl
|
|
254
|
-
'public boolean onPreDraw () {' nl I (e 2) '.run();' nl
|
|
255
|
-
'return true;' nl
|
|
256
|
-
i '}' nl i '});'
|
|
257
|
-
(imp 'android.view.ViewTreeObserver')
|
|
258
|
-
)
|
|
259
|
-
}
|
|
260
|
-
}
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
fadeOut _:void (view:ViewGroup ms:int) {
|
|
264
|
-
templates {
|
|
265
|
-
ranger ( '(fadeOut '(e 1)' ' (e 2) ')')
|
|
266
|
-
java7 ( (e 1) `.animate().alpha(0f).setDuration(` (e 2) `)
|
|
267
|
-
.setListener(new AnimatorListenerAdapter() {
|
|
268
|
-
@Override
|
|
269
|
-
public void onAnimationEnd(Animator animation) {
|
|
270
|
-
` (e 1) `.setVisibility(View.GONE);
|
|
271
|
-
}
|
|
272
|
-
});`
|
|
273
|
-
(imp 'android.animation.AnimatorListenerAdapter')
|
|
274
|
-
(imp 'android.animation.Animator')
|
|
275
|
-
)
|
|
276
|
-
}
|
|
277
|
-
}
|
|
278
|
-
|
|
279
|
-
fadeIn _:void (view:ViewGroup ms:int) {
|
|
280
|
-
templates {
|
|
281
|
-
ranger ( '(fadeOut '(e 1)' ' (e 2) ')')
|
|
282
|
-
java7 ( (e 1) `.setVisibility(View.VISIBLE);` nl
|
|
283
|
-
(e 1) `.animate().alpha(1f).setDuration(` (e 2) `)
|
|
284
|
-
.setListener(new AnimatorListenerAdapter() {
|
|
285
|
-
@Override
|
|
286
|
-
public void onAnimationEnd(Animator animation) {
|
|
287
|
-
}
|
|
288
|
-
});`
|
|
289
|
-
(imp 'android.animation.AnimatorListenerAdapter')
|
|
290
|
-
(imp 'android.animation.Animator')
|
|
291
|
-
)
|
|
292
|
-
}
|
|
293
|
-
}
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
setPageTitle _:void (ui:UIContext txt:string) {
|
|
297
|
-
templates {
|
|
298
|
-
ranger ("(setPageTitle " (e 1) " " (e 2) ")")
|
|
299
|
-
es6 ( "document.title = " (e 1) ";" )
|
|
300
|
-
java7 ((e 1) ".getCtx().setTitle(" ( e 2 ) ");")
|
|
301
|
-
}
|
|
302
|
-
}
|
|
303
|
-
|
|
304
|
-
setPageTitle _:void (ui:UIContextHandle txt:string) {
|
|
305
|
-
templates {
|
|
306
|
-
ranger ("(setPageTitle " (e 1) " " (e 2) ")")
|
|
307
|
-
es6 ( "document.title = " (e 1) ";" )
|
|
308
|
-
java7 ((e 1) ".setTitle(" ( e 2 ) ");")
|
|
309
|
-
}
|
|
310
|
-
}
|
|
311
|
-
|
|
312
|
-
blur _:void ( view:Input ) {
|
|
313
|
-
templates {
|
|
314
|
-
ranger ('(blur ' (e 1) ')')
|
|
315
|
-
java7 ( (e 1) '.clearFocus();')
|
|
316
|
-
es6 ( (e 1) '.blur();' )
|
|
317
|
-
}
|
|
318
|
-
}
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
removeView _:void ( view1:View ) {
|
|
322
|
-
templates {
|
|
323
|
-
ranger ('(removeView ' (e 1) ')')
|
|
324
|
-
java7 ( '((ViewGroup)' (e 1) '.getParent()).removeView(' (e 1) ');')
|
|
325
|
-
es6 ( (e 1) '.parentNode.removeChild(' (e 1) ');' )
|
|
326
|
-
}
|
|
327
|
-
}
|
|
328
|
-
|
|
329
|
-
rotate _:void (view:View degrees:int) {
|
|
330
|
-
templates {
|
|
331
|
-
ranger ('(rotate ' (e 1) ' ' (e 2) ')')
|
|
332
|
-
java7 ( (e 1) ".setRotation(" (e 2) ");")
|
|
333
|
-
}
|
|
334
|
-
}
|
|
335
|
-
|
|
336
|
-
set _void (s:ViewSlider value:int) {
|
|
337
|
-
; setProgress
|
|
338
|
-
templates {
|
|
339
|
-
ranger ('(set ' (e 1) ' ' (e 2) ')')
|
|
340
|
-
java7 ((e 1) '.setProgress(' (e 2) ');')
|
|
341
|
-
}
|
|
342
|
-
}
|
|
343
|
-
|
|
344
|
-
onChange _:void ( s:ViewSlider cb:(_:void (value:int)) ) {
|
|
345
|
-
templates {
|
|
346
|
-
ranger ('(onChange ' (e 1) ' ' (e 2) ')')
|
|
347
|
-
java7 (
|
|
348
|
-
(imp 'android.widget.SeekBar')
|
|
349
|
-
(e 1)`.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
|
|
350
|
-
|
|
351
|
-
@Override
|
|
352
|
-
public void onStopTrackingTouch(SeekBar seekBar) {
|
|
353
|
-
|
|
354
|
-
}
|
|
355
|
-
@Override
|
|
356
|
-
public void onStartTrackingTouch(SeekBar seekBar) {
|
|
357
|
-
}
|
|
358
|
-
@Override
|
|
359
|
-
public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
|
|
360
|
-
`nl I (e 2) `.run(progress);` nl i `
|
|
361
|
-
}
|
|
362
|
-
});
|
|
363
|
-
|
|
364
|
-
`
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
)
|
|
368
|
-
}
|
|
369
|
-
}
|
|
370
|
-
|
|
371
|
-
removeView _:void ( view1:ViewGroup view2:View) {
|
|
372
|
-
templates {
|
|
373
|
-
ranger ('(removeView ' (e 1) ' ' (e 2) ')')
|
|
374
|
-
java7 ( '((ViewGroup)' (e 1) '.getParent()).removeView(' (e 2) ');')
|
|
375
|
-
es6 ( (e 1) '.removeChild(' (e 2) ');' )
|
|
376
|
-
}
|
|
377
|
-
}
|
|
378
|
-
|
|
379
|
-
removeView _:void ( view1:ViewGroup view2:ViewGroup) {
|
|
380
|
-
templates {
|
|
381
|
-
ranger ('(removeView ' (e 1) ' ' (e 2) ')')
|
|
382
|
-
java7 ( '((ViewGroup)' (e 1) '.getParent()).removeView(' (e 2) ');')
|
|
383
|
-
es6 ( (e 1) '.removeChild(' (e 2) ');' )
|
|
384
|
-
}
|
|
385
|
-
}
|
|
386
|
-
|
|
387
|
-
createAnimation _:ViewAnimation ( ctx:UIContextHandle str:string) {
|
|
388
|
-
templates {
|
|
389
|
-
java7 (`AnimationUtils.loadAnimation(` (e 1) `, R.anim.` (str 2) `)` (imp "android.view.animation.AnimationUtils"))
|
|
390
|
-
}
|
|
391
|
-
}
|
|
392
|
-
|
|
393
|
-
start _:ViewAnimation ( view:View anim:ViewAnimation) {
|
|
394
|
-
templates {
|
|
395
|
-
java7 ( (e 1) `.startAnimation(` (e 2) `);` (imp "android.view.animation.AnimationUtils") )
|
|
396
|
-
}
|
|
397
|
-
}
|
|
398
|
-
|
|
399
|
-
start _:ViewAnimation ( view:ViewGroup anim:ViewAnimation) {
|
|
400
|
-
templates {
|
|
401
|
-
java7 ( (e 1) `.startAnimation(` (e 2) `);` (imp "android.view.animation.AnimationUtils") )
|
|
402
|
-
}
|
|
403
|
-
}
|
|
404
|
-
|
|
405
|
-
addView _:void ( view1:ViewGroup view2:View) {
|
|
406
|
-
templates {
|
|
407
|
-
ranger ("(addView " (e 1) " " (e 2) ")")
|
|
408
|
-
java7 ( (e 1) ".addView(" (e 2) ");")
|
|
409
|
-
es6 ( (e 1) ".appendChild(" (e 2) ");" )
|
|
410
|
-
}
|
|
411
|
-
}
|
|
412
|
-
|
|
413
|
-
addView _:void ( view1:ViewGroup view2:ViewGroup) {
|
|
414
|
-
templates {
|
|
415
|
-
ranger ("(addView " (e 1) " " (e 2) ")")
|
|
416
|
-
java7 ( (e 1) ".addView(" (e 2) ");")
|
|
417
|
-
es6 ( (e 1) ".appendChild(" (e 2) ");" )
|
|
418
|
-
}
|
|
419
|
-
}
|
|
420
|
-
|
|
421
|
-
createView _:View (ui:UIContext name:string) {
|
|
422
|
-
templates {
|
|
423
|
-
ranger ('(createView ' (e 1) ' ' (e 2) ')')
|
|
424
|
-
java7 ( (e 1) '.viewFactory().inflate(R.layout.activity_' (str 2) ', '(e 1)'.getMain(), false)')
|
|
425
|
-
es6 ( `document.querySelectorAll('[x-id='+ ` (e 2) `+']')[0].cloneNode(true)` )
|
|
426
|
-
}
|
|
427
|
-
}
|
|
428
|
-
|
|
429
|
-
createViewGroup _:ViewGroup (ui:UIContext name:string) {
|
|
430
|
-
templates {
|
|
431
|
-
ranger ('(createViewGroup ' (e 1) ' ' (e 2) ')')
|
|
432
|
-
java7 ( '(ViewGroup)'(e 1) '.viewFactory().inflate(R.layout.activity_' (str 2) ', '(e 1)'.getMain(), false)')
|
|
433
|
-
; java7 ('inflater.inflate(R.layout.activity_' (str 1) ', container, false)')
|
|
434
|
-
es6 ( `document.querySelectorAll('[x-id='+ ` (e 1) `+']')[0].cloneNode(true)` )
|
|
435
|
-
}
|
|
436
|
-
}
|
|
437
|
-
|
|
438
|
-
scrollTo _:void (view:ViewGroup x:int y:int) {
|
|
439
|
-
templates {
|
|
440
|
-
java7 ('((ScrollView)'(e 1) ').smoothScrollTo(' (e 2) ', ' (e 3) ');'
|
|
441
|
-
(imp 'android.widget.ScrollView')
|
|
442
|
-
)
|
|
443
|
-
}
|
|
444
|
-
}
|
|
445
|
-
|
|
446
|
-
findSlider _:ViewSlider (view:ViewGroup name:string) {
|
|
447
|
-
templates {
|
|
448
|
-
ranger ("(findSlider " (e 1) " " (e 2) ")")
|
|
449
|
-
es6 ( "view.querySelectorAll('[x-id=" (str 1) "]')[0]" )
|
|
450
|
-
java7 ("( (SeekBar) " ( e 1 ) ".findViewById(R.id." (str 2) ") )")
|
|
451
|
-
}
|
|
452
|
-
}
|
|
453
|
-
findImage _:ImageView (view:ViewGroup name:string) {
|
|
454
|
-
templates {
|
|
455
|
-
ranger ("(findImage " (e 1) " " (e 2) ")")
|
|
456
|
-
es6 ( "view.querySelectorAll('[x-id=" (str 1) "]')[0]" )
|
|
457
|
-
java7 ("((ImageView) (" ( e 1) ".findViewById(R.id." (str 2) ")))" (imp 'android.widget.ImageView') )
|
|
458
|
-
}
|
|
459
|
-
}
|
|
460
|
-
findInput _:Input (view:ViewGroup name:string) {
|
|
461
|
-
templates {
|
|
462
|
-
ranger ("(findInput " (e 1) " " (e 2) ")")
|
|
463
|
-
es6 ( "view.querySelectorAll('[x-id=" (str 1) "]')[0]" )
|
|
464
|
-
java7 ("((EditText) " ( e 1) ".findViewById(R.id." (str 2) "))")
|
|
465
|
-
}
|
|
466
|
-
}
|
|
467
|
-
|
|
468
|
-
findInput _:Input (view:View name:string) {
|
|
469
|
-
templates {
|
|
470
|
-
ranger ("(findInput " (e 1) " " (e 2) ")")
|
|
471
|
-
es6 ( "view.querySelectorAll('[x-id=" (str 1) "]')[0]" )
|
|
472
|
-
java7 ("((EditText) " ( e 1) ".findViewById(R.id." (str 2) "))")
|
|
473
|
-
}
|
|
474
|
-
}
|
|
475
|
-
findInput _:Input (name:string) {
|
|
476
|
-
templates {
|
|
477
|
-
ranger ("(findInput " (e 1) ")")
|
|
478
|
-
es6 ( "view.querySelectorAll('[x-id=" (str 1) "]')[0]" )
|
|
479
|
-
java7 ("((EditText)view.findViewById(R.id." (str 1) "))")
|
|
480
|
-
}
|
|
481
|
-
}
|
|
482
|
-
|
|
483
|
-
findView _:View ( mainView:View name:string) {
|
|
484
|
-
templates {
|
|
485
|
-
ranger ("(findView " (e 1) " " (e 2) ")")
|
|
486
|
-
es6 ( (e 1) ".querySelectorAll('[x-id=" (str 2) "]')[0]" )
|
|
487
|
-
java7 ((e 1) ".findViewById(R.id." (str 2) ")")
|
|
488
|
-
}
|
|
489
|
-
}
|
|
490
|
-
|
|
491
|
-
findView _:View ( mainView:ViewGroup name:string) {
|
|
492
|
-
templates {
|
|
493
|
-
ranger ("(findView " (e 1) " " (e 2) ")")
|
|
494
|
-
es6 ( (e 1) ".querySelectorAll('[x-id=" (str 2) "]')[0]" )
|
|
495
|
-
java7 ((e 1) ".findViewById(R.id." (str 2) ")")
|
|
496
|
-
}
|
|
497
|
-
}
|
|
498
|
-
|
|
499
|
-
findView _:View ( ctx:UIContext name:string) {
|
|
500
|
-
templates {
|
|
501
|
-
* @macro(true) ( '(findView (' (e 1) '.getMain()) "' (str 2) '")')
|
|
502
|
-
}
|
|
503
|
-
}
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
findView _:View (name:string) {
|
|
507
|
-
templates {
|
|
508
|
-
ranger ("(findView " (e 1) ")")
|
|
509
|
-
es6 ( "view.querySelectorAll('[x-id=" (str 1) "]')[0]" )
|
|
510
|
-
java7 ("view.findViewById(R.id." (str 1) ")")
|
|
511
|
-
}
|
|
512
|
-
}
|
|
513
|
-
|
|
514
|
-
clear _:void (g:ViewGroup) {
|
|
515
|
-
templates {
|
|
516
|
-
ranger ('(clear ' (e 1) ' )')
|
|
517
|
-
java7 ( (e 1) '.removeAllViews();' nl)
|
|
518
|
-
}
|
|
519
|
-
}
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
findViewGroup _:ViewGroup ( name:string) {
|
|
523
|
-
templates {
|
|
524
|
-
ranger ("(findViewGroup " (e 1) " " (e 2) ")")
|
|
525
|
-
es6 ( (e 1) ".querySelectorAll('[x-id=" (str 2) "]')[0]" )
|
|
526
|
-
java7 ( "((ViewGroup) view.findViewById(R.id." (str 1) "))")
|
|
527
|
-
}
|
|
528
|
-
}
|
|
529
|
-
|
|
530
|
-
findViewGroup _:ViewGroup ( mainView:View name:string) {
|
|
531
|
-
templates {
|
|
532
|
-
ranger ("(findViewGroup " (e 1) " " (e 2) ")")
|
|
533
|
-
es6 ( (e 1) ".querySelectorAll('[x-id=" (str 2) "]')[0]" )
|
|
534
|
-
java7 ( "((ViewGroup) " (e 1) ".findViewById(R.id." (str 2) "))")
|
|
535
|
-
}
|
|
536
|
-
}
|
|
537
|
-
|
|
538
|
-
|
|
539
|
-
findViewGroup _:ViewGroup ( mainView:ViewGroup name:string) {
|
|
540
|
-
templates {
|
|
541
|
-
ranger ("(findViewGroup " (e 1) " " (e 2) ")")
|
|
542
|
-
es6 ( (e 1) ".querySelectorAll('[x-id=" (str 2) "]')[0]" )
|
|
543
|
-
java7 ( "((ViewGroup) " (e 1) ".findViewById(R.id." (str 2) "))")
|
|
544
|
-
}
|
|
545
|
-
}
|
|
546
|
-
|
|
547
|
-
; getWidth
|
|
548
|
-
|
|
549
|
-
width _:int (view:View) {
|
|
550
|
-
; view.getLayoutParams().width
|
|
551
|
-
templates {
|
|
552
|
-
ranger ("(width " (e 1) " " (e 2) ")")
|
|
553
|
-
java7 ( (e 1) ".getWidth()" (imp "android.view.View"))
|
|
554
|
-
es6 ( (e 1) ".style.width = " (e 2) "px" )
|
|
555
|
-
}
|
|
556
|
-
}
|
|
557
|
-
|
|
558
|
-
width _:int (view:ViewGroup) {
|
|
559
|
-
; view.getLayoutParams().width
|
|
560
|
-
templates {
|
|
561
|
-
ranger ("(width " (e 1) " " (e 2) ")")
|
|
562
|
-
java7 ( (e 1) ".getWidth()" (imp "android.view.View"))
|
|
563
|
-
es6 ( (e 1) ".style.width = " (e 2) "px" )
|
|
564
|
-
}
|
|
565
|
-
}
|
|
566
|
-
|
|
567
|
-
width _:void (view:View width:int) {
|
|
568
|
-
; view.getLayoutParams().width
|
|
569
|
-
templates {
|
|
570
|
-
ranger ("(width " (e 1) " " (e 2) ")")
|
|
571
|
-
java7 ( (e 1) ".getLayoutParams().width = " (e 2) ";" nl
|
|
572
|
-
(e 1) ".requestLayout();" nl
|
|
573
|
-
(imp "android.view.View"))
|
|
574
|
-
es6 ( (e 1) ".style.width = " (e 2) "px" )
|
|
575
|
-
}
|
|
576
|
-
}
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
setText _:void (btn:Button txt:string) {
|
|
580
|
-
templates {
|
|
581
|
-
ranger ("(setText " (e 1) " " (e 2) ")")
|
|
582
|
-
java7 ( (e 1) ".setText(" (e 2) ");" (imp "android.widget.Button"))
|
|
583
|
-
es6 ( (e 1) ".textContent = " (e 2) "" )
|
|
584
|
-
}
|
|
585
|
-
}
|
|
586
|
-
setText _:void (view:View txt:string) {
|
|
587
|
-
templates {
|
|
588
|
-
ranger ("(setText " (e 1) " " (e 2) ")")
|
|
589
|
-
java7 (
|
|
590
|
-
"if( " (e 1) " instanceof Button) ((Button)" (e 1) ").setText(" (e 2) ");" nl
|
|
591
|
-
"if( " (e 1) " instanceof TextView) ((TextView)" (e 1) ").setText(" (e 2) ");" nl
|
|
592
|
-
"if( " (e 1) " instanceof EditText) ((EditText)" (e 1) ").setText(" (e 2) ");" nl
|
|
593
|
-
(imp "android.widget.Button") (imp "android.widget.TextView") (imp "android.widget.EditText"))
|
|
594
|
-
es6 ( (e 1) ".textContent = " (e 2) "" )
|
|
595
|
-
}
|
|
596
|
-
}
|
|
597
|
-
|
|
598
|
-
html_to_span _:ViewSpan (html:string) {
|
|
599
|
-
templates {
|
|
600
|
-
ranger ('(html_to_span ' (e 1) ' )')
|
|
601
|
-
java7 ( '_getSpannedFromHTML(' (e 1)')'
|
|
602
|
-
(create_polyfill `
|
|
603
|
-
Spanned _getSpannedFromHTML ( String html ) {
|
|
604
|
-
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.N) {
|
|
605
|
-
return (Html.fromHtml(html,Html.FROM_HTML_MODE_LEGACY));
|
|
606
|
-
} else {
|
|
607
|
-
return (Html.fromHtml(html));
|
|
608
|
-
}
|
|
609
|
-
}
|
|
610
|
-
`)
|
|
611
|
-
(imp "android.text.Html") (imp 'android.text.Spanned') )
|
|
612
|
-
es6 ('/* todo: html_to_span */')
|
|
613
|
-
}
|
|
614
|
-
}
|
|
615
|
-
|
|
616
|
-
setText _:void (view:View txt:ViewSpan) {
|
|
617
|
-
templates {
|
|
618
|
-
ranger ("(setText " (e 1) " " (e 2) ")")
|
|
619
|
-
java7 (
|
|
620
|
-
"if( " (e 1) " instanceof TextView) ((TextView)" (e 1) ").setText(" (e 2) ");" nl
|
|
621
|
-
(imp "android.widget.TextView") )
|
|
622
|
-
es6 ( (e 1) ".appendChild( " (e 2) " )" )
|
|
623
|
-
}
|
|
624
|
-
}
|
|
625
|
-
|
|
626
|
-
onChange _:void (view:Input ev:(_:void (value:string))) {
|
|
627
|
-
templates {
|
|
628
|
-
ranger ("(onChange " (e 1) " " (e 2) " )")
|
|
629
|
-
java7 (
|
|
630
|
-
(e 1) ".addTextChangedListener(new TextWatcher() {" nl
|
|
631
|
-
I
|
|
632
|
-
"public void afterTextChanged(Editable s) {}" nl
|
|
633
|
-
"public void beforeTextChanged(CharSequence s, int start, int count, int after) {}" nl
|
|
634
|
-
"public void onTextChanged(CharSequence s, int start, int before, int count) {" nl
|
|
635
|
-
I
|
|
636
|
-
(e 2) ".run( s.toString() );" nl
|
|
637
|
-
i nl "}"
|
|
638
|
-
nl i
|
|
639
|
-
"});" nl
|
|
640
|
-
|
|
641
|
-
(imp "android.text.TextWatcher")
|
|
642
|
-
(imp "android.widget.EditText")
|
|
643
|
-
(imp "android.text.Editable")
|
|
644
|
-
)
|
|
645
|
-
es6 (
|
|
646
|
-
(e 1) ".addEventListener('keyup', (event) => {" nl
|
|
647
|
-
I "(" (e 2) "(event.target.value)" nl i
|
|
648
|
-
"});" nl
|
|
649
|
-
)
|
|
650
|
-
|
|
651
|
-
}
|
|
652
|
-
}
|
|
653
|
-
|
|
654
|
-
onClick _:void (view:View ev:(_:void ())) {
|
|
655
|
-
templates {
|
|
656
|
-
ranger ("(onClick " (e 1) " " (e 2) " )")
|
|
657
|
-
java7 (
|
|
658
|
-
(e 1)'.setClickable(true);' nl
|
|
659
|
-
(e 1) ".setOnClickListener(new View.OnClickListener() {" nl
|
|
660
|
-
I
|
|
661
|
-
"@Override" nl
|
|
662
|
-
"public void onClick(View __view) {" nl
|
|
663
|
-
I (e 2) ".run();" i
|
|
664
|
-
"}" nl i
|
|
665
|
-
"});" nl
|
|
666
|
-
)
|
|
667
|
-
es6 (
|
|
668
|
-
(e 1) ".addEventListener('click', () => {" nl
|
|
669
|
-
I "((" (e 2) ")())" nl i
|
|
670
|
-
"});" nl
|
|
671
|
-
)
|
|
672
|
-
|
|
673
|
-
}
|
|
674
|
-
}
|
|
675
|
-
|
|
676
|
-
popView _:void ( pageName:string ) {
|
|
677
|
-
templates {
|
|
678
|
-
ranger ("(popView " (e 1) ")")
|
|
679
|
-
es6 ("/* popView */")
|
|
680
|
-
java7 (
|
|
681
|
-
"FragmentManager fm = getActivity()" nl I
|
|
682
|
-
".getSupportFragmentManager();" nl i
|
|
683
|
-
"fm.popBackStack (" (e 1) ", FragmentManager.POP_BACK_STACK_INCLUSIVE);" nl
|
|
684
|
-
)
|
|
685
|
-
}
|
|
686
|
-
}
|
|
687
|
-
|
|
688
|
-
getArg _:string ( ui:UIContext name:string) {
|
|
689
|
-
templates {
|
|
690
|
-
ranger ('(getArg ' (e 1) ' ' (e 2) ')' )
|
|
691
|
-
java7 ( (e 1) '.getArgs().getString(' (e 2) ')' )
|
|
692
|
-
}
|
|
693
|
-
}
|
|
694
|
-
|
|
695
|
-
getArg _@(optional):string ( ui:UIContext) {
|
|
696
|
-
templates {
|
|
697
|
-
ranger ('(getArg ' (e 1) ' ' (e 2) ')' )
|
|
698
|
-
java7 ( (e 1) '.getArgs() != null ? ' (e 1) '.getArgs().getString("path") : null' )
|
|
699
|
-
}
|
|
700
|
-
}
|
|
701
|
-
|
|
702
|
-
; can you load view this way...
|
|
703
|
-
pushView _:void ( pageName:string into:string args:string) {
|
|
704
|
-
templates {
|
|
705
|
-
ranger ("(pushView " (e 1) " " (e 2) ")")
|
|
706
|
-
java7 (
|
|
707
|
-
"Fragment fragment = new " (str 1) "();" nl
|
|
708
|
-
'Bundle _args = new Bundle();' nl
|
|
709
|
-
'_args.putString("path", ' (e 3) ' );' nl
|
|
710
|
-
'fragment.setArguments(_args);' nl
|
|
711
|
-
"FragmentManager fragmentManager = getActivity().getSupportFragmentManager();" nl
|
|
712
|
-
"FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();" nl
|
|
713
|
-
"fragmentTransaction.replace(R.id." (str 2) ", fragment);" nl
|
|
714
|
-
"fragmentTransaction.addToBackStack(null);" nl
|
|
715
|
-
"fragmentTransaction.commit();" nl
|
|
716
|
-
(imp "android.support.v4.app.FragmentManager")
|
|
717
|
-
(imp "android.support.v4.app.Fragment")
|
|
718
|
-
(imp "android.support.v4.app.FragmentTransaction")
|
|
719
|
-
)
|
|
720
|
-
es6 (
|
|
721
|
-
"() => {" nl
|
|
722
|
-
I "var replaced = view.querySelectorAll('[x-id=" (str 2) "]')[0];" nl
|
|
723
|
-
"var newChild = document.querySelectorAll('[x-id=" (str 1) "]')[0];" nl
|
|
724
|
-
"replaced.parentNode.replaceChild(newChild, replaced);" nl
|
|
725
|
-
i "}();" nl
|
|
726
|
-
)
|
|
727
|
-
}
|
|
728
|
-
}
|
|
729
|
-
|
|
730
|
-
setImageBitmap _:void ( view:ImageView data:ImageBitmap ) {
|
|
731
|
-
templates {
|
|
732
|
-
java7 ( (e 1) '.setImageBitmap(' (e 2) ');')
|
|
733
|
-
}
|
|
734
|
-
}
|
|
735
|
-
|
|
736
|
-
getScrollView _:ViewGroup ( ui:UIContext ) {
|
|
737
|
-
templates {
|
|
738
|
-
java7 ('(ViewGroup)container.getParent()')
|
|
739
|
-
}
|
|
740
|
-
}
|
|
741
|
-
|
|
742
|
-
parent _:ViewGroup (viewGroup:ViewGroup) {
|
|
743
|
-
templates {
|
|
744
|
-
java7 ( '(ViewGroup)' (e 1) '.getParent()')
|
|
745
|
-
}
|
|
746
|
-
}
|
|
747
|
-
|
|
748
|
-
|
|
749
|
-
getBitmapFromUrl _:void ( url:string callback:(_:void ( data:ImageBitmap ))) {
|
|
750
|
-
templates {
|
|
751
|
-
java7 ( '(new DownloadImageTask() { ' nl I
|
|
752
|
-
'@Override' nl
|
|
753
|
-
'protected void onPostExecute(Bitmap result) {' nl I
|
|
754
|
-
'try {' I
|
|
755
|
-
(e 2) '.run(result); ' nl i
|
|
756
|
-
'} catch( Exception e) {}' nl i
|
|
757
|
-
'}' nl i
|
|
758
|
-
'}).execute(' (e 1) ');' (imp 'android.widget.ImageView')
|
|
759
|
-
|
|
760
|
-
(java_class 'DownloadImageTask' `
|
|
761
|
-
|
|
762
|
-
import android.os.AsyncTask;
|
|
763
|
-
import android.graphics.Bitmap;
|
|
764
|
-
import java.io.BufferedReader;
|
|
765
|
-
import java.io.DataOutputStream;
|
|
766
|
-
import java.io.InputStreamReader;
|
|
767
|
-
import java.net.HttpURLConnection;
|
|
768
|
-
import android.widget.ImageView;
|
|
769
|
-
import java.io.InputStream;
|
|
770
|
-
import java.net.URL;
|
|
771
|
-
import android.graphics.BitmapFactory;
|
|
772
|
-
import android.util.Log;
|
|
773
|
-
|
|
774
|
-
class DownloadImageTask extends AsyncTask<String, Void, Bitmap> {
|
|
775
|
-
public DownloadImageTask() {
|
|
776
|
-
}
|
|
777
|
-
protected Bitmap doInBackground(String... urls) {
|
|
778
|
-
String urldisplay = urls[0];
|
|
779
|
-
Bitmap mIcon11 = null;
|
|
780
|
-
try {
|
|
781
|
-
InputStream in = new java.net.URL(urldisplay).openStream();
|
|
782
|
-
mIcon11 = BitmapFactory.decodeStream(in);
|
|
783
|
-
} catch (Exception e) {
|
|
784
|
-
Log.e("Error", e.getMessage());
|
|
785
|
-
e.printStackTrace();
|
|
786
|
-
}
|
|
787
|
-
return mIcon11;
|
|
788
|
-
}
|
|
789
|
-
|
|
790
|
-
protected void onPostExecute(Bitmap result) {
|
|
791
|
-
|
|
792
|
-
}
|
|
793
|
-
}
|
|
794
|
-
|
|
795
|
-
`)
|
|
796
|
-
)
|
|
797
|
-
}
|
|
798
|
-
}
|
|
799
|
-
|
|
800
|
-
|
|
801
|
-
; can you load view this way...
|
|
802
|
-
pushView _:void ( pageName:string into:string ) {
|
|
803
|
-
templates {
|
|
804
|
-
ranger ("(pushView " (e 1) " " (e 2) ")")
|
|
805
|
-
java7 (
|
|
806
|
-
"Fragment fragment = new " (str 1) "();" nl
|
|
807
|
-
"FragmentManager fragmentManager = getActivity().getSupportFragmentManager();" nl
|
|
808
|
-
"FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();" nl
|
|
809
|
-
"fragmentTransaction.replace(R.id." (str 2) ", fragment);" nl
|
|
810
|
-
"fragmentTransaction.addToBackStack(null);" nl
|
|
811
|
-
"fragmentTransaction.commit();" nl
|
|
812
|
-
(imp "android.support.v4.app.FragmentManager")
|
|
813
|
-
(imp "android.support.v4.app.Fragment")
|
|
814
|
-
(imp "android.support.v4.app.FragmentTransaction")
|
|
815
|
-
)
|
|
816
|
-
es6 (
|
|
817
|
-
"() => {" nl
|
|
818
|
-
I "var replaced = view.querySelectorAll('[x-id=" (str 2) "]')[0];" nl
|
|
819
|
-
"var newChild = document.querySelectorAll('[x-id=" (str 1) "]')[0];" nl
|
|
820
|
-
"replaced.parentNode.replaceChild(newChild, replaced);" nl
|
|
821
|
-
i "}();" nl
|
|
822
|
-
)
|
|
823
|
-
}
|
|
824
|
-
}
|
|
825
|
-
|
|
826
|
-
loadFragment _:void ( pageName:string into:string ) {
|
|
827
|
-
templates {
|
|
828
|
-
ranger ("(loadFragment " (e 1) " " (e 2) ")")
|
|
829
|
-
java7 (
|
|
830
|
-
"Fragment fragment = new " (str 1) "();" nl
|
|
831
|
-
"FragmentManager fragmentManager = getActivity().getSupportFragmentManager();" nl
|
|
832
|
-
"FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();" nl
|
|
833
|
-
"fragmentTransaction.replace(R.id." (str 2) ", fragment);" nl
|
|
834
|
-
"fragmentTransaction.addToBackStack(null);" nl
|
|
835
|
-
"fragmentTransaction.commit();" nl
|
|
836
|
-
(imp "android.support.v4.app.FragmentManager")
|
|
837
|
-
(imp "android.support.v4.app.Fragment")
|
|
838
|
-
(imp "android.support.v4.app.FragmentTransaction")
|
|
839
|
-
)
|
|
840
|
-
es6 (
|
|
841
|
-
"() => {" nl
|
|
842
|
-
I "var replaced = view.querySelectorAll('[x-id=" (str 2) "]')[0];" nl
|
|
843
|
-
"var newChild = document.querySelectorAll('[x-id=" (str 1) "]')[0];" nl
|
|
844
|
-
"replaced.parentNode.replaceChild(newChild, replaced);" nl
|
|
845
|
-
i "}();" nl
|
|
846
|
-
)
|
|
847
|
-
}
|
|
848
|
-
}
|
|
849
|
-
}
|
|
850
|
-
|
|
851
|
-
Import "DOMLib.rgr"
|