thunarx.MenuProvider — thunarx.MenuProvider Reference
class thunarx.MenuProvider: |
Example 2. A thunarx.MenuProvider plugin (without submenus)
import thunarx import gtk class ThunarxMenuProviderPlugin(thunarx.MenuProvider): def __init__(self): pass def get_file_actions(self, window, files): return [gtk.Action("TMP:TestFileAction", "PyFileAction", "Python File Action", gtk.STOCK_FILE)] def get_folder_actions(self, window, folder): return [gtk.Action("TMP:TestFolderAction", "PyFolderAction", "Python Folder Action", gtk.STOCK_DIRECTORY)]
Example 3. A thunarx.MenuProvider plugin (with submenus)
import thunarx import gtk """ Thunarx Submenu Plugin This plugin shows an example of a MenuProvider plugin that implements sub-menus. The example used here requires the developer to sub-class gtk.Action and override the create_menu_item virtual method. """ class MyAction(gtk.Action): __gtype_name__ = "MyAction" def __init__(self, name, label, tooltip=None, stock_id=None, menu_handler=None): gtk.Action.__init__(self, name, label, tooltip, stock_id) self.menu_handler = menu_handler def create_menu_item(self): menuitem = gtk.MenuItem(self.get_label()) if self.menu_handler is not None: menu = gtk.Menu() menuitem.set_submenu(menu) self.menu_handler(menu) return menuitem do_create_menu_item = create_menu_item def PyFileActionMenu(menu): action = gtk.Action("TMP:Submenuitem1", "Submenuitem 1", None, None) subitem = action.create_menu_item() menu.append(subitem) subitem.show() action = MyAction("TMP:Submenuitem2", "Submenuitem 2", None, None, menu_handler=PyFileActionSubmenu) subitem = action.create_menu_item() menu.append(subitem) subitem.show() def PyFileActionSubmenu(menu): action = gtk.Action("TMP:SubSubmenuitem1", "Subsubmenuitem 1", None, None) subitem = action.create_menu_item() menu.append(subitem) subitem.show() action = gtk.Action("TMP:SubSubmenuitem2", "Subsubmenuitem 2", None, None) subitem = action.create_menu_item() menu.append(subitem) subitem.show() class ThunarxSubMenuProviderPlugin(thunarx.MenuProvider): def __init__(self): pass def get_file_actions(self, window, files): return [MyAction("TMP:TestFileAction", "PyFileAction", "Python File Action", gtk.STOCK_FILE, menu_handler=PyFileActionMenu)] def get_folder_actions(self, window, folder): return [MyAction("TMP:TestFolderAction", "PyFolderAction", "Python Folder Action", gtk.STOCK_DIRECTORY)]
def get_file_actions(window
, files
)
| the current gtk.Window instance |
| a list of thunarx.FileInfo objects. |
Returns : | a list of gtk.Action objects |
The get_file_actions
() method returns a list of
gtk.Action objects.
def get_folder_actions(window
, folder
)
| the current gtk.Window instance |
| the current folder, as a thunarx.FileInfo object. |
Returns : | a list of gtk.Action objects |
The get_folder_actions
() method returns a list of
gtk.Action objects.
def get_dnd_actions(window
, folder
, files
)
| the current gtk.Window instance |
| the current folder, as a thunarx.FileInfo object. |
| a list of the currently selected files, as a thunarx.FileInfo objects. |
Returns : | a list of gtk.Action objects |
The get_dnd_actions
() method returns a list of
gtk.Action objects.