how to see methods implemented in super classes

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

how to see methods implemented in super classes

Sanjay Minni
Hi

is there a way to see in the browse all the methods implemented in the super classes as well, maybe in a different colour,

i thought it was possible but am unable to find it

regards
Sanjay
cheers,
Sanjay
Reply | Threaded
Open this post in threaded view
|

Re: how to see methods implemented in super classes

Sanjay Minni

i.e. - can I see the methods defined in the superclass in the circled panel
 

Sanjay Minni wrote
Hi

is there a way to see in the browse all the methods implemented in the super classes as well, maybe in a different colour,

i thought it was possible but am unable to find it

regards
Sanjay
cheers,
Sanjay
Reply | Threaded
Open this post in threaded view
|

Re: how to see methods implemented in super classes

Nicolai Hess


2015-05-15 8:56 GMT+02:00 Sanjay Minni <[hidden email]>:

i.e. - can I see the methods defined in the superclass in the circled panel
   <http://forum.world.st/file/n4826452/Browser.jpg>


Not in the default browser.
You can only see the little up-arrow, if the method is defined in this class and at least one super class.
And the arrow is only visible if there are no other icons.

I your example screenshot, "&" and "and:" are both implemented in False and in the superclass Boolean.
But only "&" has the up-arrow icon because "and:" already has the test runner icon (the circle).

I am not sure maybe there are other class browsers that let you see all local and inherited methods of a class.

But what you can do with the default browser:
select a method and choose "Inheritance" from the menu, this opens a MessageBrowser with the list of classes
of the hierarchy, implementing this method.


nicolai
 

Sanjay Minni wrote
> Hi
>
> is there a way to see in the browse all the methods implemented in the
> super classes as well, maybe in a different colour,
>
> i thought it was possible but am unable to find it
>
> regards
> Sanjay





-----
---
Regards, Sanjay
--
View this message in context: http://forum.world.st/how-to-see-methods-implemented-in-super-classes-tp4826435p4826452.html
Sent from the Pharo Smalltalk Users mailing list archive at Nabble.com.


Reply | Threaded
Open this post in threaded view
|

Re: how to see methods implemented in super classes

Sanjay Minni
Thanks ... while I can get the hierarchy for a locally implemented method, is there a way for knowing implemented methods in the super class ?

The browser in Dolphin from Object-Arts has an option "show inherited methods" in which it shows all methods incl those in the super class hierarchy in the regular browser and the source is visible in read only mode in normal navigation



This to me is a very useful (and vital) feature

regards
Sanjay


Nicolai Hess wrote
2015-05-15 8:56 GMT+02:00 Sanjay Minni <[hidden email]>:

>
> i.e. - can I see the methods defined in the superclass in the circled panel
>    <http://forum.world.st/file/n4826452/Browser.jpg>
>
>
Not in the default browser.
You can only see the little up-arrow, if the method is defined in this
class and at least one super class.
And the arrow is only visible if there are no other icons.

I your example screenshot, "&" and "and:" are both implemented in False and
in the superclass Boolean.
But only "&" has the up-arrow icon because "and:" already has the test
runner icon (the circle).

I am not sure maybe there are other class browsers that let you see all
local and inherited methods of a class.

But what you can do with the default browser:
select a method and choose "Inheritance" from the menu, this opens a
MessageBrowser with the list of classes
of the hierarchy, implementing this method.


nicolai


>
> Sanjay Minni wrote
> > Hi
> >
> > is there a way to see in the browse all the methods implemented in the
> > super classes as well, maybe in a different colour,
> >
> > i thought it was possible but am unable to find it
> >
> > regards
> > Sanjay
>
>
>
>
>
> -----
> ---
> Regards, Sanjay
> --
> View this message in context:
> http://forum.world.st/how-to-see-methods-implemented-in-super-classes-tp4826435p4826452.html
> Sent from the Pharo Smalltalk Users mailing list archive at Nabble.com.
>
>
cheers,
Sanjay
Reply | Threaded
Open this post in threaded view
|

Re: how to see methods implemented in super classes

seb NZOGANG
thanks Sanjay

2015-05-15 11:16 UTC+02:00, Sanjay Minni <[hidden email]>:

> Thanks ... while I can get the hierarchy for a locally implemented method,
> is
> there a way for knowing implemented methods in the super class ?
>
> The browser in Dolphin from Object-Arts has an option "show inherited
> methods" in which it shows all methods incl those in the super class
> hierarchy in the regular browser and the source is visible in read only
> mode
> in normal navigation
>
> <http://forum.world.st/file/n4826478/DolphinBrowser.jpg>
>
> This to me is a very useful (and vital) feature
>
> regards
> Sanjay
>
>
>
> Nicolai Hess wrote
>> 2015-05-15 8:56 GMT+02:00 Sanjay Minni &lt;
>
>> sm@
>
>> &gt;:
>>
>>>
>>> i.e. - can I see the methods defined in the superclass in the circled
>>> panel
>>>    &lt;http://forum.world.st/file/n4826452/Browser.jpg&gt;
>>>
>>>
>> Not in the default browser.
>> You can only see the little up-arrow, if the method is defined in this
>> class and at least one super class.
>> And the arrow is only visible if there are no other icons.
>>
>> I your example screenshot, "&" and "and:" are both implemented in False
>> and
>> in the superclass Boolean.
>> But only "&" has the up-arrow icon because "and:" already has the test
>> runner icon (the circle).
>>
>> I am not sure maybe there are other class browsers that let you see all
>> local and inherited methods of a class.
>>
>> But what you can do with the default browser:
>> select a method and choose "Inheritance" from the menu, this opens a
>> MessageBrowser with the list of classes
>> of the hierarchy, implementing this method.
>>
>>
>> nicolai
>>
>>
>>>
>>> Sanjay Minni wrote
>>> > Hi
>>> >
>>> > is there a way to see in the browse all the methods implemented in the
>>> > super classes as well, maybe in a different colour,
>>> >
>>> > i thought it was possible but am unable to find it
>>> >
>>> > regards
>>> > Sanjay
>>>
>>>
>>>
>>>
>>>
>>> -----
>>> ---
>>> Regards, Sanjay
>>> --
>>> View this message in context:
>>> http://forum.world.st/how-to-see-methods-implemented-in-super-classes-tp4826435p4826452.html
>>> Sent from the Pharo Smalltalk Users mailing list archive at Nabble.com.
>>>
>>>
>
>
>
>
>
> -----
> ---
> Regards, Sanjay
> --
> View this message in context:
> http://forum.world.st/how-to-see-methods-implemented-in-super-classes-tp4826435p4826478.html
> Sent from the Pharo Smalltalk Users mailing list archive at Nabble.com.
>
>

Reply | Threaded
Open this post in threaded view
|

Re: how to see methods implemented in super classes

stepharo
In reply to this post by Sanjay Minni
The problem is that you have to flatten inheritance so this means that
we would have to prefix methods based on the classes
because just putting grey does not help.
Long time ago there was such browser but it was not really good so we
removed it.
Now put yourself in inheritance mode and you can quickly browse the
superclass.

Stef

Le 15/5/15 11:16, Sanjay Minni a écrit :

> Thanks ... while I can get the hierarchy for a locally implemented method, is
> there a way for knowing implemented methods in the super class ?
>
> The browser in Dolphin from Object-Arts has an option "show inherited
> methods" in which it shows all methods incl those in the super class
> hierarchy in the regular browser and the source is visible in read only mode
> in normal navigation
>
> <http://forum.world.st/file/n4826478/DolphinBrowser.jpg>
>
> This to me is a very useful (and vital) feature
>
> regards
> Sanjay
>
>
>
> Nicolai Hess wrote
>> 2015-05-15 8:56 GMT+02:00 Sanjay Minni &lt;
>> sm@
>> &gt;:
>>
>>> i.e. - can I see the methods defined in the superclass in the circled
>>> panel
>>>     &lt;http://forum.world.st/file/n4826452/Browser.jpg&gt;
>>>
>>>
>> Not in the default browser.
>> You can only see the little up-arrow, if the method is defined in this
>> class and at least one super class.
>> And the arrow is only visible if there are no other icons.
>>
>> I your example screenshot, "&" and "and:" are both implemented in False
>> and
>> in the superclass Boolean.
>> But only "&" has the up-arrow icon because "and:" already has the test
>> runner icon (the circle).
>>
>> I am not sure maybe there are other class browsers that let you see all
>> local and inherited methods of a class.
>>
>> But what you can do with the default browser:
>> select a method and choose "Inheritance" from the menu, this opens a
>> MessageBrowser with the list of classes
>> of the hierarchy, implementing this method.
>>
>>
>> nicolai
>>
>>
>>> Sanjay Minni wrote
>>>> Hi
>>>>
>>>> is there a way to see in the browse all the methods implemented in the
>>>> super classes as well, maybe in a different colour,
>>>>
>>>> i thought it was possible but am unable to find it
>>>>
>>>> regards
>>>> Sanjay
>>>
>>>
>>>
>>>
>>> -----
>>> ---
>>> Regards, Sanjay
>>> --
>>> View this message in context:
>>> http://forum.world.st/how-to-see-methods-implemented-in-super-classes-tp4826435p4826452.html
>>> Sent from the Pharo Smalltalk Users mailing list archive at Nabble.com.
>>>
>>>
>
>
>
>
> -----
> ---
> Regards, Sanjay
> --
> View this message in context: http://forum.world.st/how-to-see-methods-implemented-in-super-classes-tp4826435p4826478.html
> Sent from the Pharo Smalltalk Users mailing list archive at Nabble.com.
>
>


Reply | Threaded
Open this post in threaded view
|

Re: how to see methods implemented in super classes

Peter Goodall
In reply to this post by Sanjay Minni
Hello,

I've just started using Pharo again after a few years absence. It is becoming a very nice environment.

I completely agree with Sanjay that visibility of inherited methods and protocols is vital for several reasons:

 * The interface of the class I am editing includes all of its inherited methods.
 * If i want to over-ride a method, I would like to start from its source code.
 * I need to see the exact list of superclass protocols, so I can create a new method in the correct one.

From memory, when you edited an inherited method in dolphin, it asked you if you wanted to save it in the currently implementing class, or the currently browsed class.

An information field near the the source source pane is sufficient to indicate the signature of the method selected like:
MyClass class >> #myMethod. It isn't necessary to crowd the method selector list with class names. Greying-out the inherited methods worked as an indicator.

You also need the ability to view inherited methods up-to but not including a superclass - so that you can filter out methods of little contextual interest. Filtering out methods form Object would be an example default.

From memory IBM Smalltalk allowed similar visibility - but that's a long time ago for me...

Dolphin Smalltalk has a very beautiful browser system. It is most definitely worth exploring.

Cheers,
--Peter Goodall
Reply | Threaded
Open this post in threaded view
|

Re: how to see methods implemented in super classes

Ben Coman
You might want to try Calypso.
http://dionisiydk.blogspot.com.au/2016/12/calypso-new-system-browser-for-pharo.html

Note this only works for the current trunk of Pharo 6,
which you can get via PharoLauncher, or..
http://files.pharo.org/vm/pharo-spur32/
http://files.pharo.org/image/60/

cheers -ben

On Tue, Jan 24, 2017 at 6:53 AM, Peter Goodall <[hidden email]> wrote:

> Hello,
>
> I've just started using Pharo again after a few years absence. It is
> becoming a very nice environment.
>
> I completely agree with Sanjay that visibility of inherited methods and
> protocols is vital for several reasons:
>
>  * The interface of the class I am editing includes all of its inherited
> methods.
>  * If i want to over-ride a method, I would like to start from its source
> code.
>  * I need to see the exact list of superclass protocols, so I can create a
> new method in the correct one.
>
> From memory, when you edited an inherited method in dolphin, it asked you if
> you wanted to save it in the currently implementing class, or the currently
> browsed class.
>
> An information field near the the source source pane is sufficient to
> indicate the signature of the method selected like:
> MyClass class >> #myMethod. It isn't necessary to crowd the method selector
> list with class names. Greying-out the inherited methods worked as an
> indicator.
>
> You also need the ability to view inherited methods up-to but not including
> a superclass - so that you can filter out methods of little contextual
> interest. Filtering out methods form Object would be an example default.
>
> From memory IBM Smalltalk allowed similar visibility - but that's a long
> time ago for me...
>
> Dolphin Smalltalk has a very beautiful browser system. It is most definitely
> worth exploring.
>
> Cheers,
> --Peter Goodall
>
>
>
> --
> View this message in context: http://forum.world.st/how-to-see-methods-implemented-in-super-classes-tp4826435p4930525.html
> Sent from the Pharo Smalltalk Users mailing list archive at Nabble.com.
>

Reply | Threaded
Open this post in threaded view
|

Re: how to see methods implemented in super classes

Peter Goodall
Thanks Ben,

Giving it a try.

Cheers...

On Tue, Jan 24, 2017 at 10:51 AM, Ben Coman [via Smalltalk] <[hidden email]> wrote:
You might want to try Calypso.
http://dionisiydk.blogspot.com.au/2016/12/calypso-new-system-browser-for-pharo.html

Note this only works for the current trunk of Pharo 6,
which you can get via PharoLauncher, or..
http://files.pharo.org/vm/pharo-spur32/
http://files.pharo.org/image/60/

cheers -ben

On Tue, Jan 24, 2017 at 6:53 AM, Peter Goodall <[hidden email]> wrote:

> Hello,
>
> I've just started using Pharo again after a few years absence. It is
> becoming a very nice environment.
>
> I completely agree with Sanjay that visibility of inherited methods and
> protocols is vital for several reasons:
>
>  * The interface of the class I am editing includes all of its inherited
> methods.
>  * If i want to over-ride a method, I would like to start from its source
> code.
>  * I need to see the exact list of superclass protocols, so I can create a
> new method in the correct one.
>
> From memory, when you edited an inherited method in dolphin, it asked you if
> you wanted to save it in the currently implementing class, or the currently
> browsed class.
>
> An information field near the the source source pane is sufficient to
> indicate the signature of the method selected like:
> MyClass class >> #myMethod. It isn't necessary to crowd the method selector
> list with class names. Greying-out the inherited methods worked as an
> indicator.
>
> You also need the ability to view inherited methods up-to but not including
> a superclass - so that you can filter out methods of little contextual
> interest. Filtering out methods form Object would be an example default.
>
> From memory IBM Smalltalk allowed similar visibility - but that's a long
> time ago for me...
>
> Dolphin Smalltalk has a very beautiful browser system. It is most definitely
> worth exploring.
>
> Cheers,
> --Peter Goodall
>
>
>
> --
> View this message in context: http://forum.world.st/how-to-see-methods-implemented-in-super-classes-tp4826435p4930525.html
> Sent from the Pharo Smalltalk Users mailing list archive at Nabble.com.
>



If you reply to this email, your message will be added to the discussion below:
http://forum.world.st/how-to-see-methods-implemented-in-super-classes-tp4826435p4930528.html
To unsubscribe from how to see methods implemented in super classes, click here.
NAML

Reply | Threaded
Open this post in threaded view
|

Re: how to see methods implemented in super classes

Denis Kudriashov
In reply to this post by Sanjay Minni
Hi.

2015-05-15 7:01 GMT+02:00 Sanjay Minni <[hidden email]>:
Hi

is there a way to see in the browse all the methods implemented in the super
classes as well, maybe in a different colour,

i thought it was possible but am unable to find it

I also always miss it. That's why I add it in Calypso browser from the beginning. And I hope I succeed to made it much more convenient than in other smaltalks. There are many missing features still but I hope to finish main parts in February.