Mercurial > pidgin
view libpurple/plugins/perl/scripts/plugin_action.pl @ 17866:759cd72bd2ff
Replaced a clean and simple API with a very weird hack due to vivid request on #pidgin by multiple devs. This avoids the change in PurplePluginProtocolInfo, but requires complicated change tracking in every prpl. The others prpl should add this change tracking, too (since otherwise the status gets changed even though nothing they care about changed), but that's not up to me.
| author | Andreas Monitzer <pidgin@monitzer.com> |
|---|---|
| date | Mon, 18 Jun 2007 12:37:29 +0000 |
| parents | 2f8274ce570a |
| children |
line wrap: on
line source
$MODULE_NAME = "Plugin Action Test Plugin"; use Purple; sub plugin_init { return %PLUGIN_INFO; } sub plugin_load { my $plugin = shift; } sub plugin_unload { my $plugin = shift; } sub fun1 { print "1\n"; } sub fun2 { print "2\n"; } sub fun3 { print "3\n"; } %plugin_actions = ( "Action 1" => \&fun1, "Action 2" => \&fun2, "Action 3" => \&fun3 # "Action 1" => sub { print "1\n"; }, # "Action 2" => sub { print "2\n"; }, # "Action 3" => sub { print "3\n"; } ); sub plugin_action_names { foreach $key (keys %plugin_actions) { push @array, $key; } return @array; } # All the information Purple gets about our nifty plugin %PLUGIN_INFO = ( perl_api_version => 2, name => "Perl: $MODULE_NAME", version => "0.1", summary => "Test plugin for the Perl interpreter.", description => "Just a basic test plugin template.", author => "Etan Reisner <deryni\@gmail.com>", url => "http://sourceforge.net/users/deryni9/", load => "plugin_load", unload => "plugin_unload", plugin_action_sub => "plugin_action_names" );
