diff options
Diffstat (limited to 'objects.js')
| -rw-r--r-- | objects.js | 24 |
1 files changed, 21 insertions, 3 deletions
@@ -125,7 +125,7 @@ PrototypeHatBlockMorph*/ // Global stuff //////////////////////////////////////////////////////// -modules.objects = '2014-July-29'; +modules.objects = '2014-September-17'; var SpriteMorph; var StageMorph; @@ -2708,6 +2708,23 @@ SpriteMorph.prototype.removeClone = function () { // SpriteMorph primitives +// SpriteMorph hiding and showing: + +/* + override the inherited behavior to also hide/show all + nested parts. +*/ + +SpriteMorph.prototype.hide = function () { + SpriteMorph.uber.hide.call(this); + this.parts.forEach(function (part) {part.hide(); }); +}; + +SpriteMorph.prototype.show = function () { + SpriteMorph.uber.show.call(this); + this.parts.forEach(function (part) {part.show(); }); +}; + // SpriteMorph pen color SpriteMorph.prototype.setColor = function (aColor) { @@ -6718,7 +6735,8 @@ WatcherMorph.prototype.update = function () { if (this.target && this.getter) { this.updateLabel(); if (this.target instanceof VariableFrame) { - newValue = this.target.vars[this.getter]; + newValue = this.target.vars[this.getter] ? + this.target.vars[this.getter].value : undefined; } else { newValue = this.target[this.getter](); } @@ -6803,7 +6821,7 @@ WatcherMorph.prototype.fixLayout = function () { this.sliderMorph.button.pressColor.b += 100; this.sliderMorph.setHeight(fontSize); this.sliderMorph.action = function (num) { - myself.target.vars[myself.getter] = Math.round(num); + myself.target.vars[myself.getter].value = Math.round(num); }; this.add(this.sliderMorph); } |
