** Fix for bug #461272

2007-10-26  Sankar P  <psankar@novell.com>

	** Fix for bug #461272

	* plugin-manager.c: (eppm_selection_changed),
	(org_gnome_plugin_manager_manage):
	Configure button should not be enabled for all.
	configure button needs a hot-key.



svn path=/trunk/; revision=34432
This commit is contained in:
Sankar P
2007-10-26 10:54:17 +00:00
committed by Sankarasivasubramanian Pasupathilingam
parent d74d6cc9fb
commit 131a11a8a6
5 changed files with 47 additions and 4 deletions

View File

@ -1,3 +1,12 @@
2007-10-26 Sankar P <psankar@novell.com>
** Fix for bug #461272
* e-plugin.c: (ep_load), (e_plugin_load_plugins),
(e_plugin_is_configurable), (epl_configure):
* e-plugin.h:
Configure button should not be enabled for all.
2007-10-26 Kjartan Maraas <kmaraas@gnome.org>
* e-config.c:

View File

@ -929,8 +929,8 @@ epl_construct(EPlugin *ep, xmlNodePtr root)
return 0;
}
static void
epl_configure (EPlugin *ep)
gboolean
e_plugin_is_configurable (EPlugin *ep)
{
EPluginLibConfigureFunc configure;
@ -938,9 +938,24 @@ epl_configure (EPlugin *ep)
if (epl_loadmodule(ep) != 0) {
pd(printf ("\n epl_loadmodule \n"));
return;
return FALSE;
}
if (g_module_symbol(epl->module, "e_plugin_lib_configure", (void *)&configure)) {
pd(printf ("\n g_module_symbol is loaded\n"));
return TRUE;
}
return FALSE;
}
static void
epl_configure (EPlugin *ep)
{
EPluginLibConfigureFunc configure;
pd(printf ("\n epl_configure \n"));
/* Probably we dont need a load_module */
if (g_module_symbol(epl->module, "e_plugin_lib_configure", (void *)&configure)) {
pd(printf ("\n g_module_symbol is loaded\n"));
configure (epl);

View File

@ -101,6 +101,8 @@ void *e_plugin_invoke(EPlugin *ep, const char *name, void *data);
void e_plugin_enable(EPlugin *eph, int state);
void e_plugin_configure (EPlugin *eph);
gboolean e_plugin_is_configurable (EPlugin *ep);
/* static helpers */
/* maps prop or content to 'g memory' */
char *e_plugin_xml_prop(xmlNodePtr node, const char *id);
@ -274,3 +276,4 @@ struct _EPluginTypeHookClass {
GType e_plugin_type_hook_get_type(void);
#endif /* ! _E_PLUGIN_H */

View File

@ -1,3 +1,12 @@
2007-10-26 Sankar P <psankar@novell.com>
** Fix for bug #461272
* plugin-manager.c: (eppm_selection_changed),
(org_gnome_plugin_manager_manage):
Configure button should not be enabled for all.
configure button needs a hot-key.
2007-07-26 Sankar P <psankar@novell.com>
* plugin-manager.c: (eppm_response),

View File

@ -132,9 +132,16 @@ eppm_selection_changed(GtkTreeSelection *selection, Manager *m)
if (gtk_tree_selection_get_selected(selection, &model, &iter)) {
EPlugin *ep;
EPluginLibConfigureFunc configure;
gboolean enabled = FALSE;
gtk_tree_model_get(model, &iter, COL_PLUGIN_DATA, &ep, -1);
eppm_show_plugin(m, ep);
enabled = e_plugin_is_configurable (ep);
gtk_dialog_set_response_sensitive (m->dialog, RESPONSE_CONFIGURE, enabled);
} else {
eppm_show_plugin(m, NULL);
}
@ -223,7 +230,7 @@ org_gnome_plugin_manager_manage(void *ep, ESMenuTargetShell *t)
m->dialog = (GtkDialog *)gtk_dialog_new_with_buttons(_("Plugin Manager"),
(GtkWindow *)gtk_widget_get_toplevel(t->target.widget),
GTK_DIALOG_DESTROY_WITH_PARENT,
_("Configure"), RESPONSE_CONFIGURE,
_("Con_figure"), RESPONSE_CONFIGURE,
GTK_STOCK_CLOSE, GTK_RESPONSE_CLOSE,
NULL);