Gnome2-PanelApplet
view release on metacpan or search on metacpan
examples/perl-applet view on Meta::CPAN
\&fill);
sub fill {
my ($applet, $iid, $data) = @_;
if ($iid ne 'OAFIID:PerlSampleApplet') {
return FALSE;
}
my $menu_xml = <<EOX;
<popup name="button3">
<menuitem name="Properties Item"
verb="Properties"
_label="Properties ..."
pixtype="stock"
pixname="gtk-properties"/>
<menuitem name="Help Item"
verb="Help"
_label="Help"
pixtype="stock"
pixname="gtk-help"/>
<menuitem name="About Item"
verb="About"
_label="About ..."
pixtype="stock"
pixname="gnome-stock-about"/>
</popup>
EOX
my $cb_mapping = {
Properties => [\&properties_callback, 'default!'],
Help => \&help_callback,
About => \&about_callback,
};
$applet->setup_menu($menu_xml, $cb_mapping, 'default?');
t/test-applet view on Meta::CPAN
\&fill);
sub fill {
my ($applet, $iid, $data) = @_;
if ($iid ne 'OAFIID:PerlTestApplet') {
return FALSE;
}
my $menu_xml = <<EOX;
<popup name="button3">
<menuitem name="TestUno Item" verb="TestUno" _label="Test I ..."/>
<menuitem name="TestDos Item" verb="TestDos" _label="Test II ..."/>
<menuitem name="TestTres Item" verb="TestTres" _label="Test III ..."/>
<menuitem name="TestCuatro Item" verb="TestCuatro" _label="Test IV ..."/>
<menuitem name="TestCinco Item" verb="TestCinco" _label="Test V ..."/>
</popup>
EOX
my $cb_mapping = {
TestUno => [\&test_one, 'default!'],
TestDos => \&test_two,
TestTres => \&test_three,
TestCuatro => \&test_four,
TestCinco => \&test_five,
};
xs/PanelApplet.xs view on Meta::CPAN
real_size_hints = g_new0 (int, n_elements);
for (i = 0; i < n_elements; i++) {
SV **svp = av_fetch (av, i, 0);
if (svp && SvOK (*svp))
real_size_hints[i] = SvIV (*svp);
}
panel_applet_set_size_hints (applet, real_size_hints, n_elements, base_size);
# FIXME: These need bonobo bindings.
# BonoboControl * panel_applet_get_control (PanelApplet *applet);
# BonoboUIComponent * panel_applet_get_popup_component (PanelApplet *applet);
=for apidoc
This method sets up menu entries for your applet and binds them to callbacks.
The XML for C<$xml> needs to have the following format:
<popup name="button3">
<menuitem name="Properties Item"
verb="Properties"
_label="Properties ..."
pixtype="stock"
pixname="gtk-properties"/>
<menuitem name="Help Item"
verb="Help"
_label="Help"
pixtype="stock"
pixname="gtk-help"/>
<menuitem name="About Item"
verb="About"
_label="About ..."
pixtype="stock"
pixname="gnome-stock-about"/>
</popup>
The verbs specified in this description can be mapped to callbacks in the
C<$verb_list>:
$verb_list = {
Properties => [\&properties_callback, 'data'],
Help => \&help_callback,
About => sub { about_callback(@_) },
};
( run in 2.606 seconds using v1.01-cache-2.11-cpan-364913b4093 )