Ben
On Oct 14, 2013, at 5:04 PM, [email protected] wrote: > In 2.0 when you choose <Make unclosable> from the SystemWindow menu > (downward-pointing triangle in the top right of each window), the next > invocation of that menu would instead have the opposite function <Make > closable>. > > In 3.0 it does not change to <Make closable> so you cannot revert the > feature. I have isolated this to PragmaMenuBuilder's ivar 'itemList' being > cached, and describe a a fix at https://pharo.fogbugz.com/default.asp?11835 > > However I am not comfortable with my awareness of the architectural > implications and so I seek a wider discussion of this. Two queries leap to > mind: > > > 1. What is the philosophy behind caching the pragma-menus? To what degree did > menu performance suffer in practice? Since pragmas are spread all over the system, each time the PragmaBuilder collects the pragmas, it iterates over all the methods. This can be a pain :) > > 2. What consideration has been given to dynamic elements in other > pragma-menus? I think there is a way to provide the name as a dynamically evaluable object (a block or a message send). I am not 100% sure of that. > > 3. Suggestions for alternative resolution paths to follow? A less drastic approach would be to flush the cache when you click on <Make closable>/<Make unclosable> Ben > > cheers -ben >
