diff options
author | Damien Chaumette <dchaumette@mandriva.com> | 2003-08-26 14:02:07 +0000 |
---|---|---|
committer | Damien Chaumette <dchaumette@mandriva.com> | 2003-08-26 14:02:07 +0000 |
commit | eb97e87d9224f10ee1fb8a73d16fed25279451f2 (patch) | |
tree | a949d35efda2f77b24ae0f7a0895fdf25621aaf7 | |
parent | f0ec0af921fc5e83ce78ebe9b2cbaa15cb8d937b (diff) | |
download | drakx-eb97e87d9224f10ee1fb8a73d16fed25279451f2.tar drakx-eb97e87d9224f10ee1fb8a73d16fed25279451f2.tar.gz drakx-eb97e87d9224f10ee1fb8a73d16fed25279451f2.tar.bz2 drakx-eb97e87d9224f10ee1fb8a73d16fed25279451f2.tar.xz drakx-eb97e87d9224f10ee1fb8a73d16fed25279451f2.zip |
fix buttons sensitive behavior
-rwxr-xr-x | perl-install/standalone/drakfont | 24 |
1 files changed, 14 insertions, 10 deletions
diff --git a/perl-install/standalone/drakfont b/perl-install/standalone/drakfont index dddb26499..a5ce46c0c 100755 --- a/perl-install/standalone/drakfont +++ b/perl-install/standalone/drakfont @@ -511,7 +511,10 @@ sub interactive_mode() { $window1->{rwindow}->set_position('center'); $window1->{rwindow}->set_title(N("Import Fonts")); } - my ($adv_opt_button, $font_button); + + my $button = {}; + my $disable = sub { my ($b) = @_; $button->{$_}->set_sensitive($_ ne $b) foreach keys %$button }; + gtkadd($window1->{window}, gtkpack_(new Gtk2::VBox(0, 2), if_(!$::isEmbedded, 0, gtkcreate_img("drakfont.620x57")), 1, gtkpack_(new Gtk2::HBox(0, 2), 1, @@ -519,31 +522,31 @@ sub interactive_mode() { gtkpack($font_box = new Gtk2::VBox(0, 5), $font_sel = new Gtk2::FontSelection,), 1, gtkpack_(new Gtk2::HBox(0, 2), 0, gtkadd(gtkset_layout(new Gtk2::VButtonBox, 'end'), - gtksignal_connect(new Gtk2::Button(N("Get Windows Fonts")), + gtksignal_connect($button->{windows} = new Gtk2::Button(N("Get Windows Fonts")), clicked => sub { + $disable->('windows'); $$central_widget->destroy; $windows = 1; appli_choice(); }), - gtksignal_connect(new Gtk2::Button(N("Uninstall Fonts")), + gtksignal_connect($button->{uninstall} = new Gtk2::Button(N("Uninstall Fonts")), clicked => sub { + $disable->('uninstall'); $$central_widget->destroy; uninstall(); }), ), 0, gtkadd(gtkset_layout(new Gtk2::VButtonBox, 'end'), - gtksignal_connect($adv_opt_button = new Gtk2::Button(N("Advanced Options")), + gtksignal_connect($button->{adv_option} = new Gtk2::Button(N("Advanced Options")), clicked => sub { - $font_button->set_sensitive(1); - $adv_opt_button->set_sensitive(0); + $disable->('adv_option'); $$central_widget->destroy; $windows = 0; advanced_install(); }), - gtksignal_connect($font_button = new Gtk2::Button(N("Font List")), + gtksignal_connect($button->{font_list} = new Gtk2::Button(N("Font List")), clicked => sub { - $font_button->set_sensitive(0); - $adv_opt_button->set_sensitive(1); + $disable->('font_list'); $$central_widget->destroy; create_fontsel(); }), @@ -558,8 +561,9 @@ sub interactive_mode() { ), ), ); + $central_widget = \$font_sel; - $font_button->set_sensitive(0); + $disable->('font_list'); $window1->{rwindow}->show_all; $window1->{rwindow}->realize; $window1->main; |