2 * Claws Mail -- a GTK+ based, lightweight, and fast e-mail client
3 * Copyright (C) 1999-2007 the Claws Mail Team
5 * This program is free software; you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by
7 * the Free Software Foundation; either version 2 of the License, or
8 * (at your option) any later version.
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
15 * You should have received a copy of the GNU General Public License
16 * along with this program; if not, write to the Free Software
17 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
21 #include <glib/gi18n.h>
31 #define PLUGIN_NAME (_("Demo"))
33 gboolean my_log_hook(gpointer source, gpointer data)
35 LogText *logtext = (LogText *)source;
37 printf("*** Demo Plugin log: %s\n", logtext->text);
44 gint plugin_init(gchar **error)
46 if (!check_plugin_version(MAKE_NUMERIC_VERSION(0, 8, 11, 39),
47 VERSION_NUMERIC, PLUGIN_NAME, error))
50 hook_id = hooks_register_hook(LOG_APPEND_TEXT_HOOKLIST, my_log_hook, NULL);
52 *error = g_strdup(_("Failed to register log text hook"));
56 printf("Demo plugin loaded\n");
61 void plugin_done(void)
63 hooks_unregister_hook(LOG_APPEND_TEXT_HOOKLIST, hook_id);
65 printf("Demo plugin unloaded\n");
68 const gchar *plugin_name(void)
73 const gchar *plugin_desc(void)
75 return _("This Plugin is only a demo of how to write plugins for Claws Mail. "
76 "It installs a hook for new log output and writes it to stdout."
78 "It is not really useful.");
81 const gchar *plugin_type(void)
86 const gchar *plugin_licence(void)
91 const gchar *plugin_version(void)
96 struct PluginFeature *plugin_provides(void)
98 static struct PluginFeature features[] =
99 { {PLUGIN_OTHER, N_("Demo")},
100 {PLUGIN_NOTHING, NULL}};