Customizing the IDE

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

Customizing the IDE

Daniel Klein-3
Hi,

First post to this list.

I'm currently reading the 'Squeak by Example' book with the goal of being able to do some Morphic stuff.

Anyway, I get the impression that everything in the image at my fingertips. So what if I want to add something to one of the context menus, or find out what message gets sent to invoke a menu entry so that I can run it directly in a workspace, or change the order of the objects in one of the flaps, etc.

What are the steps to go about finding out where this stuff is in the image?

Daniel Klein

_______________________________________________
Beginners mailing list
[hidden email]
http://lists.squeakfoundation.org/mailman/listinfo/beginners
Reply | Threaded
Open this post in threaded view
|

Re: Customizing the IDE

Rob Rothwell
Hi Daniel,

I am curious about the experienced answer as well, but for starters check out the class "TheWorldMenu" and poke around in it.  It's how I figured out "ScreenController toggleFullScreen."

Rob

On Sat, Jan 31, 2009 at 8:40 AM, Daniel Klein <[hidden email]> wrote:
Hi,

First post to this list.

I'm currently reading the 'Squeak by Example' book with the goal of being able to do some Morphic stuff.

Anyway, I get the impression that everything in the image at my fingertips. So what if I want to add something to one of the context menus, or find out what message gets sent to invoke a menu entry so that I can run it directly in a workspace, or change the order of the objects in one of the flaps, etc.

What are the steps to go about finding out where this stuff is in the image?

Daniel Klein

_______________________________________________
Beginners mailing list
[hidden email]
http://lists.squeakfoundation.org/mailman/listinfo/beginners



_______________________________________________
Beginners mailing list
[hidden email]
http://lists.squeakfoundation.org/mailman/listinfo/beginners
Reply | Threaded
Open this post in threaded view
|

Re: Customizing the IDE

David Mitchell-10
In reply to this post by Daniel Klein-3
I posted a reply but got bounced due to too many attachments. So I made a page on my learning programming (Squeak, Pharo) blog:

http://www.withaguide.com/2009/01/daniel-klein-posted-to-squeak-beginners.html

Here is the text without pictures:

One of the neat things about Morphic is that you can tear it apart while it is running. This can give you some clues as to how a GUI was built. Note that the image is built by direct manipulation as well as by code. If you move a window and then save the image, the window will be where you left it. But, you won't be able to find the code that moved the window to that location because there isn't any.

But, most GUIs in Squeak are built with Smalltalk code, not with direct manipulation.

One of my favorite things to show a new Squeaker is that they can Alt+Shift click on the World menu to bring up a halo on a menu item (Alt+Clicking will let you drill into a GUI, Alt goes backward which usually gets to the menu or icon directly and bypasses all of the alignment morphs.)

I then click on the debug halo and look at an explorer.

This tells me that the Menu Item calls #doMenuItem:with: and passes two arguments. TheWorldMenu and another selector helpDo.

I can then start browsing implementors and senders. I think helpDo is the more interesting implementation and leads me quickly to helpMenu.

doMenuItem:with: is the more interesting sender. It takes me to fillIn:from: and then senders there takes me to I think what you are looking for.


On Sat, Jan 31, 2009 at 7:40 AM, Daniel Klein <[hidden email]> wrote:
Hi,

First post to this list.

I'm currently reading the 'Squeak by Example' book with the goal of being able to do some Morphic stuff.

Anyway, I get the impression that everything in the image at my fingertips. So what if I want to add something to one of the context menus, or find out what message gets sent to invoke a menu entry so that I can run it directly in a workspace, or change the order of the objects in one of the flaps, etc.

What are the steps to go about finding out where this stuff is in the image?

Daniel Klein

_______________________________________________
Beginners mailing list
[hidden email]
http://lists.squeakfoundation.org/mailman/listinfo/beginners



_______________________________________________
Beginners mailing list
[hidden email]
http://lists.squeakfoundation.org/mailman/listinfo/beginners