### Interface

# Nautilus MenuProvider

#### Description [src]

    interface Nautilus.MenuProvider : GObject.Object

Interface to provide additional menu items.

`NautilusMenuProvider` allows extensions to provide additional menu items in the file manager menus.

#### Prerequisite

In order to implement MenuProvider, your type must inherit from`GObject`.

#### Instance methods

###### nautilus_menu_provider_emit_items_updated_signal

Emits `NautilusMenuProvider::items-updated`.

###### nautilus_menu_provider_get_background_items

Called at least once whenever the current view changes.

###### nautilus_menu_provider_get_file_items

Called whenever the selected files in a view changes.

#### Signals

###### Nautilus.MenuProvider::items-updated

A signal to be emitted whenever the extension modifies the list of menu items.

#### Interface structure

    struct NautilusMenuProviderInterface {
      GTypeInterface g_iface;
      GList* (* get_file_items) (
        NautilusMenuProvider* provider,
        GList* files
      );
      GList* (* get_background_items) (
        NautilusMenuProvider* provider,
        NautilusFileInfo* current_folder
      );

    }

No description available.

###### Interface members

`g_iface` |
    GTypeInterface
| No description available.
`get_file_items` |
    GList* (* get_file_items) (
        NautilusMenuProvider* provider,
        GList* files
      )
| No description available.
`get_background_items` |
    GList* (* get_background_items) (
        NautilusMenuProvider* provider,
        NautilusFileInfo* current_folder
      )
| No description available.

#### Virtual methods

###### Nautilus.MenuProvider.get_background_items

Called at least once whenever the current view changes.

###### Nautilus.MenuProvider.get_file_items

Called whenever the selected files in a view changes.