[Etoys-notify] #6899 NORM Never A: Ellipse object doesn't recognize mouseDown in stripped project
Zarro Boogs per Child
bugtracker at laptop.org
Thu Apr 17 15:25:26 EDT 2008
#6899: Ellipse object doesn't recognize mouseDown in stripped project
-----------------------------+----------------------------------------------
Reporter: uwe4711 | Owner: etoys
Type: defect | Status: new
Priority: normal | Milestone: Never Assigned
Component: etoys-activity | Version:
Resolution: | Keywords: mouseDown, Object
Verified: 0 | Blocking:
Blockedby: |
-----------------------------+----------------------------------------------
Comment(by ScottWallace):
The object named "TextEllipse7" in this project somehow became a
"SketchMorph" bearing a *picture* of your original object. Sketches are
polychrome pictures for which the concept of having a single "color" is
meaningless, which is why you don't see "color" displayed in the Viewer of
a Sketch, and setting the "color" of a Sketch does nothing, which is why
you see no effect from the script, even if you click the yellow "!" in its
Scriptor.
To restore the behavior you had before fiddling, open a new Viewer on your
object, and you'll notice two little green arrows at the far top-left of
the Viewer. These little arrows allow you to cycle among the "costumes"
that your object has "worn", and you should find that a click on one of
those arrows will restore the original "Ellipse a Text inside it" costume
to your object, so that you can again set its color, and your script will
again work the way it used to.
Normally you're not even invited to see or change the "color" of a Sketch
in its Viewer, but in this case obviously the script setting the object's
color dates from before the object adopted a Sketch costume.
It's (obviously!) possible, though not easy, to stumble into the kind of
situation illustrated by this project. One way is if, in a Viewer or a
Scriptor, you manage to run a command of the form "TextEllipse7 look like
TextEllipse7", your object will adopt a "Sketch" costume which looks like
the original, but which, being a Sketch, has different properties -- e.g.
you can repaint it, but trying to "set its color" will have no effect.
Obviously this is not very satisfactory; "look like" is a legacy feature
with a long and tortured history. As long as it could only ever be
applied only to objects wearing Sketches, the issue under discussion here
cannot arise, but because of the generality of etoys, you can ultimately
always construct a script that sends any known tile command to any object,
and many years ago the implementation of "look like" for the anomalous
case where the receiver is not already a Sketch, having been batted around
in different directions to suit a series of expectations in particular
examples, settled into the current, unsatisfactory state of affairs. It's
still one of those nagging things that could benefit from further
attention, but in practice the situation has arisen only a handful of
times over the years so it has never been able to command the necessary
mindshare.
--
Ticket URL: <http://dev.laptop.org/ticket/6899#comment:2>
One Laptop Per Child <http://laptop.org/>
OLPC bug tracking system
More information about the Etoys-notify
mailing list