[Pharo-project] [ANN]Keymappings Settings Integration

Alain Plantec alain.plantec at yahoo.com
Thu Feb 3 10:27:41 CET 2011

Hi Guillermo,
really cool, thanks.
I have few remarks bit here is the more important one for now (I'm very 
busy, i will give you more feedbacks later)

The problem of your implementation is that the declaration of kmappings 
are all centralized in KMToolsDefaultSettings
and that you introduce a dependency between tools and keymappings.
Imagine i've my tool and I want to declare a key mapping for it, then I 
have to change  KMToolsDefaultSetting class.
If my package for my tool is removed, then, again KMToolsDefaultSetting 
must be changed.
I think the key mappings should be declared by tool packages 
independently as it is for settings
without any dependency with the Keymapping package.

I would integrate more the declaration with the system settings

I give only a possible declaration here:
ToolSetKeyMapping class>>keyMappingsOn: aBuilder
     with: [
         (aBuilder shortcut: #openClassBrowser)
             target: ToolSet;
             default: 'alt t, alt b';
             description: 'Open the class browser' translated.
         (aBuilder shortcut: #openMonticelloBrowser)
             target: ToolSet;
             default: 'alt t, alt m';
             description: 'Open Monticello' translated]
Then, SettingTreeBuilder could be improved in order to take into account 
the #shortcut: message.
For the rest, I can help you /do with your help if you need :)

Thanks again.

Le 03/02/2011 03:46, Guillermo Polito a écrit :
> Hi!
> I refactored a little widget Keymappings had to use it into Settings.  
> See screenshots attached.
> The main idea is to "type" the shortcut once the widget has focus.  
> After that, doing a secondary clic there is a context menu to accept, 
> clear or cancel the changes.
> Actual version of Keymappings presents a shortcut for opening a 
> browser, a monticello browser and a test runner just to show how it 
> works.  I expect that in no more than 2 weeks I'll have Editors 
> integration so we can configure the editor shortcuts :).
> I would **REALLY LOVE** to have some feedback :).
> Who wants to load actual version of Keymappings can evaluate:
> Gofer it
>     squeaksource: 'Keymapping';
>     package: 'ConfigurationOfKeymapping';
>     load.
> (ConfigurationOfKeymapping project version:'1.3') load.
> Cheers,
> Guille
> PS:  I've tested it only in Pharo 1.2 Core.

More information about the Pharo-project mailing list