comparison libpurple/plugins/perl/scripts/request.pl @ 15373:5fe8042783c1

Rename gtk/ and libgaim/ to pidgin/ and libpurple/
author Sean Egan <seanegan@gmail.com>
date Sat, 20 Jan 2007 02:32:10 +0000
parents
children 2f8274ce570a
comparison
equal deleted inserted replaced
15372:f79e0f4df793 15373:5fe8042783c1
1 $MODULE_NAME = "Request Functions Test";
2
3 use Gaim;
4
5 # All the information Gaim gets about our nifty plugin
6 %PLUGIN_INFO = (
7 perl_api_version => 2,
8 name => "Perl: $MODULE_NAME",
9 version => "0.1",
10 summary => "Test plugin for the Perl interpreter.",
11 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.",
12 author => "John H. Kelm <johnhkelm\@gmail.com>",
13 url => "http://sourceforge.net/users/johnhkelm/",
14
15 load => "plugin_load",
16 unload => "plugin_unload",
17 plugin_action_sub => "plugin_action_names"
18 );
19
20 %plugin_actions = (
21 "Plugin Action Test Label" => \&plugin_action_test,
22 );
23
24 sub plugin_action_names {
25 foreach $key (keys %plugin_actions) {
26 push @array, $key;
27 }
28
29 return @array;
30 }
31
32 sub plugin_init {
33 return %PLUGIN_INFO;
34 }
35
36 sub ok_cb_test {
37 $fields = shift;
38
39 Gaim::Debug::info($MODULE_NAME, "plugin_action_cb_test: BEGIN\n");
40 Gaim::Debug::info($MODULE_NAME, "ok_cb_test: BEGIN\n");
41 Gaim::Debug::info($MODULE_NAME, "ok_cb_test: Button Click\n");
42 Gaim::Debug::info($MODULE_NAME, "ok_cb_test: Field Type: $fields \n");
43 $account = Gaim::Request::Fields::get_account($fields, "acct_test");
44 Gaim::Debug::info($MODULE_NAME, "ok_cb_test: Username of selected account: " . Gaim::Account::get_username($account) . "\n");
45 $int = Gaim::Request::Fields::get_integer($fields, "int_test");
46 Gaim::Debug::info($MODULE_NAME, "ok_cb_test: Integer Value: $int \n");
47 $choice = Gaim::Request::Fields::get_choice($fields, "ch_test");
48 Gaim::Debug::info($MODULE_NAME, "ok_cb_test: Choice Value: $choice \n");
49 Gaim::Debug::info($MODULE_NAME, "ok_cb_test: END\n");
50 }
51
52 sub cancel_cb_test {
53 Gaim::Debug::info($MODULE_NAME, "cancel_cb_test: Button Click\n");
54 }
55
56 sub plugin_action_test {
57 $plugin = shift;
58 Gaim::Debug::info($MODULE_NAME, "plugin_action_cb_test: BEGIN\n");
59 plugin_request($plugin);
60 Gaim::Debug::info($MODULE_NAME, "plugin_action_cb_test: END\n");
61 }
62
63 sub plugin_load {
64 my $plugin = shift;
65 ######### TEST CODE HERE ##########
66
67
68 }
69
70 sub plugin_request {
71 $group = Gaim::Request::Field::Group::new("Group Name");
72 $field = Gaim::Request::Field::account_new("acct_test", "Account Text", undef);
73 Gaim::Request::Field::account_set_show_all($field, 0);
74 Gaim::Request::Field::Group::add_field($group, $field);
75
76 $field = Gaim::Request::Field::int_new("int_test", "Integer Text", 33);
77 Gaim::Request::Field::Group::add_field($group, $field);
78
79 # Test field choice
80 $field = Gaim::Request::Field::choice_new("ch_test", "Choice Text", 1);
81 Gaim::Request::Field::choice_add($field, "Choice 0");
82 Gaim::Request::Field::choice_add($field, "Choice 1");
83 Gaim::Request::Field::choice_add($field, "Choice 2");
84
85 Gaim::Request::Field::Group::add_field($group, $field);
86
87
88 $request = Gaim::Request::Fields::new();
89 Gaim::Request::Fields::add_group($request, $group);
90
91 Gaim::Request::fields(
92 $plugin,
93 "Request Title!",
94 "Primary Title",
95 "Secondary Title",
96 $request,
97 "Ok Text", "ok_cb_test",
98 "Cancel Text", "cancel_cb_test");
99 }
100
101 sub plugin_unload {
102 my $plugin = shift;
103 Gaim::Debug::info($MODULE_NAME, "#" x 80 . "\n");
104 ######### TEST CODE HERE ##########
105
106
107 Gaim::Debug::info($MODULE_NAME, "\n" . "#" x 80 . "\n");
108 }
109