SF.net SVN: geany:[4108] trunk
ntrel at users.sourceforge.net
ntrel at xxxxx
Tue Aug 18 15:57:50 UTC 2009
Revision: 4108
http://geany.svn.sourceforge.net/geany/?rev=4108&view=rev
Author: ntrel
Date: 2009-08-18 15:57:50 +0000 (Tue, 18 Aug 2009)
Log Message:
-----------
Merge Plugin and GeanyPluginPrivate structs.
Modified Paths:
--------------
trunk/ChangeLog
trunk/src/pluginprivate.h
trunk/src/plugins.c
trunk/src/pluginutils.c
Modified: trunk/ChangeLog
===================================================================
--- trunk/ChangeLog 2009-08-18 14:26:36 UTC (rev 4107)
+++ trunk/ChangeLog 2009-08-18 15:57:50 UTC (rev 4108)
@@ -8,6 +8,8 @@
* src/callbacks.c:
Fix using 'Insert date' keybinding when a custom date string has
not been set.
+ * src/pluginprivate.h, src/pluginutils.c, src/plugins.c:
+ Merge Plugin and GeanyPluginPrivate structs.
2009-08-18 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
Modified: trunk/src/pluginprivate.h
===================================================================
--- trunk/src/pluginprivate.h 2009-08-18 14:26:36 UTC (rev 4107)
+++ trunk/src/pluginprivate.h 2009-08-18 15:57:50 UTC (rev 4108)
@@ -26,8 +26,10 @@
#ifndef PLUGINPRIVATE_H
#define PLUGINPRIVATE_H
-#include "ui_utils.h"
+#include "ui_utils.h" /* GeanyAutoSeparator */
+#include "keybindings.h" /* GeanyKeyGroup */
+
typedef struct SignalConnection
{
GObject *object;
@@ -35,11 +37,24 @@
}
SignalConnection;
+
typedef struct GeanyPluginPrivate
{
+ GModule *module;
+ gchar *filename; /* plugin filename (/path/libname.so) */
+ PluginInfo info; /* plugin name, description, etc */
+ GeanyPlugin public; /* fields the plugin can read */
+
+ void (*init) (GeanyData *data); /* Called when the plugin is enabled */
+ GtkWidget* (*configure) (GtkDialog *dialog); /* plugin configure dialog, optional */
+ void (*help) (void); /* Called when the plugin should show some help, optional */
+ void (*cleanup) (void); /* Called when the plugin is disabled or when Geany exits */
+
+ /* extra stuff */
+ PluginFields fields;
+ GeanyKeyGroup *key_group;
GeanyAutoSeparator toolbar_separator;
- gboolean resident;
- GArray *signal_ids; /* SignalConnection's to disconnect when unloading */
+ GArray *signal_ids; /* SignalConnection's to disconnect when unloading */
}
GeanyPluginPrivate;
Modified: trunk/src/plugins.c
===================================================================
--- trunk/src/plugins.c 2009-08-18 14:26:36 UTC (rev 4107)
+++ trunk/src/plugins.c 2009-08-18 15:57:50 UTC (rev 4108)
@@ -62,26 +62,9 @@
#include "pluginutils.h"
#include "pluginprivate.h"
+typedef GeanyPluginPrivate Plugin; /* shorter alias */
-typedef struct Plugin
-{
- GModule *module;
- gchar *filename; /* plugin filename (/path/libname.so) */
- PluginInfo info; /* plugin name, description, etc */
- PluginFields fields;
- GeanyPlugin public; /* fields the plugin can read */
- GeanyPluginPrivate priv; /* GeanyPlugin type private data, same as (*public.priv) */
- GeanyKeyGroup *key_group;
-
- void (*init) (GeanyData *data); /* Called when the plugin is enabled */
- GtkWidget* (*configure) (GtkDialog *dialog); /* plugin configure dialog, optional */
- void (*help) (void); /* Called when the plugin should show some help, optional */
- void (*cleanup) (void); /* Called when the plugin is disabled or when Geany exits */
-}
-Plugin;
-
-
static gboolean want_plugins = FALSE;
/* list of all available, loadable plugins, only valid as long as the plugin manager dialog is
@@ -534,9 +517,6 @@
g_return_if_fail(plugin->init);
plugin->init(&geany_data);
- if (p_geany_plugin && (*p_geany_plugin)->priv->resident)
- g_module_make_resident(plugin->module);
-
/* store some function pointers for later use */
g_module_symbol(plugin->module, "plugin_configure", (void *) &plugin->configure);
g_module_symbol(plugin->module, "plugin_help", (void *) &plugin->help);
@@ -667,7 +647,7 @@
plugin->filename = g_strdup(fname);
plugin->module = module;
plugin->public.info = &plugin->info;
- plugin->public.priv = &plugin->priv;
+ plugin->public.priv = plugin;
if (init_plugin)
plugin_init(plugin);
@@ -681,7 +661,7 @@
static void remove_callbacks(Plugin *plugin)
{
- GArray *signal_ids = plugin->priv.signal_ids;
+ GArray *signal_ids = plugin->signal_ids;
SignalConnection *sc;
if (signal_ids == NULL)
@@ -714,7 +694,7 @@
if (plugin->key_group)
g_ptr_array_remove_fast(keybinding_groups, plugin->key_group);
- widget = plugin->priv.toolbar_separator.widget;
+ widget = plugin->toolbar_separator.widget;
if (widget)
gtk_widget_destroy(widget);
Modified: trunk/src/pluginutils.c
===================================================================
--- trunk/src/pluginutils.c 2009-08-18 14:26:36 UTC (rev 4107)
+++ trunk/src/pluginutils.c 2009-08-18 15:57:50 UTC (rev 4108)
@@ -88,7 +88,7 @@
{
g_return_if_fail(plugin);
- plugin->priv->resident = TRUE;
+ g_module_make_resident(plugin->priv->module);
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the Commits
mailing list