#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 Bugs mailing list