From: <dat...@us...> - 2006-08-30 04:19:21
|
Revision: 17084 Author: datallah Date: 2006-08-29 21:19:14 -0700 (Tue, 29 Aug 2006) ViewCVS: http://svn.sourceforge.net/gaim/?rev=17084&view=rev Log Message: ----------- Updated to work with current Perl loader API Modified Paths: -------------- trunk/libgaim/plugins/perl/scripts/request.pl Modified: trunk/libgaim/plugins/perl/scripts/request.pl =================================================================== --- trunk/libgaim/plugins/perl/scripts/request.pl 2006-08-30 03:46:34 UTC (rev 17083) +++ trunk/libgaim/plugins/perl/scripts/request.pl 2006-08-30 04:19:14 UTC (rev 17084) @@ -3,107 +3,118 @@ use Gaim; # All the information Gaim 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 => "Implements a set of test proccedures to ensure all functions that work in the C API still work in the Perl plugin interface. As XSUBs are added, this *should* be updated to test the changes. Furthermore, this will function as the tutorial perl plugin.", - author => "John H. Kelm <johnhkelm\@gmail.com>", - url => "http://sourceforge.net/users/johnhkelm/", - - load => "plugin_load", - unload => "plugin_unload", - plugin_action => "plugin_action_test", - plugin_action_label => "Plugin Action Test Label" -); +%PLUGIN_INFO = ( + perl_api_version => 2, + name => " Perl: $MODULE_NAME", + version => "0.1", + summary => "Test plugin for the Perl interpreter.", + description => "Implements a set of test proccedures to ensure all functions that work in the C API still work in the Perl plugin interface. As XSUBs are added, this *should* be updated to test the changes. Furthermore, this will function as the tutorial perl plugin.", + author => "John H. Kelm <johnhkelm\@gmail.com>", + url => "http://sourceforge.net/users/johnhkelm/", + load => "plugin_load", + unload => "plugin_unload", + plugin_action_sub => "plugin_action_names" +); + # These names must already exist my $GROUP = "UIUC Buddies"; my $USERNAME = "johnhkelm2"; - + # We will create these on load then destroy them on unload my $TEST_GROUP = "perlTestGroup"; my $TEST_NAME = "perlTestName"; my $TEST_ALIAS = "perlTestAlias"; my $PROTOCOL_ID = "prpl-oscar"; +%plugin_actions = ( + "Plugin Action Test Label" => \&plugin_action_test, +); -sub plugin_init { - return %PLUGIN_INFO; -} +sub plugin_action_names { + foreach $key (keys %plugin_actions) { + push @array, $key; + } -sub ok_cb_test{ + return @array; +} + +sub plugin_init { + return %PLUGIN_INFO; +} + +sub ok_cb_test { $fields = shift; - print "ok_cb_test: BEGIN\n"; - print "ok_cb_test: Button Click\n"; - print "ok_cb_test: Field Type: " . $fields . "\n"; - $account = Gaim::Request::fields_get_account($fields, "acct_test"); - print "ok_cb_test: Username of selected account: " . Gaim::Account::get_username($account) . "\n"; - $int = Gaim::Request::fields_get_integer($fields, "int_test"); - print "ok_cb_test: Integer Value:" . $int . "\n"; - $choice = Gaim::Request::fields_get_choice($fields, "ch_test"); - print "ok_cb_test: Choice Value:" . $choice . "\n"; - print "ok_cb_test: END\n"; + + Gaim::Debug::info($MODULE_NAME, "plugin_action_cb_test: BEGIN\n"); + Gaim::Debug::info($MODULE_NAME, "ok_cb_test: BEGIN\n"); + Gaim::Debug::info($MODULE_NAME, "ok_cb_test: Button Click\n"); + Gaim::Debug::info($MODULE_NAME, "ok_cb_test: Field Type: $fields \n"); + $account = Gaim::Request::Fields::get_account($fields, "acct_test"); + Gaim::Debug::info($MODULE_NAME, "ok_cb_test: Username of selected account: " . Gaim::Account::get_username($account) . "\n"); + $int = Gaim::Request::Fields::get_integer($fields, "int_test"); + Gaim::Debug::info($MODULE_NAME, "ok_cb_test: Integer Value: $int \n"); + $choice = Gaim::Request::Fields::get_choice($fields, "ch_test"); + Gaim::Debug::info($MODULE_NAME, "ok_cb_test: Choice Value: $choice \n"); + Gaim::Debug::info($MODULE_NAME, "ok_cb_test: END\n"); } -sub cancel_cb_test{ - print "cancel_cb_test: Button Click\n"; +sub cancel_cb_test { + Gaim::Debug::info($MODULE_NAME, "cancel_cb_test: Button Click\n"); } sub plugin_action_test { $plugin = shift; - print "plugin_action_cb_test: BEGIN\n"; + Gaim::Debug::info($MODULE_NAME, "plugin_action_cb_test: BEGIN\n"); plugin_request($plugin); - print "plugin_action_cb_test: END\n"; + Gaim::Debug::info($MODULE_NAME, "plugin_action_cb_test: END\n"); } -sub plugin_load { - my $plugin = shift; +sub plugin_load { + my $plugin = shift; ######### TEST CODE HERE ########## - + } -sub plugin_request { - $group = Gaim::Request::field_group_new("Group Name"); - $field = Gaim::Request::field_account_new("acct_test", "Account Text", undef); - Gaim::Request::field_account_set_show_all($field, 0); - Gaim::Request::field_group_add_field($group, $field); - - $field = Gaim::Request::field_int_new("int_test", "Integer Text", 33); - Gaim::Request::field_group_add_field($group, $field); - +sub plugin_request { + $group = Gaim::Request::Field::Group::new("Group Name"); + $field = Gaim::Request::Field::account_new("acct_test", "Account Text", undef); + Gaim::Request::Field::account_set_show_all($field, 0); + Gaim::Request::Field::Group::add_field($group, $field); + + $field = Gaim::Request::Field::int_new("int_test", "Integer Text", 33); + Gaim::Request::Field::Group::add_field($group, $field); + # Test field choice - $field = Gaim::Request::field_choice_new("ch_test", "Choice Text", 1); - Gaim::Request::field_choice_add($field, "Choice 0"); - Gaim::Request::field_choice_add($field, "Choice 1"); - Gaim::Request::field_choice_add($field, "Choice 2"); - - Gaim::Request::field_group_add_field($group, $field); - - - $request = Gaim::Request::fields_new(); - Gaim::Request::fields_add_group($request, $group); - + $field = Gaim::Request::Field::choice_new("ch_test", "Choice Text", 1); + Gaim::Request::Field::choice_add($field, "Choice 0"); + Gaim::Request::Field::choice_add($field, "Choice 1"); + Gaim::Request::Field::choice_add($field, "Choice 2"); + + Gaim::Request::Field::Group::add_field($group, $field); + + + $request = Gaim::Request::Fields::new(); + Gaim::Request::Fields::add_group($request, $group); + Gaim::Request::fields( - $plugin, - "Request Title!", - "Primary Title", + $plugin, + "Request Title!", + "Primary Title", "Secondary Title", $request, "Ok Text", "ok_cb_test", "Cancel Text", "cancel_cb_test"); -} +} -sub plugin_unload { - my $plugin = shift; - print "#" x 80 . "\n"; +sub plugin_unload { + my $plugin = shift; + Gaim::Debug::info($MODULE_NAME, "#" x 80 . "\n"); ######### TEST CODE HERE ########## - - - print "\n" . "#" x 80 . "\n"; + + Gaim::Debug::info($MODULE_NAME, "\n" . "#" x 80 . "\n"); } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |