aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThierry Vignaud <tvignaud@mandriva.org>2003-07-16 13:47:14 +0000
committerThierry Vignaud <tvignaud@mandriva.org>2003-07-16 13:47:14 +0000
commita94f7555c7f5478968551d6948e2b51a05a7dc60 (patch)
tree52eaaaa971e108ede38a040c0e46407e98f0d673
parent36d685aaaa298d58f9cb368a99e5ac84da6f211e (diff)
downloadrpmdrake-a94f7555c7f5478968551d6948e2b51a05a7dc60.tar
rpmdrake-a94f7555c7f5478968551d6948e2b51a05a7dc60.tar.gz
rpmdrake-a94f7555c7f5478968551d6948e2b51a05a7dc60.tar.bz2
rpmdrake-a94f7555c7f5478968551d6948e2b51a05a7dc60.tar.xz
rpmdrake-a94f7555c7f5478968551d6948e2b51a05a7dc60.zip
2.1-25mdk: switch to gtk2-perl-xs
-rwxr-xr-xedit-urpm-sources.pl30
-rwxr-xr-xrpmdrake11
-rw-r--r--rpmdrake.pm4
-rw-r--r--rpmdrake.spec7
4 files changed, 25 insertions, 27 deletions
diff --git a/edit-urpm-sources.pl b/edit-urpm-sources.pl
index 581e4135..9f49b43c 100755
--- a/edit-urpm-sources.pl
+++ b/edit-urpm-sources.pl
@@ -46,8 +46,6 @@ sub selrow {
$model && $iter or return -1;
my $path = $model->get_path($iter);
my $row = $path->to_string;
- $path->free;
- $iter->free;
return $row;
}
@@ -56,7 +54,6 @@ sub remove_row {
my $iter = $model->get_iter_from_string($path_str);
$iter or return;
$model->remove($iter);
- $iter->free;
}
sub add_callback {
@@ -283,21 +280,21 @@ sub edit_parallel {
my $w = ugtk2->new($num == -1 ? N("Add a parallel group") : N("Edit a parallel group"));
my $name_entry;
- my $medias_ls = Gtk2::ListStore->new(Gtk2::GType->STRING);
+ my $medias_ls = Gtk2::ListStore->new("Glib::String");
my $medias = Gtk2::TreeView->new_with_model($medias_ls);
$medias->append_column(Gtk2::TreeViewColumn->new_with_attributes(undef, Gtk2::CellRendererText->new, 'text' => 0));
$medias->set_headers_visible(0);
$medias->get_selection->set_mode('browse');
- $medias_ls->append_set([ 0 => $_ ])->free foreach @{$edited->{medias}};
+ $medias_ls->append_set([ 0 => $_ ]) foreach @{$edited->{medias}};
my $add_media = sub {
my $w = ugtk2->new(N("Add a medium limit"));
- my $medias_list_ls = Gtk2::ListStore->new(Gtk2::GType->STRING);
+ my $medias_list_ls = Gtk2::ListStore->new("Glib::String");
my $medias_list = Gtk2::TreeView->new_with_model($medias_list_ls);
$medias_list->append_column(Gtk2::TreeViewColumn->new_with_attributes(undef, Gtk2::CellRendererText->new, 'text' => 0));
$medias_list->set_headers_visible(0);
$medias_list->get_selection->set_mode('browse');
- $medias_list_ls->append_set([ 0 => $_->{name} ])->free foreach @{$urpm->{media}};
+ $medias_list_ls->append_set([ 0 => $_->{name} ]) foreach @{$urpm->{media}};
my $sel;
gtkadd($w->{window},
gtkpack__(Gtk2::VBox->new(0, 5),
@@ -313,7 +310,7 @@ sub edit_parallel {
gtksignal_connect(Gtk2::Button->new(N("Cancel")), clicked => sub { $w->{retval} = 0; Gtk2->main_quit }))));
if ($w->main && $sel != -1) {
my $media = ${$urpm->{media}}[$sel]{name};
- $medias_ls->append_set([ 0 => $media ])->free;
+ $medias_ls->append_set([ 0 => $media ]);
push @{$edited->{medias}}, $media;
}
};
@@ -325,7 +322,7 @@ sub edit_parallel {
}
};
- my $hosts_ls = Gtk2::ListStore->new(Gtk2::GType->STRING);
+ my $hosts_ls = Gtk2::ListStore->new("Glib::String");
my $hosts = Gtk2::TreeView->new_with_model($hosts_ls);
$hosts->append_column(Gtk2::TreeViewColumn->new_with_attributes(undef, Gtk2::CellRendererText->new, 'text' => 0));
$hosts->set_headers_visible(0);
@@ -333,7 +330,7 @@ sub edit_parallel {
my $hosts_list;
if ($edited->{protocol} eq 'ssh') { $hosts_list = [ split /:/, $edited->{command} ] };
if ($edited->{protocol} eq 'ka-run') { push @$hosts_list, $1 while $edited->{command} =~ /-m (\S+)/g };
- $hosts_ls->append_set([ 0 => $_ ])->free foreach @$hosts_list;
+ $hosts_ls->append_set([ 0 => $_ ]) foreach @$hosts_list;
my $add_host = sub {
my $w = ugtk2->new(N("Add a host"));
my ($entry, $value);
@@ -346,7 +343,7 @@ sub edit_parallel {
gtksignal_connect(Gtk2::Button->new(N("Ok")), clicked => sub { $w->{retval} = 1; $value = $entry->get_text; Gtk2->main_quit }),
gtksignal_connect(Gtk2::Button->new(N("Cancel")), clicked => sub { $w->{retval} = 0; Gtk2->main_quit }))));
if ($w->main) {
- $hosts_ls->append_set([ 0 => $value ])->free;
+ $hosts_ls->append_set([ 0 => $value ]);
push @$hosts_list, $value;
}
};
@@ -406,7 +403,7 @@ sub edit_parallel {
sub parallel_callback {
my $w = ugtk2->new(N("Configure parallel urpmi (distributed execution of urpmi)"));
- my $list_ls = Gtk2::ListStore->new(Gtk2::GType->STRING, Gtk2::GType->STRING, Gtk2::GType->STRING, Gtk2::GType->STRING);
+ my $list_ls = Gtk2::ListStore->new("Glib::String", "Glib::String", "Glib::String", "Glib::String");
my $list = Gtk2::TreeView->new_with_model($list_ls);
each_index { $list->append_column(Gtk2::TreeViewColumn->new_with_attributes($_, Gtk2::CellRendererText->new, 'text' => $::i)) } N("Group"), N("Protocol"), N("Media limit");
$list->append_column(my $commandcol = Gtk2::TreeViewColumn->new_with_attributes(N("Command"), Gtk2::CellRendererText->new, 'text' => 3));
@@ -420,7 +417,7 @@ sub parallel_callback {
$list_ls->append_set([ 0 => $_->{name},
1 => $_->{protocol},
2 => @{$_->{medias}} ? join(', ', @{$_->{medias}}) : N("(none)"),
- 3 => $_->{command} ])->free;
+ 3 => $_->{command} ]);
}
};
$reread->();
@@ -451,7 +448,7 @@ sub parallel_callback {
sub mainwindow {
$mainw = ugtk2->new(N("Configure media"), center => 1);
- my $list = Gtk2::ListStore->new(Gtk2::GType->BOOLEAN, Gtk2::GType->STRING);
+ my $list = Gtk2::ListStore->new("Glib::Boolean", "Glib::String");
$list_tv = Gtk2::TreeView->new_with_model($list);
$list_tv->get_selection->set_mode('browse');
$list_tv->set_rules_hint(1);
@@ -478,8 +475,7 @@ sub mainwindow {
my (undef, $path) = @_;
my $iter = $list->get_iter_from_string($path);
invbool(\$urpm->{media}[$path]{ignore});
- $list->set($iter, [ 0, !$urpm->{media}[$path]{ignore} ]);
- $iter->free;
+ $list->set($iter, 0, !$urpm->{media}[$path]{ignore});
});
my $menu = Gtk2::Menu->new;
@@ -521,7 +517,7 @@ sub mainwindow {
$urpm = urpm->new;
$urpm->read_config;
$list->clear;
- $list->append_set([ 0 => !$_->{ignore}, 1 => $_->{name} ])->free foreach @{$urpm->{media}};
+ $list->append_set([ 0 => !$_->{ignore}, 1 => $_->{name} ]) foreach @{$urpm->{media}};
$reorder_ok = 1;
};
$reread_media->();
diff --git a/rpmdrake b/rpmdrake
index ef7ec464..2c34e857 100755
--- a/rpmdrake
+++ b/rpmdrake
@@ -55,7 +55,7 @@ $0 =~ m|/MandrakeUpdate$| and $MODE = 'update';
$MODE eq 'update' and require_root_capability();
-eval { require ugtk2; ugtk2->import(qw(:all)) };
+eval { require ugtk2; ugtk2->import(qw(:all)); require Gtk2::Pango; require Gtk2::Gdk::Keysyms };
if ($@) {
print "This program cannot be run in console mode.\n";
c::_exit(0); #- skip ugtk2::END
@@ -226,7 +226,7 @@ sub extract_header {
my ($pkg, $urpm) = @_;
my $chg_prepro = sub {
#- preprocess changelog for faster TextView insert reaction
- [ map { [ "$_\n", if_(/^\*/, { 'weight' => Gtk2::Pango->WEIGHT_BOLD }) ] } split("\n", $_[0]) ]
+ [ map { [ "$_\n", if_(/^\*/, { 'weight' => Gtk2::Pango->PANGO_WEIGHT_BOLD }) ] } split("\n", $_[0]) ]
};
if ($MODE eq 'remove') {
@$max_info_in_descr or return;
@@ -593,7 +593,7 @@ or you already installed all of them."));
my ($name, $version) = split_fullname($key);
exists $pkgs->{$key}{description} && (!@$max_info_in_descr || exists $pkgs->{$key}{files})
or slow_func($tree->window, sub { extract_header($pkgs->{$key}, $urpm) });
- my $tag_tag = { 'foreground' => 'royalblue3', 'weight' => Gtk2::Pango->WEIGHT_BOLD };
+ my $tag_tag = { 'foreground' => 'royalblue3', 'weight' => Gtk2::Pango->PANGO_WEIGHT_BOLD };
my $tag_fix = { 'font' => 'monospace' };
my @files = ([ N("Files:\n"), $tag_tag ], [ $pkgs->{$key}{files} || N("(Not available)"), $tag_fix ]);
my @chglo = ([ N("Changelog:\n"), $tag_tag ], @{$pkgs->{$key}{changelog} || [[ N("(Not available)") ]]});
@@ -622,7 +622,7 @@ or you already installed all of them."));
rebuild_tree => sub {},
};
- my $tree_model = Gtk2::TreeStore->new(Gtk2::GType->STRING, Gtk2::GType->OBJECT, Gtk2::GType->STRING);
+ my $tree_model = Gtk2::TreeStore->new("Glib::String", "Gtk2::Gdk::Pixbuf", "Glib::String");
$tree = Gtk2::TreeView->new_with_model($tree_model);
$tree->get_selection->set_mode('browse');
$tree->append_column(my $textcolumn = Gtk2::TreeViewColumn->new_with_attributes(undef, Gtk2::CellRendererText->new, 'text' => 0));
@@ -656,7 +656,6 @@ or you already installed all of them."));
gtkset_mousecursor_wait($tree->window);
}
}
- $child->free;
$tree->expand_row($path, 0);
});
@@ -839,7 +838,7 @@ Is it ok to continue?", $urpm->translate_why_removed($urpm->{state}, @{$urpm->{a
Gtk2::Label->new(N("Find:")),
$search_types_optionmenu,
gtksignal_connect($find_entry = Gtk2::Entry->new,
- key_press_event => sub { $_[1]->keyval == Gtk2::Gdk::Event::Key->Sym_Return
+ key_press_event => sub { $_[1]->keyval == $Gtk2::Gdk::Keysyms{Return}
and $find_callback->() }),
gtksignal_connect(Gtk2::Button->new(but(N("Search"))), clicked => $find_callback)),
1, $table,
diff --git a/rpmdrake.pm b/rpmdrake.pm
index 03a96d0a..c09469c6 100644
--- a/rpmdrake.pm
+++ b/rpmdrake.pm
@@ -309,7 +309,7 @@ the case when the architecture of your processor is not supported
by Mandrake Linux Official Updates.")), return '';
my $w = ugtk2->new('rpmdrake', grab => 1);
- my $tree_model = Gtk2::TreeStore->new(Gtk2::GType->STRING);
+ my $tree_model = Gtk2::TreeStore->new("Glib::String");
my $tree = Gtk2::TreeView->new_with_model($tree_model);
$tree->get_selection->set_mode('browse');
my $column = Gtk2::TreeViewColumn->new_with_attributes(undef, Gtk2::CellRendererText->new, 'text' => 0);
@@ -378,7 +378,7 @@ sub show_urpm_progress {
$pb->set_fraction(1.0);
$label->set_label($label->get_label . N(" failed!"));
}
- Gtk2->update_ui;
+ Gtk2->main_iteration while Gtk2->events_pending;
}
sub update_sources {
diff --git a/rpmdrake.spec b/rpmdrake.spec
index 7acd895b..a4345812 100644
--- a/rpmdrake.spec
+++ b/rpmdrake.spec
@@ -8,7 +8,7 @@
%define name rpmdrake
%define version 2.1
-%define release 24mdk
+%define release 25mdk
Name: %{name}
Version: %{version}
@@ -17,7 +17,7 @@ License: GPL
Source0: rpmdrake.tar.bz2
Summary: Mandrake Linux graphical front end for choosing packages for installion/removal
Requires: perl-MDK-Common >= 1.0.4-13mdk urpmi >= 4.3-15mdk gurpmi >= 4.3-9mdk perl-URPM >= 0.90-7mdk drakxtools >= 9.2-0.6mdk rpmtools >= 4.5
-Requires: perl-GTK2 > 0.0.cvs.2003.02.12.1-2mdk perl-Locale-gettext >= 1.01-7mdk
+Requires: perl-Gtk2 > 0.26.cvs.2003.07.15.1-4mdk perl-Locale-gettext >= 1.01-7mdk
BuildRequires: libcurl2-devel >= 7.10.3-2mdk gettext openssl-devel perl-devel
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-buildroot
Group: System/Configuration/Packaging
@@ -99,6 +99,9 @@ rm -rf $RPM_BUILD_ROOT
%{perl_vendorarch}/*.pm
%changelog
+* Wed Jul 16 2003 Thierry Vignaud <tvignaud@mandrakesoft.com> 2.1-25mdk
+- switch to gtk2-perl-xs
+
* Wed Jun 18 2003 Guillaume Cottenceau <gc@mandrakesoft.com> 2.1-24mdk
- new ugtk2.pm API
- use urpmi reporting reasons for impossibility to select some