[geany/geany-plugins] 426e6a: geanyctags: use new plugin API
LarsDW223
git-noreply at xxxxx
Sun Mar 24 17:46:03 UTC 2019
Branch: refs/heads/master
Author: LarsDW223 <lars_paulsen at web.de>
Committer: LarsDW223 <lars_paulsen at web.de>
Date: Sat, 24 Feb 2018 16:28:26 UTC
Commit: 426e6a6040139e5af5a6fa5bb81354883a15ff93
https://github.com/geany/geany-plugins/commit/426e6a6040139e5af5a6fa5bb81354883a15ff93
Log Message:
-----------
geanyctags: use new plugin API
Modified Paths:
--------------
geanyctags/src/geanyctags.c
Modified: geanyctags/src/geanyctags.c
56 lines changed, 40 insertions(+), 16 deletions(-)
===================================================================
@@ -46,15 +46,8 @@
#endif
-PLUGIN_VERSION_CHECK(226)
-PLUGIN_SET_TRANSLATABLE_INFO(LOCALEDIR, GETTEXT_PACKAGE,
- "GeanyCtags",
- _("Ctags generation and search plugin for geany projects"),
- VERSION,
- "Jiri Techet <techet at gmail.com>")
-
-GeanyPlugin *geany_plugin;
-GeanyData *geany_data;
+static GeanyPlugin *geany_plugin = NULL;
+static GeanyData *geany_data = NULL;
static GtkWidget *s_context_fdec_item, *s_context_fdef_item, *s_context_sep_item,
@@ -103,16 +96,16 @@ static void on_project_save(G_GNUC_UNUSED GObject * obj, GKeyFile * config, G_GN
set_widgets_sensitive(TRUE);
}
-PluginCallback plugin_callbacks[] = {
+static PluginCallback plugin_geanyctags_callbacks[] = {
{"project-open", (GCallback) & on_project_open, TRUE, NULL},
{"project-close", (GCallback) & on_project_close, TRUE, NULL},
{"project-save", (GCallback) & on_project_save, TRUE, NULL},
{NULL, NULL, FALSE, NULL}
};
-void plugin_help (void)
+static void plugin_geanyctags_help (G_GNUC_UNUSED GeanyPlugin *plugin, G_GNUC_UNUSED gpointer pdata)
{
- utils_open_browser("http://plugins.geany.org/geanyctags.html");
+ utils_open_browser("https://plugins.geany.org/geanyctags.html");
}
static void spawn_cmd(const gchar *cmd, const gchar *dir)
@@ -622,10 +615,15 @@ static gboolean kb_callback(guint key_id)
return FALSE;
}
-void plugin_init(G_GNUC_UNUSED GeanyData * data)
+static gboolean plugin_geanyctags_init(GeanyPlugin *plugin, G_GNUC_UNUSED gpointer pdata)
{
- GeanyKeyGroup *key_group = plugin_set_key_group(geany_plugin, "GeanyCtags", KB_COUNT, kb_callback);
-
+ GeanyKeyGroup *key_group;
+
+ geany_plugin = plugin;
+ geany_data = plugin->geany_data;
+
+ key_group = plugin_set_key_group(geany_plugin, "GeanyCtags", KB_COUNT, kb_callback);
+
s_context_sep_item = gtk_separator_menu_item_new();
gtk_widget_show(s_context_sep_item);
gtk_menu_shell_prepend(GTK_MENU_SHELL(geany->main_widgets->editor_menu), s_context_sep_item);
@@ -659,9 +657,11 @@ void plugin_init(G_GNUC_UNUSED GeanyData * data)
0, 0, "find_tag", _("Find tag"), s_ft_item);
set_widgets_sensitive(geany_data->app->project != NULL);
+
+ return TRUE;
}
-void plugin_cleanup(void)
+static void plugin_geanyctags_cleanup(G_GNUC_UNUSED GeanyPlugin *plugin, G_GNUC_UNUSED gpointer pdata)
{
gtk_widget_destroy(s_context_fdec_item);
gtk_widget_destroy(s_context_fdef_item);
@@ -675,3 +675,27 @@ void plugin_cleanup(void)
gtk_widget_destroy(s_ft_dialog.widget);
s_ft_dialog.widget = NULL;
}
+
+
+/* Load module */
+G_MODULE_EXPORT
+void geany_load_module(GeanyPlugin *plugin)
+{
+ /* Setup translation */
+ main_locale_init(LOCALEDIR, GETTEXT_PACKAGE);
+
+ /* Set metadata */
+ plugin->info->name = "GeanyCtags";
+ plugin->info->description = _("Ctags generation and search plugin for geany projects");
+ plugin->info->version = VERSION;
+ plugin->info->author = "Jiri Techet <techet at gmail.com>";
+
+ /* Set functions */
+ plugin->funcs->init = plugin_geanyctags_init;
+ plugin->funcs->cleanup = plugin_geanyctags_cleanup;
+ plugin->funcs->help = plugin_geanyctags_help;
+ plugin->funcs->callbacks = plugin_geanyctags_callbacks;
+
+ /* Register! */
+ GEANY_PLUGIN_REGISTER(plugin, 226);
+}
--------------
This E-Mail was brought to you by github_commit_mail.py (Source: https://github.com/geany/infrastructure).
More information about the Plugins-Commits
mailing list