The gtk Menu class supports 'table menus', where the menu entries can
be laid out in a grid. This is useful for horizontal menus, and for
dense menus of icons, and for wrapping the menu when it gets too long,
etc.
The Menu.attach() method is used to add entries to a menu by row and
column:
http://www.pygtk.org/docs/pygtk/class-gtkmenu.html#method-gtkmenu--attach
However, the callback in _Menu, defined in palette.py, only triggers
on do_insert(), and so the signal emission (and subsequent
palette._update_separators() call, which places the line underneath
the menu title text at top) never occurs when you add entries using
attach(). _Menu now overrides attach() and emits the proper signal.
This immediately reveals the full palette for an
object when it is right clicked. A future change should
be made to require explicit dismissal (option chosen,
click outside, escape) when one is explicitly invoked.