Yo, I just added an idea to http://puredata.info/dev/GuiIdeas and thought I'd post it here too for discussion, since one day I may get around to doing it (or perhaps someone else with more pd-hacking talent wants to :) )
An object, [contextitem 1 Change colors...] would add a "Change colors..." item to either the current canvas, the parent of the object (when the object was right clicked), or both depending on the first argument (0, 1, or 2 respectively). The remaining arguments would specify the name of the context item (to allow for spaces), and the [contextitem] object would have a single outlet which would [bang( when the context item was clicked.
This (combined with a state-saving solution) would allow emulation of "Properties" dialogs, and would be generally useful for embedding functionality in tight spaces.
Cheers Luke