### Interface

# Ide ApplicationAddin

#### Description

    interface Ide.ApplicationAddin : GObject.Object

No description available.

#### Prerequisite

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

#### Instance methods

###### ide_application_addin_activate

This function is activated when the GApplication::activate signal is emitted.

Available since: 3.32

###### ide_application_addin_add_option_entries

This function is called to allow the application a chance to add various command-line options to the `GOptionContext`. See `g_application_add_main_option_entries()` for more information on how to add arguments.

Available since: 3.32

###### ide_application_addin_handle_command_line

This function is called to allow the addin to procses command line arguments that were parsed based on options added in ide_application_addin_add_option_entries().

Available since: 3.32

###### ide_application_addin_load

This interface method is called when the application is started or the plugin has just been activated.

Available since: 3.32

###### ide_application_addin_open

This function is activated when the `GApplication::open` signal is emitted.

Available since: 3.32

###### ide_application_addin_unload

This inteface method is called when the application is shutting down or the plugin has been unloaded.

Available since: 3.32

###### ide_application_addin_workbench_added

No description available.

###### ide_application_addin_workbench_removed

No description available.

#### Interface structure

    struct IdeApplicationAddinInterface {
      GTypeInterface parent_interface;
      void (* load) (
        IdeApplicationAddin* self,
        IdeApplication* application
      );
      void (* unload) (
        IdeApplicationAddin* self,
        IdeApplication* application
      );
      void (* activate) (
        IdeApplicationAddin* self,
        IdeApplication* application
      );
      void (* open) (
        IdeApplicationAddin* self,
        IdeApplication* application,
        GFile** files,
        gint n_files,
        const gchar* hint
      );
      void (* add_option_entries) (
        IdeApplicationAddin* self,
        IdeApplication* application
      );
      void (* handle_command_line) (
        IdeApplicationAddin* self,
        IdeApplication* application,
        GApplicationCommandLine* cmdline
      );
      void (* workbench_added) (
        IdeApplicationAddin* self,
        IdeWorkbench* workbench
      );
      void (* workbench_removed) (
        IdeApplicationAddin* self,
        IdeWorkbench* workbench
      );

    }

###### Interface members

`parent_interface` |
    GTypeInterface
| No description available.
`load` |
    void (* load) (
        IdeApplicationAddin* self,
        IdeApplication* application
      )
| No description available.
`unload` |
    void (* unload) (
        IdeApplicationAddin* self,
        IdeApplication* application
      )
| No description available.
`activate` |
    void (* activate) (
        IdeApplicationAddin* self,
        IdeApplication* application
      )
| No description available.
`open` |
    void (* open) (
        IdeApplicationAddin* self,
        IdeApplication* application,
        GFile** files,
        gint n_files,
        const gchar* hint
      )
| No description available.
`add_option_entries` |
    void (* add_option_entries) (
        IdeApplicationAddin* self,
        IdeApplication* application
      )
| No description available.
`handle_command_line` |
    void (* handle_command_line) (
        IdeApplicationAddin* self,
        IdeApplication* application,
        GApplicationCommandLine* cmdline
      )
| No description available.
`workbench_added` |
    void (* workbench_added) (
        IdeApplicationAddin* self,
        IdeWorkbench* workbench
      )
| No description available.
`workbench_removed` |
    void (* workbench_removed) (
        IdeApplicationAddin* self,
        IdeWorkbench* workbench
      )
| No description available.

#### Virtual methods

###### Ide.ApplicationAddin.activate

This function is activated when the GApplication::activate signal is emitted.

###### Ide.ApplicationAddin.add_option_entries

This function is called to allow the application a chance to add various command-line options to the `GOptionContext`. See `g_application_add_main_option_entries()` for more information on how to add arguments.

###### Ide.ApplicationAddin.handle_command_line

This function is called to allow the addin to procses command line arguments that were parsed based on options added in ide_application_addin_add_option_entries().

###### Ide.ApplicationAddin.load

This interface method is called when the application is started or the plugin has just been activated.

###### Ide.ApplicationAddin.open

This function is activated when the `GApplication::open` signal is emitted.

###### Ide.ApplicationAddin.unload

This inteface method is called when the application is shutting down or the plugin has been unloaded.

###### Ide.ApplicationAddin.workbench_added

No description available.

###### Ide.ApplicationAddin.workbench_removed

No description available.