summaryrefslogtreecommitdiffstats
path: root/perl-install
diff options
context:
space:
mode:
Diffstat (limited to 'perl-install')
-rwxr-xr-xperl-install/standalone/drakbackup156
1 files changed, 152 insertions, 4 deletions
diff --git a/perl-install/standalone/drakbackup b/perl-install/standalone/drakbackup
index 56318b118..c67014354 100755
--- a/perl-install/standalone/drakbackup
+++ b/perl-install/standalone/drakbackup
@@ -532,6 +532,54 @@ sub advanced_what_user {
$up_box->show_all();
}
+sub advanced_what_user_wizard {
+ my $box_what_user;
+ my %check_what_user;
+
+ gtkpack($advanced_box,
+ $box_what_user = gtkpack_(new Gtk::VBox(0, 15),
+ 0, _("Please check all user that you want to include inb your backup."),
+ 0, new Gtk::HSeparator,
+ 1, createScrolledWindow(
+ gtkpack(new Gtk::VBox(0,0),
+ map { my $name = $_;
+ my @user_list_tmp;
+ my $b = new Gtk::CheckButton($name);
+ if (grep /^$name$/, @user_list) {
+ $check_what_user{$_}[1] = 1;
+ gtkset_active($b, 1);
+ } else {
+ $check_what_user{$_}[1] = 0;
+ gtkset_active($b, 0);
+ }
+ $b->signal_connect(toggled => sub {
+ if ($check_what_user{$name}[1] ) {
+ $check_what_user{$name}[1] = 0;
+ @user_list_tmp = grep(!/^$name$/, @user_list);
+ @user_list = @user_list_tmp;
+ } else {
+ $check_what_user{$name}[1] = 1;
+ if (!member($name, @user_list) ) {push @user_list, $name;}
+ }
+ });
+ $b } (@all_user_list)
+ ),
+ ),
+ 0, new Gtk::HSeparator,
+ 0, my $check_what_browser = new Gtk::CheckButton( _(" do not include the browser cache") ),
+ 0, gtksignal_connect(new Gtk::Button(_("Close")), clicked => sub {
+ ${$central_widget}->destroy();
+ wizard();
+ }),
+ ),
+ );
+ $current_widget = \&advanced_what_user_wizard;
+ $previous_widget =\&wizard;
+ $central_widget = \$box_what_user;
+ $up_box->show_all();
+}
+
+
sub advanced_what_other {
my $box_what_other;
$list_other = new Gtk::List();
@@ -950,7 +998,8 @@ sub advanced_box{
$up_box->show_all();
}
-sub wizard {
+
+sub wizard_step2 {
my $box2;
read_conf_file();
@@ -958,18 +1007,96 @@ sub wizard {
$box2 = gtkpack_(new Gtk::HBox(0, 15),
1, new Gtk::VBox(0, 5),
1, gtkpack_(new Gtk::VBox(0, 15),
+ 1, new Gtk::VBox(0, 5),
+ 0, _("Please choose where you want to backup"),
+ 0, my $check_restore_sys = new Gtk::CheckButton(_("on Hard Drive")),
+ 0, my $check_restore_user = new Gtk::CheckButton(_("across Network")),
+ 0, my $check_restore_other = new Gtk::CheckButton(_("on CDROM")),
1, new Gtk::VBox(0, 5),
- 1, gtksignal_connect(my $button_options = new Gtk::Button(), clicked => sub {
- $box2->destroy(); }),
+ ),
+ 1, new Gtk::VBox(0, 5),
+ ),
+ );
+ wizard_button_box();
+ $custom_help = "";
+ $central_widget = \$box2;
+ $next_widget = \&wizard_step3;
+ $current_widget = \&wizard_step2;
+ $previous_widget =\&wizard;
+ $up_box->show_all();
+}
+
+
+sub wizard_step2 {
+ my $box2;
+ read_conf_file();
+
+ gtkpack($advanced_box,
+ $box2 = gtkpack_(new Gtk::HBox(0, 15),
+ 1, new Gtk::VBox(0, 5),
+ 1, gtkpack_(new Gtk::VBox(0, 15),
+ 1, new Gtk::VBox(0, 5),
+ 0, _("Please choose where you want to backup"),
+ 0, gtkpack_(new Gtk::HBox(0, 15),
+ 0, my $check_restore_sys = new Gtk::CheckButton(_("on Hard Drive")),
+ 1, new Gtk::VBox(0, 5),
+ 0, gtksignal_connect(new Gtk::Button(_("Configure it")), clicked => sub {filedialog() }),
+ ),
+ 0, gtkpack_(new Gtk::HBox(0, 15),
+ 0, my $check_restore_user = new Gtk::CheckButton(_("across Network")),
+ 1, new Gtk::VBox(0, 5),
+ 0, gtksignal_connect(new Gtk::Button(_("Configure it")), clicked => sub {filedialog() }),
+ ),
+ 0, gtkpack_(new Gtk::HBox(0, 15),
+ 0, my $check_restore_other = new Gtk::CheckButton(_("on CDROM")),
+ 1, new Gtk::VBox(0, 5),
+ 0, gtksignal_connect(new Gtk::Button(_("Configure it")), clicked => sub {filedialog() }),
+ ),
+ 1, new Gtk::VBox(0, 5),
+ ),
+ 1, new Gtk::VBox(0, 5),
+ ),
+ );
+ wizard_button_box();
+ $custom_help = "";
+ $central_widget = \$box2;
+ $next_widget = \&wizard_step3;
+ $current_widget = \&wizard_step2;
+ $previous_widget =\&wizard;
+ $up_box->show_all();
+}
+
+
+sub wizard {
+ my $box2;
+ read_conf_file();
+
+ gtkpack($advanced_box,
+ $box2 = gtkpack_(new Gtk::HBox(0, 15),
+ 1, new Gtk::VBox(0, 5),
+ 1, gtkpack_(new Gtk::VBox(0, 15),
+ 1, new Gtk::VBox(0, 5),
+ 0, _("Please choose that you want to backup"),
+ 0, my $check_restore_sys = new Gtk::CheckButton(_("Restore system")),
+ 0, my $check_restore_user = new Gtk::CheckButton(_("Restore Users")),
+ 0, gtkpack_(new Gtk::HBox(0, 15),
+ 1, new Gtk::VBox(0, 5),
+ 0, gtksignal_connect(new Gtk::Button(_("Select user manually")), clicked => sub {
+ ${$central_widget}->destroy();
+ advanced_what_user_wizard();
+ }),
+ ),
1, new Gtk::VBox(0, 5),
),
1, new Gtk::VBox(0, 5),
),
);
+ wizard_button_box();
$custom_help = "";
$central_widget = \$box2;
+ $next_widget = \&wizard_step2;
$current_widget = \&advanced_box;
- $previous_widget =\&interactive_mode;
+ $previous_widget =\&interactive_mode_box;
$up_box->show_all();
}
@@ -1303,6 +1430,27 @@ sub restore_button_box {
);
}
+sub wizard_button_box {
+
+ $button_box_tmp->destroy();
+ gtkpack($button_box,
+ $button_box_tmp = gtkpack_(new Gtk::HButtonBox,
+ 1, gtksignal_connect(new Gtk::Button(_(" Cancel ")), clicked => sub {
+ ${$central_widget}->destroy(); interactive_mode_box(); }),
+ 1, gtksignal_connect(new Gtk::Button(_(" Help ")), clicked => sub {
+ ${$central_widget}->destroy(); adv_help(\&$current_widget,$custom_help); }),
+ 1, new Gtk::HBox(0, 0),
+ 0, gtksignal_connect(new Gtk::Button(_(" Previous ")), clicked => sub {
+ ${$central_widget}->destroy(); $previous_widget->(); }),
+ 1, gtksignal_connect(new Gtk::Button(_(" Next ")), clicked => sub {
+ ${$central_widget}->destroy(); $next_widget->();
+ }),
+ ),
+ );
+}
+
+
+
sub main_button_box {
$button_box_tmp->destroy();