Pluggable Menus

Norton, Chris chrisn at Kronos.com
Mon Mar 8 23:38:01 UTC 1999


I agree.  I think it is important that menu lists be modifiable at execution
time.  It would be nice if items that are not currently usable, in the
System Browser, for example, did not appear in the menu (or popup) at all
(or maybe they could be disabled).

The notion of "hard coding" something like menu selections makes my skin
crawl (figuratively speaking).  I think that menus and their items should be
objects that can be modified at will, like all of the other objects in
Squeak.

---==> Chris

> -----Original Message-----
> From:	Lex Spoon [SMTP:lex at cc.gatech.edu]
> Sent:	Monday, March 08, 1999 6:28 PM
> To:	Squeak
> Subject:	Re: Pluggable Menus
> 
> Something like this definately sounds nice to me.  Another place it
> would help is the "open" submenu on the world menu.
> 
> Lex
> 
> 
> 
> Andres Valloud <sqrmax at cvtci.com.ar> wrote:
> > Hi.
> > 
> > I've developed a TeX fileOut algorithm for filing out Smalltalk code
> in TeX
> > format. What I did to make access very easy was to add a line and then
> an item
> > in the browser's menues named TeX fileOut. But I didn't quite like it
> since I
> > was modifying the hardcoded menu. And yes, lately the menues were
> changed for
> > browsers and other windows, and my TeX fileOut line... say bye.
> > 
> > I think the 'browser plugin' concept would be useful for cases like
> this. Would
> > it be ok for me to reprogram the menus in the Browser to have a number
> of
> > menuItemLists instead of a bunch of hardcoded methods? I was thinking
> that the
> > Browser class would know about its instances methods, and keep track
> of the
> > added/deleted browser plugins added to it, mantaining the itemLists in
> class
> > variables.
> > 
> > For instance, the TeX fileOut changeset would just say something like:
> > 
> > Browser deleteAnyPrevious: #TeXFileOut. "Deletes previous versions"
> > Browser addPlugin: #TeXFileOut.
> > 
> > Browser forPlugin: #TeXFileOut addClassCategoryItem: 'TeX fileOut'
> > browserSelector: #classCategoryTeXFileOut:.
> > 
> > Browser forPlugin: #TeXFileOut addClassItem: 'TeX fileOut'
> browserSelector:
> > #classTexFileOut:.
> > 
> > 
> > And so for the methods.
> > 
> > What do you think?
> > Andres.





More information about the Squeak-dev mailing list