|
Re: How do you find which code runs when you click on something?: msg#00117lang.smalltalk.squeak.beginners
On Tue, Jun 26, 2007 at 09:47:29PM +0100, Ian Oversby wrote: > Hi, > > I'm trying to find out which code is run when I click on something > in Squeak. I've tried selecting the menu from the middle button > and then selecting debug -> explore morph. Is this the best > way? Does it work for all morphs? How can I add new menu > items which run arbitrary code? I tried exploring the morph, and also browsing the class protocol (select the object in the inspector/explorer, and press cmd-p). I limited the inheritance chain to StringMorph, and examined the "event handlers" method category. I looked at the mouseUp handler (mouse up is the usual place where actions are invoked), and the last line looked promising: "self invokeWithEvent: t1". I highlighted that and pressed cmd-m to jump to that method. The last few lines looked like the real work. So I put a "self halt." right above the Cursor normal showWhile: [...] block and saved (cmd-s). Now, whenever I hit a menu item, I get a debugger ready to execute the menu command. Whenever you are done, hit any menu item, remove the "self halt." in the debugger window, save, and proceed. Hope that helps. -- Matthew Fulmer -- http://mtfulmer.wordpress.com/ Help improve Squeak Documentation: http://wiki.squeak.org/squeak/808
|
|
| <Prev in Thread] | Current Thread | [Next in Thread> |
|---|---|---|
| Previous by Date: | Re: How do you find which code runs when you click on something?, Edgar J. De Cleene |
|---|---|
| Next by Date: | How do you find which code runs when you click on something?, Jerome Peace |
| Previous by Thread: | Re: How do you find which code runs when you click on something?, Edgar J. De Cleene |
| Next by Thread: | Re: How do you find which code runs when you click on something?, Ian Oversby |
| Indexes: | [Date] [Thread] [Top] [All Lists] |
| News | FAQ | advertise |