Tools Questions

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

Tools Questions

Gary Peterson
Hi Group,
 
Just a few tools questions that have popped up; have not found answers in screen casts, etc.
 
Thought you may know if these tools exist in the system/add-ons:
 
- Is there a way to search for implementors limiting the search to a hierarchy (ie '*index*' in Collection hierarchy)
 
- Is there a ‘selector chooser’ ie while editing source, click hot-key and get list of local methods to choose from (for paste); allow expansion to super’s selectors, etc
 
- Is there a ‘variable chooser’ ie while editing source, click hot-key and get list of temporary variables and method arguments to choose from (for paste)
 
- (on special syntax) -- from experiment I see basically how the code below works / and can be modified) but curious a bit on the meaning of the syntax:
 
 <itemInMenu: #(#browserMenu) position: 45.02>
 
- Is there a 'working bucket'? An initially empty list view (two pane items/selection-source), that you can just toss methods and classes into as you work?
 
- Is there a ‘basic’ browser (simplest ‘tree’ browser, classes & methods only). (old CHB three-pane classes left, methods right, source bottom). Just for quick browsing ie say navigate Collection hierarchy.
 
Thank You,
 
Gary
 

 

_______________________________________________
vwnc mailing list
[hidden email]
http://lists.cs.uiuc.edu/mailman/listinfo/vwnc
Reply | Threaded
Open this post in threaded view
|

Re: EXTERNAL: Tools Questions

Stevenson, Dave (contr)

 

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Gary Peterson
Sent: Wednesday, November 10, 2010 8:25 AM
To: [hidden email]
Subject: EXTERNAL:[vwnc] Tools Questions

 

Hi Group,

 

Just a few tools questions that have popped up; have not found answers in screen casts, etc.

 

Thought you may know if these tools exist in the system/add-ons:

 

- Is there a way to search for implementors limiting the search to a hierarchy (ie '*index*' in Collection hierarchy)

 

If you already have an implementor selected, simply right click in the method pane (not the source pane) and choose ‘Hierarchy Implementors’. If you don’t already have an implementor selected, try aMethodCollector (see below, see attachment for more detail):

 

mc := MethodCollector new.

mc browseSelect:

                (mc searchBehaviorHierarchy: Collection)

                & (mc implementorsOf: #at:)

 

- Is there a ‘selector chooser’ ie while editing source, click hot-key and get list of local methods to choose from (for paste); allow expansion to super’s selectors, etc

 

- Is there a ‘variable chooser’ ie while editing source, click hot-key and get list of temporary variables and method arguments to choose from (for paste)

 

- (on special syntax) -- from experiment I see basically how the code below works / and can be modified) but curious a bit on the meaning of the syntax:

 

 <itemInMenu: #(#browserMenu) position: 45.02>

 

These are pragmas, which are annotations to the compiled method, which are accessed programmatically through AnnotatedMethod>>attributeMessages. See ‘Pragmas’ in appdevguide.pdf.

 

- Is there a 'working bucket'? An initially empty list view (two pane items/selection-source), that you can just toss methods and classes into as you work?

 

 

- Is there a ‘basic’ browser (simplest ‘tree’ browser, classes & methods only). (old CHB three-pane classes left, methods right, source bottom). Just for quick browsing ie say navigate Collection hierarchy.

 

First, create a new package for your new code. You can then right-click on the package and choose ‘spawn’ to open a window on only the classes and method extensions in that package. You can also spawn a browser on a class, showing only its protocols and methods, or on a protocol, showing only the methods. Alt+Z will zoom in/out on the source of the current selection. I often open a browser on the package or class on which I’m working, with other browsers open on other parts of the system for reference.

 

I often implement a new method as ‘self halt’, allowing me to code in the debugger with live objects to reference and inspect as I go along, rather than just static code.

 

Thank You,

 

Gary

 


 


_______________________________________________
vwnc mailing list
[hidden email]
http://lists.cs.uiuc.edu/mailman/listinfo/vwnc

MCexample.ws (1K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: EXTERNAL: Tools Questions

Gary Peterson
That helps Dave -- yes MethodCollector/*Helper, etc I think will do nicely.
 
Stumped on one other. Just trying to 'activate' a given window. I've tried methods that seemed applicable but have not found the correct one. For example, 'becomeActive' does not seem to do it.

  window := VisualLauncher allInstances first.
  main := window mainWindow.
  main becomeActive.        "nothing"
 
Thank you,
 
Gary
 
 
 
----- Original Message -----
Sent: Wednesday, November 10, 2010 12:28 PM
Subject: RE: EXTERNAL:[vwnc] Tools Questions

 

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Gary Peterson
Sent: Wednesday, November 10, 2010 8:25 AM
To: [hidden email]
Subject: EXTERNAL:[vwnc] Tools Questions

 

Hi Group,

 

Just a few tools questions that have popped up; have not found answers in screen casts, etc.

 

Thought you may know if these tools exist in the system/add-ons:

 

- Is there a way to search for implementors limiting the search to a hierarchy (ie '*index*' in Collection hierarchy)

 

If you already have an implementor selected, simply right click in the method pane (not the source pane) and choose ‘Hierarchy Implementors’. If you don’t already have an implementor selected, try aMethodCollector (see below, see attachment for more detail):

 

mc := MethodCollector new.

mc browseSelect:

                (mc searchBehaviorHierarchy: Collection)

                & (mc implementorsOf: #at:)

 

- Is there a ‘selector chooser’ ie while editing source, click hot-key and get list of local methods to choose from (for paste); allow expansion to super’s selectors, etc

 

- Is there a ‘variable chooser’ ie while editing source, click hot-key and get list of temporary variables and method arguments to choose from (for paste)

 

- (on special syntax) -- from experiment I see basically how the code below works / and can be modified) but curious a bit on the meaning of the syntax:

 

 <itemInMenu: #(#browserMenu) position: 45.02>

 

These are pragmas, which are annotations to the compiled method, which are accessed programmatically through AnnotatedMethod>>attributeMessages. See ‘Pragmas’ in appdevguide.pdf.

 

- Is there a 'working bucket'? An initially empty list view (two pane items/selection-source), that you can just toss methods and classes into as you work?

 

 

- Is there a ‘basic’ browser (simplest ‘tree’ browser, classes & methods only). (old CHB three-pane classes left, methods right, source bottom). Just for quick browsing ie say navigate Collection hierarchy.

 

First, create a new package for your new code. You can then right-click on the package and choose ‘spawn’ to open a window on only the classes and method extensions in that package. You can also spawn a browser on a class, showing only its protocols and methods, or on a protocol, showing only the methods. Alt+Z will zoom in/out on the source of the current selection. I often open a browser on the package or class on which I’m working, with other browsers open on other parts of the system for reference.

 

I often implement a new method as ‘self halt’, allowing me to code in the debugger with live objects to reference and inspect as I go along, rather than just static code.

 

Thank You,

 

Gary

 


 


_______________________________________________
vwnc mailing list
[hidden email]
http://lists.cs.uiuc.edu/mailman/listinfo/vwnc
Reply | Threaded
Open this post in threaded view
|

Re: EXTERNAL:Re: EXTERNAL: Tools Questions

Stevenson, Dave (contr)

main raise

 

From: Gary Peterson [mailto:[hidden email]]
Sent: Wednesday, November 10, 2010 11:32 AM
To: Stevenson, Dave (Contr); [hidden email]
Subject: EXTERNAL:Re: EXTERNAL:[vwnc] Tools Questions

 

That helps Dave -- yes MethodCollector/*Helper, etc I think will do nicely.

 

Stumped on one other. Just trying to 'activate' a given window. I've tried methods that seemed applicable but have not found the correct one. For example, 'becomeActive' does not seem to do it.


  window := VisualLauncher allInstances first.
  main := window mainWindow.
  main becomeActive.        "nothing"

 

Thank you,

 

Gary

 

 

 

----- Original Message -----

Sent: Wednesday, November 10, 2010 12:28 PM

Subject: RE: EXTERNAL:[vwnc] Tools Questions

 

 

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Gary Peterson
Sent: Wednesday, November 10, 2010 8:25 AM
To: [hidden email]
Subject: EXTERNAL:[vwnc] Tools Questions

 

Hi Group,

 

Just a few tools questions that have popped up; have not found answers in screen casts, etc.

 

Thought you may know if these tools exist in the system/add-ons:

 

- Is there a way to search for implementors limiting the search to a hierarchy (ie '*index*' in Collection hierarchy)

 

If you already have an implementor selected, simply right click in the method pane (not the source pane) and choose ‘Hierarchy Implementors’. If you don’t already have an implementor selected, try aMethodCollector (see below, see attachment for more detail):

 

mc := MethodCollector new.

mc browseSelect:

                (mc searchBehaviorHierarchy: Collection)

                & (mc implementorsOf: #at:)

 

- Is there a ‘selector chooser’ ie while editing source, click hot-key and get list of local methods to choose from (for paste); allow expansion to super’s selectors, etc

 

- Is there a ‘variable chooser’ ie while editing source, click hot-key and get list of temporary variables and method arguments to choose from (for paste)

 

- (on special syntax) -- from experiment I see basically how the code below works / and can be modified) but curious a bit on the meaning of the syntax:

 

 <itemInMenu: #(#browserMenu) position: 45.02>

 

These are pragmas, which are annotations to the compiled method, which are accessed programmatically through AnnotatedMethod>>attributeMessages. See ‘Pragmas’ in appdevguide.pdf.

 

- Is there a 'working bucket'? An initially empty list view (two pane items/selection-source), that you can just toss methods and classes into as you work?

 

 

- Is there a ‘basic’ browser (simplest ‘tree’ browser, classes & methods only). (old CHB three-pane classes left, methods right, source bottom). Just for quick browsing ie say navigate Collection hierarchy.

 

First, create a new package for your new code. You can then right-click on the package and choose ‘spawn’ to open a window on only the classes and method extensions in that package. You can also spawn a browser on a class, showing only its protocols and methods, or on a protocol, showing only the methods. Alt+Z will zoom in/out on the source of the current selection. I often open a browser on the package or class on which I’m working, with other browsers open on other parts of the system for reference.

 

I often implement a new method as ‘self halt’, allowing me to code in the debugger with live objects to reference and inspect as I go along, rather than just static code.

 

Thank You,

 

Gary

 


 


_______________________________________________
vwnc mailing list
[hidden email]
http://lists.cs.uiuc.edu/mailman/listinfo/vwnc
Reply | Threaded
Open this post in threaded view
|

Re: EXTERNAL:Re: EXTERNAL: Tools Questions

Gary Peterson
Thank you very much again Dave!
 
It seems 'expand' is also helpful to handle the icon case.
 
    main expand; raise
 
gary
 
 
 
----- Original Message -----
Sent: Wednesday, November 10, 2010 1:34 PM
Subject: RE: EXTERNAL:Re: EXTERNAL:[vwnc] Tools Questions

main raise

 

From: Gary Peterson [mailto:[hidden email]]
Sent: Wednesday, November 10, 2010 11:32 AM
To: Stevenson, Dave (Contr); [hidden email]
Subject: EXTERNAL:Re: EXTERNAL:[vwnc] Tools Questions

 

That helps Dave -- yes MethodCollector/*Helper, etc I think will do nicely.

 

Stumped on one other. Just trying to 'activate' a given window. I've tried methods that seemed applicable but have not found the correct one. For example, 'becomeActive' does not seem to do it.


  window := VisualLauncher allInstances first.
  main := window mainWindow.
  main becomeActive.        "nothing"

 

Thank you,

 

Gary

 

 

 

----- Original Message -----

Sent: Wednesday, November 10, 2010 12:28 PM

Subject: RE: EXTERNAL:[vwnc] Tools Questions

 

 

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Gary Peterson
Sent: Wednesday, November 10, 2010 8:25 AM
To: [hidden email]
Subject: EXTERNAL:[vwnc] Tools Questions

 

Hi Group,

 

Just a few tools questions that have popped up; have not found answers in screen casts, etc.

 

Thought you may know if these tools exist in the system/add-ons:

 

- Is there a way to search for implementors limiting the search to a hierarchy (ie '*index*' in Collection hierarchy)

 

If you already have an implementor selected, simply right click in the method pane (not the source pane) and choose ‘Hierarchy Implementors’. If you don’t already have an implementor selected, try aMethodCollector (see below, see attachment for more detail):

 

mc := MethodCollector new.

mc browseSelect:

                (mc searchBehaviorHierarchy: Collection)

                & (mc implementorsOf: #at:)

 

- Is there a ‘selector chooser’ ie while editing source, click hot-key and get list of local methods to choose from (for paste); allow expansion to super’s selectors, etc

 

- Is there a ‘variable chooser’ ie while editing source, click hot-key and get list of temporary variables and method arguments to choose from (for paste)

 

- (on special syntax) -- from experiment I see basically how the code below works / and can be modified) but curious a bit on the meaning of the syntax:

 

 <itemInMenu: #(#browserMenu) position: 45.02>

 

These are pragmas, which are annotations to the compiled method, which are accessed programmatically through AnnotatedMethod>>attributeMessages. See ‘Pragmas’ in appdevguide.pdf.

 

- Is there a 'working bucket'? An initially empty list view (two pane items/selection-source), that you can just toss methods and classes into as you work?

 

 

- Is there a ‘basic’ browser (simplest ‘tree’ browser, classes & methods only). (old CHB three-pane classes left, methods right, source bottom). Just for quick browsing ie say navigate Collection hierarchy.

 

First, create a new package for your new code. You can then right-click on the package and choose ‘spawn’ to open a window on only the classes and method extensions in that package. You can also spawn a browser on a class, showing only its protocols and methods, or on a protocol, showing only the methods. Alt+Z will zoom in/out on the source of the current selection. I often open a browser on the package or class on which I’m working, with other browsers open on other parts of the system for reference.

 

I often implement a new method as ‘self halt’, allowing me to code in the debugger with live objects to reference and inspect as I go along, rather than just static code.

 

Thank You,

 

Gary

 


 


_______________________________________________
vwnc mailing list
[hidden email]
http://lists.cs.uiuc.edu/mailman/listinfo/vwnc