From fc9526273238ba6ef7f6dfef5cf8cd0919d0e7f5 Mon Sep 17 00:00:00 2001 From: jmoenig Date: Thu, 17 Dec 2020 10:47:58 +0100 Subject: [PATCH] added hook for caching variadic inputs --- HISTORY.md | 3 +++ snap.html | 2 +- src/blocks.js | 9 ++++++++- 3 files changed, 12 insertions(+), 2 deletions(-) diff --git a/HISTORY.md b/HISTORY.md index c5570ee1..cf03158b 100755 --- a/HISTORY.md +++ b/HISTORY.md @@ -7,6 +7,9 @@ * **Notable Fixes:** * fixed keyboard formula entry for subtraction +### 2020-12-17 +* blocks: added hook for caching variadic inputs + ### 2020-12-16 * threads, objects: added dev debugging hook for counting yields diff --git a/snap.html b/snap.html index f1596b2d..ce08fb9a 100755 --- a/snap.html +++ b/snap.html @@ -8,7 +8,7 @@ - + diff --git a/src/blocks.js b/src/blocks.js index d28b7199..ff6c315f 100644 --- a/src/blocks.js +++ b/src/blocks.js @@ -158,7 +158,7 @@ CustomCommandBlockMorph, SymbolMorph, ToggleButtonMorph, DialMorph*/ // Global stuff //////////////////////////////////////////////////////// -modules.blocks = '2020-December-15'; +modules.blocks = '2020-December-17'; var SyntaxElementMorph; var BlockMorph; @@ -11402,6 +11402,10 @@ MultiArgMorph.prototype = new ArgMorph(); MultiArgMorph.prototype.constructor = MultiArgMorph; MultiArgMorph.uber = ArgMorph.prototype; +// MultiArgMorph preferences settings: + +// MultiArgMorph.prototype.isCachingInputs = true; // commented out for now + // MultiArgMorph instance creation: function MultiArgMorph( @@ -11520,6 +11524,7 @@ MultiArgMorph.prototype.setContents = function (anArray) { inputs[i].setContents(anArray[i]); } } + this.cachedInputs = null; }; // MultiArgMorph hiding and showing: @@ -11680,6 +11685,7 @@ MultiArgMorph.prototype.addInput = function (contents) { this.children.splice(idx, 0, newPart); newPart.fixLayout(); this.fixLayout(); + this.cachedInputs = null; return newPart; }; @@ -11697,6 +11703,7 @@ MultiArgMorph.prototype.removeInput = function () { } } this.fixLayout(); + this.cachedInputs = null; }; MultiArgMorph.prototype.is3ArgRingInHOF = function () {