mirror of
https://github.com/fspc/gbootroot.git
synced 2025-02-22 08:33:24 -05:00
* Now $ars is global to the program and can be called with ars(). This
covers (filename, filesystem_size, kernel, template_directory, template).
This commit is contained in:
parent
131e7afcb5
commit
1cb92862bc
25
YardBox.pm
25
YardBox.pm
@ -23,7 +23,7 @@ package YardBox;
|
|||||||
use vars qw(@ISA @EXPORT %EXPORT_TAGS);
|
use vars qw(@ISA @EXPORT %EXPORT_TAGS);
|
||||||
use Exporter;
|
use Exporter;
|
||||||
@ISA = qw(Exporter);
|
@ISA = qw(Exporter);
|
||||||
@EXPORT = qw(yard yard_box);
|
@EXPORT = qw(yard ars);
|
||||||
|
|
||||||
use strict;
|
use strict;
|
||||||
use Yard;
|
use Yard;
|
||||||
@ -45,6 +45,19 @@ my $lib_bool = 1;
|
|||||||
my $bin_bool = 1;
|
my $bin_bool = 1;
|
||||||
my $mod_bool = 1;
|
my $mod_bool = 1;
|
||||||
|
|
||||||
|
my $ars;
|
||||||
|
sub ars { $ars = $_[0];
|
||||||
|
|
||||||
|
$filename = $ars->{filename};
|
||||||
|
$filesystem_size = $ars->{filesystem_size};
|
||||||
|
$kernel = $ars->{kernel};
|
||||||
|
$template_dir = $ars->{template_directory};
|
||||||
|
$template = $ars->{template};
|
||||||
|
$tmp = $ars->{tmp};
|
||||||
|
$mnt = $ars->{mnt};
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
my @menu_items = ( { path => '/File',
|
my @menu_items = ( { path => '/File',
|
||||||
type => '<Branch>' },
|
type => '<Branch>' },
|
||||||
{ path => '/File/file_tearoff',
|
{ path => '/File/file_tearoff',
|
||||||
@ -181,16 +194,6 @@ my @menu_items = ( { path => '/File',
|
|||||||
# YARD
|
# YARD
|
||||||
######
|
######
|
||||||
sub yard {
|
sub yard {
|
||||||
|
|
||||||
my ($ars) = @_;
|
|
||||||
|
|
||||||
$filename = $ars->{filename};
|
|
||||||
$filesystem_size = $ars->{filesystem_size};
|
|
||||||
$kernel = $ars->{kernel};
|
|
||||||
$template_dir = $ars->{template_directory};
|
|
||||||
$template = $ars->{template};
|
|
||||||
$tmp = $ars->{tmp};
|
|
||||||
$mnt = $ars->{mnt};
|
|
||||||
|
|
||||||
|
|
||||||
# Error handling in Yard will take some strategy
|
# Error handling in Yard will take some strategy
|
||||||
|
53
gBootRoot
53
gBootRoot
@ -154,6 +154,7 @@ my ($adj2,$adj3);
|
|||||||
my @strings;
|
my @strings;
|
||||||
my ($root_device,$root_filename,$method,$template,$filesystem_size,
|
my ($root_device,$root_filename,$method,$template,$filesystem_size,
|
||||||
$root_device_size);
|
$root_device_size);
|
||||||
|
my $ars = {}; # anonymous hash
|
||||||
|
|
||||||
# My own creation - the roots touch the ground if three lines are added.
|
# My own creation - the roots touch the ground if three lines are added.
|
||||||
my @xpm_data = (
|
my @xpm_data = (
|
||||||
@ -342,9 +343,15 @@ $opt->show();
|
|||||||
$box2->show();
|
$box2->show();
|
||||||
|
|
||||||
# Second row
|
# Second row
|
||||||
|
# Get to look three places for kernel value
|
||||||
|
# default ( null|gdkkbirdaao) && entry() && fileselect->file_ok_sel
|
||||||
hbox();
|
hbox();
|
||||||
my $entry2 = entry($true,1);
|
my $entry2 = entry($true,1);
|
||||||
$entry2->set_text($container[1]);
|
$entry2->set_text($container[1]);
|
||||||
|
if ($container[1]) {
|
||||||
|
$ars->{kernel} = $container[1];
|
||||||
|
ars($ars);
|
||||||
|
}
|
||||||
button("Kernel Selection",$entry2,"Kernel Selection",1);
|
button("Kernel Selection",$entry2,"Kernel Selection",1);
|
||||||
|
|
||||||
# Third row
|
# Third row
|
||||||
@ -751,6 +758,8 @@ sub advanced_root_section {
|
|||||||
label_advanced("Root Filename:",0,1,2,3,$table_advanced_root);
|
label_advanced("Root Filename:",0,1,2,3,$table_advanced_root);
|
||||||
$ear2 = entry_advanced(1,2,2,3,4,$table_advanced_root);
|
$ear2 = entry_advanced(1,2,2,3,4,$table_advanced_root);
|
||||||
$ear2->set_text("root_fs");
|
$ear2->set_text("root_fs");
|
||||||
|
$ars->{filename} = "root_fs";
|
||||||
|
ars($ars);
|
||||||
$tooltips->set_tip( $ear2, "Give the Root Filesystem file a name.",
|
$tooltips->set_tip( $ear2, "Give the Root Filesystem file a name.",
|
||||||
"" );
|
"" );
|
||||||
my $ear2_save = new Gtk::CheckButton("save");
|
my $ear2_save = new Gtk::CheckButton("save");
|
||||||
@ -782,8 +791,13 @@ sub advanced_root_section {
|
|||||||
$spinner_size->set_shadow_type( 'in' );
|
$spinner_size->set_shadow_type( 'in' );
|
||||||
$spinner_size->show();
|
$spinner_size->show();
|
||||||
$filesystem_size = 4096 if !$filesystem_size;
|
$filesystem_size = 4096 if !$filesystem_size;
|
||||||
|
$ars->{filesystem_size} = $filesystem_size;
|
||||||
|
ars($ars);
|
||||||
$adj3->signal_connect( "value_changed", sub {
|
$adj3->signal_connect( "value_changed", sub {
|
||||||
$filesystem_size = $spinner_size->get_value_as_int();});
|
$filesystem_size = $spinner_size->get_value_as_int();
|
||||||
|
$ars->{filesystem_size} = $filesystem_size;
|
||||||
|
ars($ars);
|
||||||
|
});
|
||||||
$spinner_size->set_value($filesystem_size) if $filesystem_size;
|
$spinner_size->set_value($filesystem_size) if $filesystem_size;
|
||||||
|
|
||||||
#_______________________________________
|
#_______________________________________
|
||||||
@ -898,7 +912,10 @@ sub advanced_root_section {
|
|||||||
"" );
|
"" );
|
||||||
$entry_advanced[7] = $combo->entry->get_text(); # nothing selected
|
$entry_advanced[7] = $combo->entry->get_text(); # nothing selected
|
||||||
$combo->entry->signal_connect("changed", sub {
|
$combo->entry->signal_connect("changed", sub {
|
||||||
$entry_advanced[7] = $combo->entry->get_text(); } );
|
$entry_advanced[7] = $combo->entry->get_text();
|
||||||
|
$ars->{template} = $entry_advanced[7];
|
||||||
|
ars($ars);
|
||||||
|
} );
|
||||||
$table_advanced_root->attach($combo,1,3,7,8,
|
$table_advanced_root->attach($combo,1,3,7,8,
|
||||||
['expand','fill'],['fill','shrink'],0,0);
|
['expand','fill'],['fill','shrink'],0,0);
|
||||||
show $combo;
|
show $combo;
|
||||||
@ -964,6 +981,20 @@ sub Generate {
|
|||||||
# $root_device_size;
|
# $root_device_size;
|
||||||
# $filesystem_size;
|
# $filesystem_size;
|
||||||
|
|
||||||
|
$ars->{device} = $entry_advanced[3];
|
||||||
|
$ars->{device_size} = $root_device_size;
|
||||||
|
$ars->{tmp} = $tmp;
|
||||||
|
$ars->{mnt} = $mnt;
|
||||||
|
$ars->{template_dir} = $template_dir; # static right now.
|
||||||
|
ars($ars);
|
||||||
|
|
||||||
|
=pod
|
||||||
|
|
||||||
|
foreach (%$ars) {
|
||||||
|
print $_, "=>", $ars->{$_}, "\n";
|
||||||
|
} return;
|
||||||
|
|
||||||
|
|
||||||
my $ars = { "device" => $entry_advanced[3],
|
my $ars = { "device" => $entry_advanced[3],
|
||||||
"device_size" => $root_device_size,
|
"device_size" => $root_device_size,
|
||||||
"filename" => $entry_advanced[4],
|
"filename" => $entry_advanced[4],
|
||||||
@ -974,6 +1005,7 @@ sub Generate {
|
|||||||
"tmp" => $tmp,
|
"tmp" => $tmp,
|
||||||
"mnt" => $mnt
|
"mnt" => $mnt
|
||||||
};
|
};
|
||||||
|
=cut
|
||||||
|
|
||||||
my $template = $ars->{template};
|
my $template = $ars->{template};
|
||||||
$root_device = $ars->{device};
|
$root_device = $ars->{device};
|
||||||
@ -1004,7 +1036,7 @@ sub Generate {
|
|||||||
|
|
||||||
|
|
||||||
if ($method eq "yard") {
|
if ($method eq "yard") {
|
||||||
yard($ars);
|
yard();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -1057,7 +1089,12 @@ sub entry_advanced {
|
|||||||
my $entry_advanced = new Gtk::Entry();
|
my $entry_advanced = new Gtk::Entry();
|
||||||
$entry_advanced->set_editable( $true );
|
$entry_advanced->set_editable( $true );
|
||||||
$entry_advanced->signal_connect( "changed", sub {
|
$entry_advanced->signal_connect( "changed", sub {
|
||||||
$entry_advanced[$numa] = $entry_advanced->get_text();} );
|
$entry_advanced[$numa] = $entry_advanced->get_text();
|
||||||
|
if ($numa == 4) {
|
||||||
|
$ars->{filename} = $entry_advanced[$numa];
|
||||||
|
ars($ars);
|
||||||
|
}
|
||||||
|
} );
|
||||||
$entry_advanced->set_usize(100,20);
|
$entry_advanced->set_usize(100,20);
|
||||||
$_[5]->attach($entry_advanced,$_[0],$_[1],$_[2],$_[3],
|
$_[5]->attach($entry_advanced,$_[0],$_[1],$_[2],$_[3],
|
||||||
['shrink','fill','expand'],['fill','shrink'],0,0);
|
['shrink','fill','expand'],['fill','shrink'],0,0);
|
||||||
@ -1275,6 +1312,10 @@ sub file_ok_sel {
|
|||||||
my $file = $file_selection->get_filename();
|
my $file = $file_selection->get_filename();
|
||||||
$entry->set_text($file);
|
$entry->set_text($file);
|
||||||
$container[$order] = $file;
|
$container[$order] = $file;
|
||||||
|
if ($order == 1) {
|
||||||
|
$ars->{kernel} = $container[$order];
|
||||||
|
ars($ars);
|
||||||
|
}
|
||||||
|
|
||||||
# auto-detect compression if system has file
|
# auto-detect compression if system has file
|
||||||
if ($container[2]) {
|
if ($container[2]) {
|
||||||
@ -1332,6 +1373,10 @@ sub entry {
|
|||||||
else {
|
else {
|
||||||
$entry->signal_connect( "changed", sub {
|
$entry->signal_connect( "changed", sub {
|
||||||
$container[$num] = $entry->get_text();
|
$container[$num] = $entry->get_text();
|
||||||
|
if ($num == 1) {
|
||||||
|
$ars->{kernel} = $container[$num];
|
||||||
|
ars($ars);
|
||||||
|
}
|
||||||
# here's where types in entry3, types other places
|
# here's where types in entry3, types other places
|
||||||
if (defined $ea1 and $num == 3) {
|
if (defined $ea1 and $num == 3) {
|
||||||
$ea1->set_text($container[$num]);
|
$ea1->set_text($container[$num]);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user