2012/6/24 Benjamin <benjamin.vanryseghem.pharo@gmail.com>
On Jun 24, 2012, at 3:55 AM, Hernán Morales Durand wrote:
Thanks for your answers Benjamin. After reading the chapter I should note the plugin architecture seems very promising, as you've said it, very different from OB. So to create my own browser should I subclass Nautilus? which hook methods should I check first?
You should create your own plugin I guess :) In a plugin, you can access the UI, and put another morph instead of the text area, or whatever :)
cool, now is clearer to me the scope of plugins
Have a look a MondrianPlugin, it shows a bit what you can do :)
Some usability issues:
When I do "Find class...", type Object and Ok, it takes some time to display the class on the browser. Maybe it would be nice to preload first N methods in the method list? (i'm thinking in performance when browsing large lists). When I bring the menu over a class, there is no "browse hierarchy" option, is this option missing on purpose?
This method exists, I just forget to invoke it :)
I don't know other people, but I use it a lot to browse whole hierarchies. Hernán
Ben
Cheers,
Hernán
2012/6/23 Benjamin <benjamin.vanryseghem.pharo@gmail.com>
You can found some doc here: http://rmod.lille.inria.fr/web/pier/software/Tools-Improvement/NautilusDocum...
For Pharo 1.4, I try to maintain it a bit, but my focus is on the integration of Nautilus in Pharo 2.0
Ben
On Jun 23, 2012, at 4:32 PM, Hernán Morales Durand wrote:
For Nautilus I've read a review blog post at http://marianopeck.wordpress.com/2012/02/26/nautilus-the-reborn-of-the-syste... I didn't found anything else, maybe I'm missing something?
I've installed Nautilus with the following script in a clean Pharo 1.4 core
Gofer it url: 'http://ss3.gemstone.com/ss/Nautilus'; package: 'ConfigurationOfNautilus'; load.
(Smalltalk at: #ConfigurationOfNautilus) perform: #loadRelease
but after some random clicks I've received a SubscriptOutOfBounds exception. I've attached the stack from the debugger and a screenshot.
Hernán
2012/6/23 Benjamin <benjamin.vanryseghem.pharo@gmail.com>
What have you read already ?
Ben
On Jun 23, 2012, at 7:18 AM, Hernán Morales Durand wrote:
Hello Benjamin,
2012/6/22 Benjamin <benjamin.vanryseghem.pharo@gmail.com>
Hello :)
This is a nice challenge :) Firstly, you have to know that the model behind Nautilus is really different that the one behind OB. Let's say nothing in common. On the other hand, the code pane modification can be made within an hour (maybe two if you are not confident with morphic, but it doesn't seems to be the case) using the plugin mecanism (Johan Fabry can testify ^^).
Ok, let us know when more Nautilus documentation is available.
Then, Nautilus is not cross platform, but we have developed Spec with the goal to use it for Nautilus, and Spec is(will be ^^) cross platform. So one day, Nautilus will be cross platform. Sadly, I will not be soon (I have to rewrite the whole ui).
thanks for the clarification and status update
About the command definition, I am not an OB expert, but I think that Command are used for menu entries. In Nautilus the menus definition are based on pragma, so any class can extend Nautilus menus.
Yes, commands in OB are used to define menu entries and their behavior.
In a nutshell, what I have seen in the video is doable in roughly a couple of hours :) If you decide to give a try to Nautilus, let me know, and I will be glad to help/answer question/provide pieces of code etc :)
Thanks for your reply, I will be in touch.
Hernán
Ben
On Jun 22, 2012, at 8:14 AM, Hernán Morales Durand wrote:
First let me apologize for asking without properly evaluating first. I took some time and read about Nautilus which it seems a very nice work. I've developed a phylogenetics classifier using OmniBrowser, but I wondered if Nautilus could save me some effort, and I'm planning to test Pharo 1.4 or 2.0 in some future in which AFAIK OmniBrowser will not be supported anymore.
- Some time ago I've modified the OmniBrowser framework to browse anything I wanted in the "code pane" (the lower pane typically used for displaying/editing code), as we had a complex OODB it was very useful, see http://www.youtube.com/watch?v=VxUaOFRHFPk for a demo. However it was not easy to understand the OB internals and make the modifications. Have you tried to implement such feature in Nautilus? - There is documentation for developing browsers with Nautilus? Something which explains the basic architecture, how it differs from OB? for example: --Do you have to define a metagraph? --May I have multiple definition panels? -Do you have a mapping for each node type (class?) with each column? -OB is not cross-UI (it depends on Morphic). Can I use a Nautilus browser within a web browser? - Another thing which is really easy is to define Commands in OB, (although the #isActive logic could become a mess without some care). How it is different in Nautilus?
I'm sure I would rewrite my browsers with Nautilus, my key question is how much of the OB knowledge I can re-use?
Cheers,
Hernán
-- Hernán Morales Institute of Veterinary Genetics. National Scientific and Technical Research Council (CONICET). La Plata (1900), Buenos Aires, Argentina. Telephone: +54 (0221) 421-1799. Internal: 422 Fax: 425-7980 or 421-1799.