[squeak-dev] Services

Rein, Patrick Patrick.Rein at hpi.de
Wed Mar 15 15:47:41 UTC 2017


​Hi everyone,

for a Project of mine I am currently looking into a way to define object-specific context menus which work across different tools. 
Thus, I looked into the Services implementation and played around with it. It still seems mostly functional as I was able to re-implement
the button bar of my class browser with Services. 

As I also would like to have configurable keyboard shortcuts I think about reviving Services and introducing them to the standard tools. 
However, before diving in I wanted to ask you whether you still consider Services as the desired way of doing this. 
Especially as they are not really used in the image so far and would require some clean up and fixing.

The major technical hurdles I discovered so far are the number of involved classes to write and the static nature of some of the attributes
of Services (e.g. the text of a menu item is currently static). Also, I personally find them conceptually confusing as they require the definition
of actions (e.g. the browse implementor action of the browser) outside of the tool they will be available in (BrowserProvider vs. Browser).
The class the actions are defined in is however tightly coupled to the actual tool and the actions are thus barely reusable. The only thing that
changes is that the composition of menus could now be done in the Services Browser.

Bests
Patrick


More information about the Squeak-dev mailing list