Administrator
|
In Inbox. http://code.google.com/p/pharo/issues/detail?id=2329.
Details: That's it - I'm pissed and I'm taking my damn thread back ;-) Okay, now that we're back on track... Steph, I followed your suggestion and implemented it as a class var + settings. I had to add the capability to have directory-type settings (which was very similar to the existing file type settings, predictably). Summary: * Added ability to System-Settings to have directory-based settings * Added defaultDirectoryName setting to Settings-Monticello * Added feature to Monticello to remember parent directory where user likes to keep local repository directories and start directory-choosing dialogs there. * Tested (by hand) in PharoCore1.1ALPHA Latest update: #11312 Sean
Cheers,
Sean |
Woah
This sounds really really cool. Alain is our setting expert and we gotstuck on the how do write a setting chapter. So I'm happy other people like you push this further. Setf > In Inbox. http://code.google.com/p/pharo/issues/detail?id=2329. > > Details: > > > Michael Roberts-2 wrote: >> >> I appreciate I hijacked this thread somewhat.... >> > > That's it - I'm pissed and I'm taking my damn thread back ;-) > > > Sean P. DeNigris wrote: >> >> http://code.google.com/p/pharo/issues/detail?id=2329 >> >> Pharo image: Pharo 1.0 >> >> In Monticello Browser, when I click "+Repository" and select "directory," >> I'd love to be taken right to the directory where I keep my local >> repositories, instead of having to click to the same place over and over. >> > > Okay, now that we're back on track... > > > Stéphane Ducasse wrote: >> >> it would be good to be able to >> either choose to have one local cache on the side of the image >> or one shared among image - this implies a way to store and set it up >> => probably a class variable + a setting in 1.1 >> > > Steph, I followed your suggestion and implemented it as a class var + > settings. Excellent > I had to add the capability to have directory-type settings (which was very > similar to the existing file type settings, predictably). > > Summary: > * Added ability to System-Settings to have directory-based settings > * Added defaultDirectoryName setting to Settings-Monticello > * Added feature to Monticello to remember parent directory where user likes > to keep local repository directories and start directory-choosing dialogs > there. > * Tested (by hand) in PharoCore1.1ALPHA Latest update: #11312 > > Sean > -- > View this message in context: http://n4.nabble.com/Fix-2329-Default-MC-Directory-Setting-tp2019559p2019559.html > Sent from the Pharo Smalltalk mailing list archive at Nabble.com. > > _______________________________________________ > Pharo-project mailing list > [hidden email] > http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project _______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project |
Administrator
|
My experience as a settings beginner. It was actually really easy because: * '*setting*' is used everywhere, so I did a 'class find' and immediately found the settings categories * there are a lot of examples all together in the settings categories I think the hardest thing was the "xxxOn: aBuilder <pragma>" concept in general (same goes for the new world menu) - it's not immediately obvious (via my typical highlight and "browse it" method) where to look for the class that scooped all the setting methods up and built the browser. I remember my initial thought was "now what would I look under to find the thing that generates and passes in aBuilder?" Also, I think this model of keeping settings in separate packages is definitely easier from a learning perspective because you have all working examples in the same place. When I implemented my first worldMenu pragma method, it took a while to figure out how to generate a list of all methods currently using <worldMenu> so I could see how it was done. I was looking for a SystemNavigator >> allMethodsUsingPragma: aSymbol, or something like that. With that funtionality, I guess it really wouldn't matter where they were located - or am I missing an easy way to find these methods? Sean
Cheers,
Sean |
On 22.04.2010 04:45, Sean P. DeNigris wrote:
> > I was looking for a SystemNavigator>> allMethodsUsingPragma: aSymbol, or > something like that. With that funtionality, I guess it really wouldn't > matter where they were located - or am I missing an easy way to find these > methods? > > Sean You could try PragmaCollector, which is quite neat. (PragmaCollector filter: [:pragma | pragma keyword = #worldMenu]) reset The problem with an allMethodsUsingPragmaWithKeyword: method, would be that people might think it was ok to use without caution, which it's not :) [100 timesRepeat: [PragmaCollector allSystemPragmas]] timeToRun 6245 So when using pragmas, a good idea is to either use a PragmaCollector like a cache (dynamically updated one, that is), or limit the search scope of the pragmas you accept, usually to a class. PragmaCollector does not exist in Squeak though, it's one of the pieces I think they'd find useful too. In fact, currently they have one implemented in methods on Preferences, in the "dynamic preferences" category. Class-scoped pragmas is what is used in VW for menu building. Cheers, Henry _______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project |
In reply to this post by Sean P. DeNigris
Sean I cannot find your slice in the inbox.
Is it there? Stef On Apr 21, 2010, at 10:07 PM, Sean P. DeNigris wrote: > > In Inbox. http://code.google.com/p/pharo/issues/detail?id=2329. > > Details: > > > Michael Roberts-2 wrote: >> >> I appreciate I hijacked this thread somewhat.... >> > > That's it - I'm pissed and I'm taking my damn thread back ;-) > > > Sean P. DeNigris wrote: >> >> http://code.google.com/p/pharo/issues/detail?id=2329 >> >> Pharo image: Pharo 1.0 >> >> In Monticello Browser, when I click "+Repository" and select "directory," >> I'd love to be taken right to the directory where I keep my local >> repositories, instead of having to click to the same place over and over. >> > > Okay, now that we're back on track... > > > Stéphane Ducasse wrote: >> >> it would be good to be able to >> either choose to have one local cache on the side of the image >> or one shared among image - this implies a way to store and set it up >> => probably a class variable + a setting in 1.1 >> > > Steph, I followed your suggestion and implemented it as a class var + > settings. > > I had to add the capability to have directory-type settings (which was very > similar to the existing file type settings, predictably). > > Summary: > * Added ability to System-Settings to have directory-based settings > * Added defaultDirectoryName setting to Settings-Monticello > * Added feature to Monticello to remember parent directory where user likes > to keep local repository directories and start directory-choosing dialogs > there. > * Tested (by hand) in PharoCore1.1ALPHA Latest update: #11312 > > Sean > -- > View this message in context: http://n4.nabble.com/Fix-2329-Default-MC-Directory-Setting-tp2019559p2019559.html > Sent from the Pharo Smalltalk mailing list archive at Nabble.com. > > _______________________________________________ > Pharo-project mailing list > [hidden email] > http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project _______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project |
Administrator
|
I just re-uploaded. I see it there now.
Cheers,
Sean |
In reply to this post by Sean P. DeNigris
Sean P. DeNigris a écrit
Hi Sean, Thanks a lot for your setting extension! > I was looking for a SystemNavigator >> allMethodsUsingPragma: aSymbol, or > something like that. With that funtionality, I guess it really wouldn't > matter where they were located - or am I missing an easy way to find these > methods? > simply all senders of #worldMenu (or #systemsettings) Alain > Sean > _______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project |
Administrator
|
Oh, so simple! I was thinking of pragmas as 'this whole other concept to get.' After I read your reply, I rechecked Pharo By Example, which said "Each pragma is in effect a static message send with literal arguments," so it makes perfect sense to treat them like any other method, but I still wouldn't have thought of it. Sean
Cheers,
Sean |
Free forum by Nabble | Edit this page |