summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drakpxelinux.pl78
1 files changed, 37 insertions, 41 deletions
diff --git a/drakpxelinux.pl b/drakpxelinux.pl
index 2498eac..9c689c9 100644
--- a/drakpxelinux.pl
+++ b/drakpxelinux.pl
@@ -798,7 +798,8 @@ sub add_columns {
my $mac_regexp = '(?:[0-9a-f]{2}:){5}[0-9a-f]{2}';
my $profiles_conf = network::pxe::read_profiles();
-my $systems = Gtk2::SimpleList->new(N("MAC address") => 'text',
+my $systems = Gtk2::SimpleList->new(
+ N("MAC address") => 'text',
N("Installed") => 'bool',
N("System") => 'text',
);
@@ -968,12 +969,37 @@ gtkpack($w->{window},
if_($::isEmbedded, Gtk2::Label->new("Here you can manage your PXE server.")),
gtknew('Notebook', children => [
gtknew('Label', text => N("PXE configuration file")),
- gtknew('HBox', spacing => 0,
- children => [
- 1, gtknew('ScrolledWindow', width => 500, height => 300, child => $treeview),
- 0, gtknew('VBox',
+ gtknew('VBox', spacing => 0, children => [
+ 1, gtknew('HBox', spacing => 0, children => [
+ 1, gtknew('ScrolledWindow', width => 500, height => 300, child => $treeview),
+ 0, gtknew('VBox', children_loose => [
+ gtknew('ScrolledWindow', child => $profiles),
+ gtknew('VButtonBox', children_loose => [
+ gtksignal_connect(gtknew('Button', text => N("Add profile")), clicked => \&add_profile),
+ gtksignal_connect(gtknew('Button', text => N("Clone profile")), clicked => sub {
+ network::pxe::clone_profile($profiles_conf, $profiles->{data}[$_][0]) foreach $profiles->get_selected_indices;
+ refresh_profiles();
+ }),
+ gtksignal_connect(gtknew('Button', text => N("Remove profile")), clicked => sub {
+ network::pxe::remove_profile($profiles_conf, $profiles->{data}[$_][0]) foreach $profiles->get_selected_indices;
+ refresh_profiles();
+ }),
+ ]),
+ gtknew('HSeparator'),
+ gtknew('VButtonBox', children_loose => [
+ gtksignal_connect($install_button = gtknew('Button', text => N("Edit installation settings")), clicked => sub {
+ run_program::raw({ detach => 1 }, 'drakpxelinux', '--type=install', '--profile=' . $profiles->{data}[$_][0]) foreach $profiles->get_selected_indices;
+ }),
+ gtksignal_connect(gtknew('Button', text => N("Edit boot settings")), clicked => sub {
+ run_program::raw({ detach => 1 }, 'drakpxelinux', '--type=boot', '--profile=' . $profiles->{data}[$_][0]) foreach $profiles->get_selected_indices;
+ }),
+ ]),
+ ]),
+ ]
+ ),
+ 0, gtknew('HBox',
children => [
- 0, gtknew('VButtonBox', children_loose => [
+ 0, gtknew('HButtonBox', children_loose => [
gtksignal_connect(set_help_tip(Gtk2::Button->new(N("Add PXE entry")), 'addpxe'), clicked => sub {
eval { wizard_add_entry($model, $treeview) };
my $err = $@;
@@ -988,13 +1014,13 @@ gtkpack($w->{window},
edit_box_item($model, $treeview) }),
gtksignal_connect(set_help_tip(Gtk2::Button->new(N("Apply")), 'apply'), clicked => sub { write_conf }),
],),
- 0, gtknew('HSeparator'),
- 0, gtknew('VButtonBox', children_loose => [
+ 0, gtknew('VSeparator'),
+ 0, gtknew('HButtonBox', children_loose => [
gtknew('Label', text => N("Default boot:")),
$labelscombo,
]),
- 0, gtknew('HSeparator'),
- 0, gtknew('VButtonBox', children_loose => [
+ 0, gtknew('VSeparator'),
+ 0, gtknew('HButtonBox', children_loose => [
gtksignal_connect(set_help_tip(Gtk2::Button->new(N("Reconfigure PXE Server")), 'wizardsrv'), clicked => sub {
eval { wizard_pxe_server() };
my $err = $@;
@@ -1008,37 +1034,7 @@ gtkpack($w->{window},
gtksignal_connect(new Gtk2::Button(N("Help")), clicked => \&show_help),
]),
]),
- ]),
- gtknew('Label', text => N("Profiles")),
- gtknew('HBox', spacing => 1,
- children_loose => [
- gtknew('ScrolledWindow', child => $profiles),
- gtknew('VBox',
- children_loose => [
- gtknew('VButtonBox', children_loose => [
- gtksignal_connect(gtknew('Button', text => N("Add profile")), clicked => \&add_profile),
- gtksignal_connect(gtknew('Button', text => N("Clone profile")), clicked => sub {
- network::pxe::clone_profile($profiles_conf, $profiles->{data}[$_][0]) foreach $profiles->get_selected_indices;
- refresh_profiles();
- }),
- gtksignal_connect(gtknew('Button', text => N("Remove profile")), clicked => sub {
- network::pxe::remove_profile($profiles_conf, $profiles->{data}[$_][0]) foreach $profiles->get_selected_indices;
- refresh_profiles();
- }),
- ]),
- gtknew('HSeparator'),
- gtknew('VButtonBox', children_loose => [
- gtksignal_connect($install_button = gtknew('Button', text => N("Edit installation settings")), clicked => sub {
- run_program::raw({ detach => 1 }, 'drakpxelinux', '--type=install', '--profile=' . $profiles->{data}[$_][0]) foreach $profiles->get_selected_indices;
- }),
- gtksignal_connect(gtknew('Button', text => N("Edit boot settings")), clicked => sub {
- run_program::raw({ detach => 1 }, 'drakpxelinux', '--type=boot', '--profile=' . $profiles->{data}[$_][0]) foreach $profiles->get_selected_indices;
- }),
- ]),
- ]),
- ]),
-
-
+ ]),
gtknew('Label', text => N("Systems")),
gtknew('VBox', spacing => 1,
children => [