Here’s a screenshot of testaction
test showing the GtkRecentAction
action for use with the GtkUIManager. The action is bound to a menuitem
tag inside the UI definition markup.
The code needs cleaning up and the hooking up of the GtkRecentChooser
interface virtual methods, but it’s not a big issue; setting all the recent chooser knobs using the recent chooser API is not the most beautiful approach I could come up with, though. But so is setting all the properties using specially crafted functions.
The next issue is inlining the list inside a menu (to make the Gedit maintainers happy ;-)). The current (and soon to be deprecated) EggRecent code used the awful EggRecentViewGtk
object and its evil spawn (EggRecentViewUIManager
and the most devilish EggRecentViewBonobo
). The GtkRecent approach “get the list from the recent manager and build the menu items” works for hand-built menus, but for menus created using the UI manager there’s no real option, as there’s no way to create a list of items from a GtkAction
. One way to implement it might be adding a GList * (create_menu_items) (GtkAction action);
virtual method inside GtkActionClass
.
Update 2006-04-18@03:51: the tracking bug with my initial draft for the GtkRecentAction
is #338843
Now listening: Belle and Sebastian, The Life Pursuit