diff options
author | Pascal Rigaux <pixel@mandriva.com> | 2005-01-10 16:30:00 +0000 |
---|---|---|
committer | Pascal Rigaux <pixel@mandriva.com> | 2005-01-10 16:30:00 +0000 |
commit | deaa2b3370d3d586dec6c1a2136bf66c2af555d1 (patch) | |
tree | 3fb924ad6d239d2e5bfd1528358600763d5807a5 | |
parent | 64f941377e536828eac68a724cae67a18819dd0b (diff) | |
download | drakx-deaa2b3370d3d586dec6c1a2136bf66c2af555d1.tar drakx-deaa2b3370d3d586dec6c1a2136bf66c2af555d1.tar.gz drakx-deaa2b3370d3d586dec6c1a2136bf66c2af555d1.tar.bz2 drakx-deaa2b3370d3d586dec6c1a2136bf66c2af555d1.tar.xz drakx-deaa2b3370d3d586dec6c1a2136bf66c2af555d1.zip |
rewrite
-rw-r--r-- | perl-install/ugtk2.pm | 43 |
1 files changed, 22 insertions, 21 deletions
diff --git a/perl-install/ugtk2.pm b/perl-install/ugtk2.pm index 9f0465c8f..c4df679ae 100644 --- a/perl-install/ugtk2.pm +++ b/perl-install/ugtk2.pm @@ -854,36 +854,37 @@ sub new { $o->{window} = $o->{rwindow}; } } else { - $o->{rwindow} = $o->{window} = gtknew('VBox', border_width => 10); - set_main_window_size($o); + if (!$::WizardWindow) { + $::WizardTable = gtknew('VBox'); - $::WizardTable ||= gtknew('VBox'); - - if (!$::Plug && $::isEmbedded) { - $::Plug = $::WizardWindow = gtknew('Plug', + if ($::isEmbedded) { + $::Plug = $::WizardWindow = gtknew('Plug', socket_id => $::XID, icon => wm_icon(), child => $::WizardTable, title => $title || '', ); - } elsif (!$::WizardWindow) { - $::WizardWindow = _create_window( - title => $title, - child => gtknew('Frame', shadow_type => 'out', child => $::WizardTable), - if_(!$::isInstall, icon => wm_icon()), - if_(!$::isInstall && !$::isStandalone, position_policy => 'center_always'), - ); - - if ($::isInstall) { - require install_gtk; #- for perl_checker - $::WizardWindow->signal_connect(key_press_event => \&install_gtk::special_shortcuts); + mygtk2::sync($::WizardWindow); } else { - eval { gtkpack__($::WizardTable, Gtk2::Banner->new(wm_icon(), $::Wizard_title)) }; - $@ and log::l("ERROR: missing wizard banner"); + $::WizardWindow = _create_window( + title => $title, + child => gtknew('Frame', shadow_type => 'out', child => $::WizardTable), + if_(!$::isInstall, icon => wm_icon()), + if_(!$::isInstall && !$::isStandalone, position_policy => 'center_always'), + ); + + if ($::isInstall) { + require install_gtk; #- for perl_checker + $::WizardWindow->signal_connect(key_press_event => \&install_gtk::special_shortcuts); + } else { + eval { gtkpack__($::WizardTable, Gtk2::Banner->new(wm_icon(), $::Wizard_title)) }; + $@ and log::l("ERROR: missing wizard banner"); + } + $::WizardWindow->show; } } - $::WizardWindow->show; - flush(); + $o->{rwindow} = $o->{window} = gtknew('VBox', border_width => 10); + set_main_window_size($o); gtkpack($::WizardTable, $o->{window}); } $o->{rwindow}->signal_connect(destroy => sub { $o->{destroyed} = 1 }); |