Artifact
a5fa4b7c09f65a5aa804f43ae568e3a550db9cd0:
0000: ef bb bf 24 65 6e 67 69 6e 65 20 4a 53 63 72 69 ...$engine JScri
0010: 70 74 0d 0a 24 75 6e 61 6d 65 20 53 65 6c 65 63 pt..$uname Selec
0020: 74 56 61 6c 75 65 44 69 61 6c 6f 67 5f 65 78 61 tValueDialog_exa
0030: 6d 70 6c 65 0d 0a 24 64 6e 61 6d 65 20 d0 9f d1 mple..$dname ...
0040: 80 d0 b8 d0 bc d0 b5 d1 80 20 d1 80 d0 b0 d0 b1 ......... ......
0050: d0 be d1 82 d1 8b 20 d1 81 20 d0 ba d0 bb d0 b0 ...... .. ......
0060: d1 81 d1 81 d0 be d0 bc 20 53 65 6c 65 63 74 56 ........ SelectV
0070: 61 6c 75 65 44 69 61 6c 6f 67 0d 0a 24 61 64 64 alueDialog..$add
0080: 69 6e 20 73 74 64 6c 69 62 0d 0a 0d 0a 73 74 64 in stdlib....std
0090: 6c 69 62 2e 72 65 71 75 69 72 65 28 22 53 65 6c lib.require("Sel
00a0: 65 63 74 56 61 6c 75 65 44 69 61 6c 6f 67 2e 6a ectValueDialog.j
00b0: 73 22 2c 20 53 65 6c 66 53 63 72 69 70 74 29 3b s", SelfScript);
00c0: 0d 0a 0d 0a 66 75 6e 63 74 69 6f 6e 20 6d 61 63 ....function mac
00d0: 72 6f 73 d0 a1 d0 bf d0 b8 d1 81 d0 be d0 ba d0 ros.............
00e0: 9c d0 b5 d1 82 d0 be d0 b4 d0 be d0 b2 5f 4a 53 ............._JS
00f0: 5f d0 9c d0 b0 d1 81 d1 81 d0 b8 d0 b2 28 29 20 _............()
0100: 7b 0d 0a 20 20 20 20 76 61 72 20 64 6c 67 20 3d {.. var dlg =
0110: 20 6e 65 77 20 53 65 6c 65 63 74 56 61 6c 75 65 new SelectValue
0120: 44 69 61 6c 6f 67 28 22 d0 92 d1 8b d0 b1 d0 b5 Dialog("........
0130: d1 80 d0 b8 d1 82 d0 b5 21 22 2c 20 5b 27 d0 9f ........!", ['..
0140: d0 b5 d1 80 d0 b2 d1 8b d0 b9 27 2c 20 27 d0 92 ..........', '..
0150: d1 82 d0 be d1 80 d0 be d0 b9 27 5d 29 3b 0d 0a ..........']);..
0160: 20 20 20 20 69 66 20 28 64 6c 67 2e 73 65 6c 65 if (dlg.sele
0170: 63 74 56 61 6c 75 65 28 29 29 20 7b 0d 0a 20 20 ctValue()) {..
0180: 20 20 20 20 20 20 4d 65 73 73 61 67 65 28 64 6c Message(dl
0190: 67 2e 73 65 6c 65 63 74 65 64 56 61 6c 75 65 29 g.selectedValue)
01a0: 3b 0d 0a 20 20 20 20 7d 0d 0a 7d 0d 0a 0d 0a 66 ;.. }..}....f
01b0: 75 6e 63 74 69 6f 6e 20 6d 61 63 72 6f 73 d0 a1 unction macros..
01c0: d0 bf d0 b8 d1 81 d0 be d0 ba d0 9c d0 b5 d1 82 ................
01d0: d0 be d0 b4 d0 be d0 b2 5f 4a 53 5f d0 9e d0 b1 ........_JS_....
01e0: d1 8a d0 b5 d0 ba d1 82 28 29 20 7b 0d 0a 20 20 ........() {..
01f0: 20 20 76 61 72 20 76 61 6c 75 65 73 20 3d 20 7b var values = {
0200: 0d 0a 20 20 20 20 20 20 20 20 27 d0 9f d0 b5 d1 .. '.....
0210: 80 d0 b2 d1 8b d0 b9 20 d0 ba d0 bb d1 8e d1 87 ....... ........
0220: 27 20 3a 20 66 75 6e 63 74 69 6f 6e 20 28 29 20 ' : function ()
0230: 7b 20 72 65 74 75 72 6e 20 27 d0 b0 d0 bd d0 be { return '......
0240: d0 bd d0 b8 d0 bc d0 bd d0 b0 d1 8f 20 d1 84 d1 ............ ...
0250: 83 d0 bd d0 ba d1 86 d0 b8 d1 8f 27 3b 7d 2c 0d ...........';},.
0260: 0a 20 20 20 20 20 20 20 20 6d 79 50 72 6f 70 20 . myProp
0270: 3a 20 22 d0 b2 d1 82 d0 be d1 80 d0 be d0 b9 20 : "............
0280: d0 ba d0 bb d1 8e d1 87 22 0d 0a 20 20 20 20 7d ........".. }
0290: 3b 0d 0a 20 20 20 20 76 61 72 20 64 6c 67 20 3d ;.. var dlg =
02a0: 20 6e 65 77 20 53 65 6c 65 63 74 56 61 6c 75 65 new SelectValue
02b0: 44 69 61 6c 6f 67 28 22 d0 92 d1 8b d0 b1 d0 b5 Dialog("........
02c0: d1 80 d0 b8 d1 82 d0 b5 21 22 2c 20 76 61 6c 75 ........!", valu
02d0: 65 73 29 3b 0d 0a 20 20 20 20 69 66 20 28 64 6c es);.. if (dl
02e0: 67 2e 73 65 6c 65 63 74 56 61 6c 75 65 28 29 29 g.selectValue())
02f0: 20 7b 0d 0a 20 20 20 20 20 20 20 20 4d 65 73 73 {.. Mess
0300: 61 67 65 28 22 d0 a2 d0 b8 d0 bf 3a 20 22 20 2b age("......: " +
0310: 20 28 74 79 70 65 6f 66 20 64 6c 67 2e 73 65 6c (typeof dlg.sel
0320: 65 63 74 65 64 56 61 6c 75 65 29 29 3b 09 0d 0a ectedValue));...
0330: 20 20 20 20 20 20 20 20 4d 65 73 73 61 67 65 28 Message(
0340: 64 6c 67 2e 73 65 6c 65 63 74 65 64 56 61 6c 75 dlg.selectedValu
0350: 65 29 3b 0d 0a 20 20 20 20 7d 0d 0a 7d 0d 0a 0d e);.. }..}...
0360: 0a 66 75 6e 63 74 69 6f 6e 20 6d 61 63 72 6f 73 .function macros
0370: d0 a1 d0 bf d0 b8 d1 81 d0 be d0 ba d0 9c d0 b5 ................
0380: d1 82 d0 be d0 b4 d0 be d0 b2 5f 31 d0 a1 5f d0 .........._1.._.
0390: 9c d0 b0 d1 81 d1 81 d0 b8 d0 b2 28 29 20 7b 0d ...........() {.
03a0: 0a 20 20 20 20 76 61 72 20 76 61 6c 75 65 73 20 . var values
03b0: 3d 20 76 38 4e 65 77 28 27 d0 9c d0 b0 d1 81 d1 = v8New('.......
03c0: 81 d0 b8 d0 b2 27 29 3b 0d 0a 20 20 20 20 76 61 .....');.. va
03d0: 6c 75 65 73 2e 41 64 64 28 27 d0 9f d0 b5 d1 80 lues.Add('......
03e0: d0 b2 d1 8b d0 b9 20 d1 8d d0 bb d0 b5 d0 bc d0 ...... .........
03f0: b5 d0 bd d1 82 20 d0 bc d0 b0 d1 81 d1 81 d0 b8 ..... ..........
0400: d0 b2 d0 b0 20 31 d0 a1 27 29 3b 0d 0a 20 20 20 .... 1..');..
0410: 20 76 61 6c 75 65 73 2e 41 64 64 28 27 d0 92 d1 values.Add('...
0420: 82 d0 be d1 80 d0 be d0 b9 20 d1 8d d0 bb d0 b5 ......... ......
0430: d0 bc d0 b5 d0 bd d1 82 20 d0 bc d0 b0 d1 81 d1 ........ .......
0440: 81 d0 b8 d0 b2 d0 b0 20 31 d0 a1 27 29 3b 0d 0a ....... 1..');..
0450: 20 20 20 20 76 61 72 20 64 6c 67 20 3d 20 6e 65 var dlg = ne
0460: 77 20 53 65 6c 65 63 74 56 61 6c 75 65 44 69 61 w SelectValueDia
0470: 6c 6f 67 28 22 d0 92 d1 8b d0 b1 d0 b5 d1 80 d0 log("...........
0480: b8 d1 82 d0 b5 20 d0 b8 d0 b7 20 d0 bc d0 b0 d1 ..... .... .....
0490: 81 d1 81 d0 b8 d0 b2 d0 b0 20 31 d0 a1 21 22 2c ......... 1..!",
04a0: 20 76 61 6c 75 65 73 29 3b 0d 0a 20 20 20 20 69 values);.. i
04b0: 66 20 28 64 6c 67 2e 73 65 6c 65 63 74 56 61 6c f (dlg.selectVal
04c0: 75 65 28 29 29 20 7b 0d 0a 20 20 20 20 20 20 20 ue()) {..
04d0: 20 4d 65 73 73 61 67 65 28 64 6c 67 2e 73 65 6c Message(dlg.sel
04e0: 65 63 74 65 64 56 61 6c 75 65 29 3b 0d 0a 20 20 ectedValue);..
04f0: 20 20 7d 0d 0a 7d 0d 0a 0d 0a 66 75 6e 63 74 69 }..}....functi
0500: 6f 6e 20 6d 61 63 72 6f 73 d0 a1 d0 bf d0 b8 d1 on macros.......
0510: 81 d0 be d0 ba d0 9c d0 b5 d1 82 d0 be d0 b4 d0 ................
0520: be d0 b2 5f 31 d0 a1 5f d0 a1 d0 bf d0 b8 d1 81 ..._1.._........
0530: d0 be d0 ba d0 97 d0 bd d0 b0 d1 87 d0 b5 d0 bd ................
0540: d0 b8 d0 b9 28 29 20 7b 0d 0a 20 20 20 20 76 61 ....() {.. va
0550: 72 20 76 61 6c 75 65 73 20 3d 20 76 38 4e 65 77 r values = v8New
0560: 28 27 d0 a1 d0 bf d0 b8 d1 81 d0 be d0 ba d0 97 ('..............
0570: d0 bd d0 b0 d1 87 d0 b5 d0 bd d0 b8 d0 b9 27 29 ..............')
0580: 3b 0d 0a 20 20 20 20 76 61 6c 75 65 73 2e 41 64 ;.. values.Ad
0590: 64 28 31 2c 20 27 d0 9f d0 b5 d1 80 d0 b2 d0 be d(1, '..........
05a0: d0 b5 20 d0 b7 d0 bd d0 b0 d1 87 d0 b5 d0 bd d0 .. .............
05b0: b8 d0 b5 20 d1 81 d0 bf d0 b8 d1 81 d0 ba d0 b0 ... ............
05c0: 20 d0 b7 d0 bd d0 b0 d1 87 d0 b5 d0 bd d0 b8 d0 ...............
05d0: b9 27 29 3b 0d 0a 20 20 20 20 76 61 6c 75 65 73 .');.. values
05e0: 2e 41 64 64 28 32 2c 20 27 d0 92 d1 82 d0 be d1 .Add(2, '.......
05f0: 80 d0 be d0 b5 20 d0 b7 d0 bd d0 b0 d1 87 d0 b5 ..... ..........
0600: d0 bd d0 b8 d0 b5 20 d1 81 d0 bf d0 b8 d1 81 d0 ...... .........
0610: ba d0 b0 20 d0 b7 d0 bd d0 b0 d1 87 d0 b5 d0 bd ... ............
0620: d0 b8 d0 b9 27 29 3b 0d 0a 20 20 20 20 76 61 72 ....');.. var
0630: 20 64 6c 67 20 3d 20 6e 65 77 20 53 65 6c 65 63 dlg = new Selec
0640: 74 56 61 6c 75 65 44 69 61 6c 6f 67 28 22 d0 92 tValueDialog("..
0650: d1 8b d0 b1 d0 b5 d1 80 d0 b8 d1 82 d0 b5 21 22 ..............!"
0660: 2c 20 76 61 6c 75 65 73 29 3b 0d 0a 20 20 20 20 , values);..
0670: 69 66 20 28 64 6c 67 2e 73 65 6c 65 63 74 56 61 if (dlg.selectVa
0680: 6c 75 65 28 29 29 20 7b 0d 0a 20 20 20 20 20 20 lue()) {..
0690: 20 20 4d 65 73 73 61 67 65 28 64 6c 67 2e 73 65 Message(dlg.se
06a0: 6c 65 63 74 65 64 56 61 6c 75 65 29 3b 0d 0a 20 lectedValue);..
06b0: 20 20 20 7d 0d 0a 7d 0d 0a 0d 0a 66 75 6e 63 74 }..}....funct
06c0: 69 6f 6e 20 6d 61 63 72 6f 73 d0 a1 d0 bf d0 b8 ion macros......
06d0: d1 81 d0 be d0 ba d0 9c d0 b5 d1 82 d0 be d0 b4 ................
06e0: d0 be d0 b2 5f d0 9d d0 b5 d0 9a d0 be d0 bb d0 ...._...........
06f0: bb d0 b5 d0 ba d1 86 d0 b8 d1 8f 28 29 20 7b 0d ...........() {.
0700: 0a 20 20 20 20 2f 2f 20 d0 a1 d0 bf d0 b8 d1 81 . // ........
0710: d0 be d0 ba 20 2d 20 6a 73 2d d0 bc d0 b0 d1 81 .... - js-......
0720: d1 81 d0 b8 d0 b2 0d 0a 20 20 20 20 76 61 72 20 ........ var
0730: 64 6c 67 20 3d 20 6e 65 77 20 53 65 6c 65 63 74 dlg = new Select
0740: 56 61 6c 75 65 44 69 61 6c 6f 67 28 22 d0 92 d1 ValueDialog("...
0750: 8b d0 b1 d0 b5 d1 80 d0 b8 d1 82 d0 b5 21 22 2c .............!",
0760: 20 22 d0 9e d0 b4 d0 b8 d0 bd d0 be d1 87 d0 bd "..............
0770: d0 be d0 b5 20 d0 b7 d0 bd d0 b0 d1 87 d0 b5 d0 .... ...........
0780: bd d0 b8 d0 b5 22 29 3b 0d 0a 20 20 20 20 69 66 .....");.. if
0790: 20 28 64 6c 67 2e 73 65 6c 65 63 74 56 61 6c 75 (dlg.selectValu
07a0: 65 28 29 29 20 7b 0d 0a 20 20 20 20 20 20 20 20 e()) {..
07b0: 4d 65 73 73 61 67 65 28 64 6c 67 2e 73 65 6c 65 Message(dlg.sele
07c0: 63 74 65 64 56 61 6c 75 65 29 3b 0d 0a 20 20 20 ctedValue);..
07d0: 20 7d 0d 0a 7d 0d 0a }..}..