Mantis Bugtracker
  

Viewing Issue Simple Details Jump to Notes ] View Advanced ] Issue History ] Print ]
ID Category Severity Reproducibility Date Submitted Last Update
0000831 [Croquet] Jasmine tweak always 01-14-05 11:41 01-15-05 19:31
Reporter tak View Status public  
Assigned To
Priority normal Resolution open  
Status feedback  
Summary 0000831: We can not run two teapot in an image.
Description This change set is first attemt to run Teapot in one Squeak image.
It is not enough to use, but sometimes works well.
The reason why I need is to debug a behavior on network easily.
I don't want to start up two images often!
Additional Information
Attached Files  TwoTeapotInOneImage.cs.gz [^] (3,057 bytes) 01-14-05 11:41

- Relationships

- Notes
(0001086 - 745 - 789 - 789 - 789 - 789 - 789)
andreas
01-15-05 06:01

The changes look rather unmotivated and partly questionable to me. I don't see what any of this would have to do with running multiple Teapots side-by-side. Changing TeaMessage>>error: to silently do nothing looks outright dangerous; setting theTeapotMorph to self in TeapotMorph>>delete and drawOn: looks very odd.

This all has the feel of something being debugged into existence without fully understanding what the problems involved are (if it works I'd say it's pretty much by chance). I recommend against including any of it until this has been resolved and we have an understanding (e.g., comments in the appropriate places) why any of the above would be needed (and by "why" I mean something other than "it doesn't work without it" ;-)
 
(0001088 - 1148 - 1220 - 1390 - 1390 - 1390 - 1390)
tak
01-15-05 07:12

As you said, this change set includes questionable codes. Especially, TeaMessage>>error: is dirty. I had to post the code because I was glad that the code worked well by accident;)

The reason of why two Teapots don't work in a image is a class variable of TheTeapotMorph. This variable supposes Teapot is a single object at a time. At first, I though how I can remove TheTeapotMorph, and CroquetGlobals >> theTeapotMorph points correct Teapot object connected with the sender. But it was difficult as a lot of object couldn't point Teapot without the global variable.

So I tried to store current teapot into TheTeapotMorph each step at TeapotMorph >> drawOn: as a dirty hack. I referred to ActiveHand at WorldState >> doOneCycleNowFor:. I know this approach was not good, but anyway sometimes it worked well, and I was able to see two teapots and four avatars on an image http://d.hatena.ne.jp/images/diary/p/propella/2005-01-14.png. [^]

Anyway, I need such multiple instances on an image because writing test codes. I don't think clicking and dragging with mouse at two images is good way to debug. So I am going to refine the code.

Thanks
 
(0001089 - 171 - 171 - 171 - 171 - 171 - 171)
andreas
01-15-05 07:30

I see. Let's delay this a little until I have finished my work on islands (hopefully by next week). Then, having multiple teapots should be trivial (cross your fingers...)
 
(0001090 - 225 - 245 - 245 - 245 - 245 - 245)
dpreed
01-15-05 19:31

Using CroquetGlobals is the "right" way to fix this - a Class Variable should never have been used for this purpose. Shouldn't be that much work. I have no clue what "islands" are in Jasmine or why they would be relevant.
 

- Issue History
Date Modified Username Field Change
01-14-05 11:41 tak New Issue
01-14-05 11:41 tak File Added: TwoTeapotInOneImage.cs.gz
01-15-05 06:01 andreas Note Added: 0001086
01-15-05 06:01 andreas Status new => feedback
01-15-05 07:12 tak Note Added: 0001088
01-15-05 07:30 andreas Note Added: 0001089
01-15-05 19:31 dpreed Note Added: 0001090


Mantis 1.0.8[^]
Copyright © 2000 - 2007 Mantis Group
48 total queries executed.
35 unique queries executed.
Powered by Mantis Bugtracker