/** * ide_application_addin_unload: * @self: An #IdeApplicationAddin. * @application: An #IdeApplication. * * This inteface method is called when the application is shutting down or the * plugin has been unloaded. * * Use this function to cleanup after anything setup in * ide_application_addin_load(). * * Since: 3.32 */ void ide_application_addin_unload (IdeApplicationAddin *self, IdeApplication *application) { g_return_if_fail (IDE_IS_APPLICATION_ADDIN (self)); g_return_if_fail (IDE_IS_APPLICATION (application)); IDE_APPLICATION_ADDIN_GET_IFACE (self)->unload (self, application); }
/** * ide_application_addin_activate: * @self: a #IdeApplicationAddin * @application: an #ideApplication * * This function is activated when the GApplication::activate signal is * emitted. * * Since: 3.32 */ void ide_application_addin_activate (IdeApplicationAddin *self, IdeApplication *application) { g_return_if_fail (IDE_IS_APPLICATION_ADDIN (self)); g_return_if_fail (IDE_IS_APPLICATION (application)); if (IDE_APPLICATION_ADDIN_GET_IFACE (self)->activate) IDE_APPLICATION_ADDIN_GET_IFACE (self)->activate (self, application); }
void ide_application_addin_workbench_removed (IdeApplicationAddin *self, IdeWorkbench *workbench) { g_return_if_fail (IDE_IS_APPLICATION_ADDIN (self)); g_return_if_fail (IDE_IS_WORKBENCH (workbench)); if (IDE_APPLICATION_ADDIN_GET_IFACE (self)->workbench_removed) IDE_APPLICATION_ADDIN_GET_IFACE (self)->workbench_removed (self, workbench); }
/** * ide_application_addin_add_option_entries: * @self: a #IdeApplicationAddin * @application: an #IdeApplication * * 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. * * See ide_application_addin_handle_command_line() for how to handle arguments * once command line argument processing begins. * * Make sure you set `X-At-Startup=true` in your `.plugin` file so that the * plugin is loaded early during startup or this virtual function will not * be called. * * Since: 3.32 */ void ide_application_addin_add_option_entries (IdeApplicationAddin *self, IdeApplication *application) { g_return_if_fail (IDE_IS_APPLICATION_ADDIN (self)); g_return_if_fail (IDE_IS_APPLICATION (application)); if (IDE_APPLICATION_ADDIN_GET_IFACE (self)->add_option_entries) IDE_APPLICATION_ADDIN_GET_IFACE (self)->add_option_entries (self, application); }
/** * ide_application_addin_handle_command_line: * @self: a #IdeApplicationAddin * @application: an #IdeApplication * @cmdline: a #GApplicationCommandLine * * 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(). * * See g_application_command_line_get_option_dict() for more information. * * Since: 3.32 */ void ide_application_addin_handle_command_line (IdeApplicationAddin *self, IdeApplication *application, GApplicationCommandLine *cmdline) { g_return_if_fail (IDE_IS_APPLICATION_ADDIN (self)); g_return_if_fail (IDE_IS_APPLICATION (application)); g_return_if_fail (G_IS_APPLICATION_COMMAND_LINE (cmdline)); if (IDE_APPLICATION_ADDIN_GET_IFACE (self)->handle_command_line) IDE_APPLICATION_ADDIN_GET_IFACE (self)->handle_command_line (self, application, cmdline); }
/** * ide_application_addin_open: * @self: a #IdeApplicationAddin * @application: an #ideApplication * @files: (array length=n_files) (element-type GFile): an array of #GFiles * @n_files: the length of @files * @hint: a hint provided by the calling instance * * This function is activated when the #GApplication::open signal is emitted. * * Since: 3.32 */ void ide_application_addin_open (IdeApplicationAddin *self, IdeApplication *application, GFile **files, gint n_files, const gchar *hint) { g_return_if_fail (IDE_IS_APPLICATION_ADDIN (self)); g_return_if_fail (IDE_IS_APPLICATION (application)); if (IDE_APPLICATION_ADDIN_GET_IFACE (self)->open) IDE_APPLICATION_ADDIN_GET_IFACE (self)->open (self, application, files, n_files, hint); }
static void ide_application_addin_removed (PeasExtensionSet *set, PeasPluginInfo *plugin_info, PeasExtension *extension, gpointer user_data) { IdeApplication *self = user_data; g_assert (PEAS_IS_EXTENSION_SET (set)); g_assert (plugin_info != NULL); g_assert (IDE_IS_APPLICATION_ADDIN (extension)); ide_application_addin_unload (IDE_APPLICATION_ADDIN (extension), self); }
static void gbp_greeter_application_addin_add_option_entries (IdeApplicationAddin *addin, IdeApplication *app) { g_assert (IDE_IS_APPLICATION_ADDIN (addin)); g_assert (G_IS_APPLICATION (app)); g_application_add_main_option (G_APPLICATION (app), "greeter", 'g', G_OPTION_FLAG_IN_MAIN, G_OPTION_ARG_NONE, _("Display a new greeter window"), NULL); g_application_add_main_option (G_APPLICATION (app), "clone", 0, G_OPTION_FLAG_IN_MAIN, G_OPTION_ARG_STRING, _("Begin cloning project from URI"), "URI"); }