Big Tools question - Why no way to "scope" tools to less than Global?

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

Re: Big Tools question - Why no way to "scope" tools to less than Global?

Zulq Alam-2
Ok, I've uploaded OB-PackageScopedMenuItems-za.1.mcz which includes the
fix for #classesAndMetaClasses.

Thanks,
Zulq.

Lukas Renggli wrote:

>> I've uploaded OB-Standard-za.311.mcz.
>>
>> I'd like to do add some unit tests but am not sure what packages and
>> versions I need to load?
>
> That would be a good candidate for a separate package. I am pretty
> sure that porters to other Smalltalk dialects (GemStone) are not
> really happy about the dependency to the Squeak Package manager.
>
> Also the code is bugged, it only considers the instance-side, use
> #classesAndMetaClasses instead of just #classes.
>
> Lukas
>


Reply | Threaded
Open this post in threaded view
|

Re: Big Tools question - Why no way to "scope" tools to less than Global?

Damien Cassou-3
Hi Zulq,

On Jan 9, 2008 1:53 PM, Zulq Alam <[hidden email]> wrote:
> Ok, I've uploaded OB-PackageScopedMenuItems-za.1.mcz which includes the
> fix for #classesAndMetaClasses.

after having used your package for some time, fixed the bugs, and if
others tell me it's useful, I can add it to squeak-dev.

--
Damien Cassou

Reply | Threaded
Open this post in threaded view
|

Re: Big Tools question - Why no way to "scope" tools to less than Global?

Jason Johnson-5
In reply to this post by Sophie424
On Jan 3, 2008 7:05 PM, itsme213 <[hidden email]> wrote:

> Application development in squeak Vs. Squeak development.
>
> In using all of the Squeak tools (find implementors, senders, refactoring
> browser, ...) I find that they all operate on the global squeak image
> collection of classes, methods, etc.
>
> As an application developer (as opposed to someone working on the Squeak IDE
> itself) my methods are one of:
>   1. intended to connect into the large Squeak world
>   2. produced and consumed entirely within my application
> where "My Application" is typically some class categories, or perhaps a Mcz
> package.
>
> The big problem is with #2 (to a lesser extent #1 as well): I need the tools
> to operate on a smaller defined scope of "My Application" and cannot find
> any (simple) way to do this. Examples:
>
> - I want to see all *my* implementors of #printOn: but need to browse
> through the list of all within Squeak. Needless overhead.
>
> - I want to rename *my* method #removeChild: but if #removeChild is used
> *anywhere* else in the image I cannot do it without affecting all the
> implementors. Period. I come to a dead stop with that refactoring.
>
> I know all things are dynamic in Squeak and you don't know who will call
> which implementation. I just want a way for me to say: "Please scope all
> tools searches etc. to *My Application*. Trust me. I really do want to
> ignore all others".
>
> One easy way to define scope: just limit scope to what the current browser
> is working on (which raises a separate problem, as more narrowly focused
> browsers seem to get second-class attention compared to the global System
> Browser).
>
> Are these observation accurate? Reasonable?
>
> Why is this? It seems this aspect of squeak tools are oriented more to those
> who develop squeak itself, rather than those who develop applications.
>
> Thanks - Sophie

Seems reasonable to me.  I think the problem is that Squeak currently
lacks the idea of a "project" found in e.g. Dolphin.  Having such a
concept could open other doors as well (e.g. easier deployment of
.exes, etc.)

Reply | Threaded
Open this post in threaded view
|

Re: Big Tools question - Why no way to "scope" tools to less than Global?

Chris Muller-3
In reply to this post by Sophie424
> - I want to see all *my* implementors of #printOn: but need to browse
> through the list of all within Squeak. Needless overhead.

Hi Sophie, this has been available in the standard image for years,
but it is not in a very convenient place.

In your methods list, Shift + Right-click on the methods list.  Then
select "Filter message list...".  Then, on the sub-menu, "messages
authored by me".

If you commit the keyboard sequence to muscle-memory, e.g.,

    Shift + Right-click + "f i l" + Enter + "b" + Enter

you can have the list filtered in about 1 to 2 seconds.

As for filtering by package, Diego posted a simple addition to the
Filter menu last June:

    http://lists.squeakfoundation.org/pipermail/squeak-dev/2007-June/117751.html

 - Chris

On Jan 3, 2008 1:05 PM, itsme213 <[hidden email]> wrote:

> Application development in squeak Vs. Squeak development.
>
> In using all of the Squeak tools (find implementors, senders, refactoring
> browser, ...) I find that they all operate on the global squeak image
> collection of classes, methods, etc.
>
> As an application developer (as opposed to someone working on the Squeak IDE
> itself) my methods are one of:
>   1. intended to connect into the large Squeak world
>   2. produced and consumed entirely within my application
> where "My Application" is typically some class categories, or perhaps a Mcz
> package.
>
> The big problem is with #2 (to a lesser extent #1 as well): I need the tools
> to operate on a smaller defined scope of "My Application" and cannot find
> any (simple) way to do this. Examples:
>
> - I want to see all *my* implementors of #printOn: but need to browse
> through the list of all within Squeak. Needless overhead.
>
> - I want to rename *my* method #removeChild: but if #removeChild is used
> *anywhere* else in the image I cannot do it without affecting all the
> implementors. Period. I come to a dead stop with that refactoring.
>
> I know all things are dynamic in Squeak and you don't know who will call
> which implementation. I just want a way for me to say: "Please scope all
> tools searches etc. to *My Application*. Trust me. I really do want to
> ignore all others".
>
> One easy way to define scope: just limit scope to what the current browser
> is working on (which raises a separate problem, as more narrowly focused
> browsers seem to get second-class attention compared to the global System
> Browser).
>
> Are these observation accurate? Reasonable?
>
> Why is this? It seems this aspect of squeak tools are oriented more to those
> who develop squeak itself, rather than those who develop applications.
>
> Thanks - Sophie
>
>
>
>
>

12