summaryrefslogtreecommitdiff
path: root/objects.js
diff options
context:
space:
mode:
Diffstat (limited to 'objects.js')
-rw-r--r--objects.js24
1 files changed, 21 insertions, 3 deletions
diff --git a/objects.js b/objects.js
index c4c4eb8..2ed20f2 100644
--- a/objects.js
+++ b/objects.js
@@ -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);
}