14192
|
1 $MODULE_NAME = "GTK Frame Test";
|
|
2
|
|
3 use Gaim;
|
|
4
|
|
5 %PLUGIN_INFO = (
|
|
6 perl_api_version => 2,
|
|
7 name => " Perl: $MODULE_NAME",
|
|
8 version => "0.1",
|
|
9 summary => "Test plugin for the Perl interpreter.",
|
|
10 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.",
|
|
11 author => "John H. Kelm <johnhkelm\@gmail.com>",
|
|
12 url => "http://gaim.sourceforge.net/",
|
|
13
|
|
14 GTK_UI => TRUE,
|
|
15 gtk_prefs_info => "foo",
|
|
16 load => "plugin_load",
|
|
17 unload => "plugin_unload",
|
|
18 );
|
|
19
|
|
20
|
|
21 sub plugin_init {
|
|
22 return %PLUGIN_INFO;
|
|
23 }
|
|
24
|
|
25 sub button_cb {
|
|
26 my $widget = shift;
|
|
27 my $data = shift;
|
|
28 print "Clicked button with message: " . $data . "\n";
|
|
29 }
|
|
30
|
|
31 sub foo {
|
|
32 eval '
|
|
33 use Glib;
|
|
34 use Gtk2 \'-init\';
|
|
35
|
|
36 $frame = Gtk2::Frame->new(\'Gtk Test Frame\');
|
|
37 $button = Gtk2::Button->new(\'Print Message\');
|
|
38
|
|
39 $frame->set_border_width(10);
|
|
40 $button->set_border_width(150);
|
|
41 $button->signal_connect("clicked" => \&button_cb, "Message Text");
|
|
42 $frame->add($button);
|
|
43
|
|
44 $button->show();
|
|
45 $frame->show();
|
|
46 ';
|
|
47 return $frame;
|
|
48 }
|
|
49
|
|
50 sub plugin_load {
|
|
51 my $plugin = shift;
|
|
52 print "#" x 80 . "\n";
|
|
53
|
|
54
|
|
55 ######### TEST CODE HERE ##########
|
|
56
|
|
57 print "$MODULE_NAME: Loading...\n";
|
|
58
|
|
59
|
|
60 Gaim::debug_info("plugin_load()", "Testing $MODULE_NAME Completed.");
|
|
61 print "#" x 80 . "\n\n";
|
|
62 }
|
|
63
|
|
64 sub plugin_unload {
|
|
65
|
|
66 }
|