summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--perl-install/NEWS2
-rw-r--r--perl-install/mygtk2.pm7
2 files changed, 9 insertions, 0 deletions
diff --git a/perl-install/NEWS b/perl-install/NEWS
index c0d7eb3bd..c3ecf73ec 100644
--- a/perl-install/NEWS
+++ b/perl-install/NEWS
@@ -1,3 +1,5 @@
+- libDrakX:
+ o add support for Gtk+2's FileChooserDialog for draksnapashot
- drakbug:
o handle strange DBus errors
diff --git a/perl-install/mygtk2.pm b/perl-install/mygtk2.pm
index 6eafc1caa..9a86ffa76 100644
--- a/perl-install/mygtk2.pm
+++ b/perl-install/mygtk2.pm
@@ -774,6 +774,11 @@ sub _gtk_any_Window {
} elsif ($class eq 'Plug') {
$opts->{socket_id} or internal_error("can not create a Plug without a socket_id");
$w = "Gtk2::$class"->new(delete $opts->{socket_id});
+ } elsif ($class eq 'FileChooserDialog') {
+ my $action = delete $opts->{action} || internal_error("missing action for FileChooser");
+ $w = Gtk2::FileChooserDialog->new(delete $opts->{title}, delete $opts->{transient_for} || $::main_window,
+ $action, N("Cancel") => 'cancel', delete $opts->{button1} || N("Ok") => 'ok',
+ );
} else {
$w = "Gtk2::$class"->new;
}
@@ -949,6 +954,8 @@ sub _gtk__FileSelection {
$w;
}
+sub _gtk__FileChooserDialog { &_gtk_any_Window }
+
sub _gtk__FileChooser {
my ($w, $opts) = @_;