diff options
| author | jmoenig <jens@moenig.org> | 2013-06-06 13:32:59 +0200 |
|---|---|---|
| committer | jmoenig <jens@moenig.org> | 2013-06-06 13:32:59 +0200 |
| commit | a2094b033e1e22cf64c0bdd1503714db5503489b (patch) | |
| tree | c9f30534f454469d60025cdffa03b63bb16903d6 | |
| parent | 12ba9b7703075d08710aef9718c86c441b775108 (diff) | |
| download | snap-a2094b033e1e22cf64c0bdd1503714db5503489b.tar.gz snap-a2094b033e1e22cf64c0bdd1503714db5503489b.zip | |
BYOB: Newly created custom reporters now have an initial default REPORT block as definition body
| -rw-r--r-- | byob.js | 14 | ||||
| -rwxr-xr-x | history.txt | 4 |
2 files changed, 16 insertions, 2 deletions
@@ -105,7 +105,7 @@ CommentMorph, localize, CSlotMorph, SpeechBubbleMorph, MorphicPreferences*/ // Global stuff //////////////////////////////////////////////////////// -modules.byob = '2013-May-16'; +modules.byob = '2013-June-06'; // Declarations @@ -1336,7 +1336,7 @@ BlockDialogMorph.prototype.setScope = function (varType) { // other ops BlockDialogMorph.prototype.getInput = function () { - var spec, def; + var spec, def, body; if (this.body instanceof InputFieldMorph) { spec = this.normalizeSpaces(this.body.getValue()); } @@ -1344,6 +1344,16 @@ BlockDialogMorph.prototype.getInput = function () { def.type = this.blockType; def.category = this.category; def.isGlobal = this.isGlobal; + if (def.type === 'reporter' || def.type === 'predicate') { + body = Process.prototype.reify.call( + null, + SpriteMorph.prototype.blockForSelector('doReport'), + new List(), + true // ignore empty slots for custom block reification + ); + body.outerContext = null; + def.body = body; + } return def; }; diff --git a/history.txt b/history.txt index 7b58457..22a6350 100755 --- a/history.txt +++ b/history.txt @@ -1727,3 +1727,7 @@ ______ 130605 ------ * Objects: fix for hiding 'getLastAnswer' and 'getTimer' primitives + +130606 +------ +* BYOB: Newly created custom reporters now have an initial default REPORT block as definition body |
