summaryrefslogtreecommitdiffstats
path: root/perl-install/standalone
diff options
context:
space:
mode:
Diffstat (limited to 'perl-install/standalone')
-rwxr-xr-xperl-install/standalone/drakfont228
1 files changed, 67 insertions, 161 deletions
diff --git a/perl-install/standalone/drakfont b/perl-install/standalone/drakfont
index c88a8a005..018986b6d 100755
--- a/perl-install/standalone/drakfont
+++ b/perl-install/standalone/drakfont
@@ -84,6 +84,7 @@ my $mode = -1;
my @application;
my @install;
my @uninstall;
+my $interactive;
foreach (@ARGV) {
/--xls_fonts/ and $xlsfonts = 1, $mode=-1;
@@ -144,6 +145,10 @@ my @fontsdir_to_install;
my @fontsdir_to_uninstall;
my @installed_fonts_full_path;
+my $pbar;
+my $pbar1;
+my $pbar2;
+my $pbar3;
sub list_fontpath {
foreach (grep { /\d+:\s/ } `$chkfontpath -l`) {
@@ -173,12 +178,14 @@ sub search_windows_font {
my $win_dir = (split('\s', $fstab_line))[1];
my @list_fonts_win = all("$win_dir/windows/fonts");
my @list_fonts_winnt = all("$win_dir/winnt/fonts");
+ my $nb_dir = @list_fonts_win + @list_fonts_winnt;
if(!@list_fonts_win && !@list_fonts_winnt) {
print "drakfont:: could not find any font in $win_dir/win*/fonts \n";
return 0;
}
foreach $_ ([\@list_fonts_win, "windows"], [\@list_fonts_winnt, "winnt"]) {
foreach my $i (@{$_->[0]}) {
+ $interactive and progress($pbar, 100/$nb_dir);
!$replace && grep(/$i/, @installed_fonts) and next;
grep ( /$i$/, @font_list) or push @font_list, "$win_dir/$_->[1]/fonts/$i";
}
@@ -187,7 +194,6 @@ sub search_windows_font {
1;
}
-
sub is_a_font {
local $_ = $_[0];
/.ttf$/i || /.pfa$/i || /.pfb$/i || /.pcf$/i || /.pcf.gz$/i || /.pfm$/i || /.gsf$/;
@@ -240,7 +246,6 @@ sub search_dir_font_uninstall {
print "Fonts to uninstal : " . $_ . "\n" foreach (@font_list);
}
-
sub print_list { print "Font(s) to Install :\n\n"; print "$_\n" foreach (@font_list) }
sub dir_created {
@@ -253,7 +258,6 @@ sub dir_created {
-e $drakfont_dir . "/tmp/tmp" || mkdir_p($drakfont_dir."/tmp/tmp");
}
-
sub put_font_dir {
-e "/usr/share/ghostscript" or $gs = 0 && print "ghostscript is not installed on your system...\n" ;
if (@font_list) {
@@ -301,12 +305,11 @@ sub put_font_dir {
}
}
-
sub remove_gs_fonts {
my @Fontmap_new;
if (all("$drakfont_dir/remove")) {
- system (" cd $drakfont_dir/remove && $type1inst && touch tttttttttt");
+ system (" cd $drakfont_dir/remove && $type1inst");
my @Fontmap_out = cat_("$drakfont_dir/remove/Fontmap");
my $FontmapGS = `rpm -ql ghostscript | grep Fontmap.GS`;
chomp ($FontmapGS);
@@ -320,8 +323,6 @@ sub remove_gs_fonts {
}
}
-
-
sub remove_fonts {
my @list_dir;
my @toto;
@@ -350,14 +351,10 @@ sub remove_fonts {
-e "/usr/share/ghostscript" and rm_rf("$drakfont_dir/remove");
}
-
sub lisence_msg {
print _("Before installing any fonts, be sure that you have the right to use and install them on your system.\n\n-You can install the fonts using the normal way. In rare cases, bogus fonts may hang up your X Server.\n-You can install the fonts with strong verification. In this case, bogus fonts won't be installed, but some useable fonts won't be too.\n\nIf you have many fonts, or exotic fonts, I recommend strong verification mode.")."\n";
}
-
-
-
$xlsfonts || $windows || @install || @uninstall ? backend_mod() : interactive_mode();
sub backend_mod {
@@ -396,19 +393,8 @@ sub backend_mod {
}
}
-
####################################### INTERACTIVE ######################################################################
-
-my $true;
-my $pbar;
-my $pbar1;
-my $pbar2;
-my $pbar3;
-my $adj;
-my $adj1;
-my $adj2;
-my $adj3;
my $font_box;
my $check4;
@@ -419,164 +405,84 @@ my $check3;
sub interactive_mode {
init Gtk;
-
-
-sub result_gi {
- my $window3 = $::isEmbedded ? new Gtk::Plug ($::XID) : new Gtk::Window -toplevel;
- $window3->signal_connect ( delete_event => sub { Gtk->exit(0); });
- $window3->set_position(1);
- $window3->set_title(_("Fonts Importation"));
- $window3->set_policy(1, 1, 1);
- $window3->set_border_width(5);
-
- gtkadd($window3,
- gtkpack_(new Gtk::HBox(0,6),
- 1, my $notebook = new Gtk::FontSelection,
- 0, gtkadd(gtkset_layout(new Gtk::VButtonBox, -end),
- _("DrakFont"),
- gtksignal_connect(new Gtk::Button(_("Windows Importation")), clicked => sub { $windows = 1; backend_mod() }),
- gtksignal_connect(new Gtk::Button(_("Advanced Importation")), clicked => sub { $window3->destroy(); install_gi() }),
- gtksignal_connect(new Gtk::Button(_("Uninstall Fonts")), clicked => sub { Gtk->main_quit() }),
- gtksignal_connect(new Gtk::Button(_("Close")), clicked => sub { Gtk->main_quit() }),
- )
- ),
- );
- $window3->show_all;
- $window3->realize;
- $window3->show_all();
-}
-
-
-
-
-sub import_status {
- my $window2 = $::isEmbedded ? new Gtk::Plug ($::XID) : new Gtk::Window -toplevel;
- my $align;
-
- $window2->signal_connect ( delete_event => sub { $window2->destroy(); result_gi });
- $window2->set_position(1);
- $window2->set_title(_("Fonts Importation"));
- $window2->set_policy(1, 1, 1);
- $window2->set_border_width(5);
- $adj = new Gtk::Adjustment( 0, 1, 300, 0, 0, 0 );
- $adj1 = new Gtk::Adjustment( 0, 1, 300, 0, 0, 0 );
- $adj2 = new Gtk::Adjustment( 0, 1, 300, 0, 0, 0 );
- $adj3 = new Gtk::Adjustment( 0, 1, 300, 0, 0, 0 );
- gtkadd($window2,
- gtkpack__(new Gtk::VBox(0,0),
- create_packtable({ col_spacings => 30, row_spacings => 20},
- [ "Work", "Status" , "Valid"],
-# [ _("Sending Speed:"), my $label_st = new Gtk::Label(""), my $label_sta=new Gtk::Label("na")],
-# [ _("Receiving Speed:"),my $label_sr= new Gtk::Label(""), my $label_sra=new Gtk::Label("na")],
- # ),
-# gtkpack_(new Gtk::VBox(0,6),
- [_("Search Fonts on your System"), $pbar = new_with_adjustment Gtk::ProgressBar( $adj ), $check1 = new Gtk::CheckButton()],
- ["Supress Doublons ", $pbar1 = new_with_adjustment Gtk::ProgressBar( $adj1 ),$check2 = new Gtk::CheckButton()],
- ["Install Fonts ", $pbar2 = new_with_adjustment Gtk::ProgressBar( $adj2 ),$check3 = new Gtk::CheckButton()],
- ["Post Install Fonts ", $pbar3 = new_with_adjustment Gtk::ProgressBar( $adj3 ),$check4 = new Gtk::CheckButton()],
- ),
- gtkadd(gtkset_layout(new Gtk::VButtonBox, -end),
-# _("DrakFont"),
-
- )
- ),
- );
-
- my $timer = Gtk->timeout_add( 5, \&progress_timeout );
- my $timer1 = Gtk->timeout_add( 10, \&progress_timeout1 );
- my $timer2 = Gtk->timeout_add( 15, \&progress_timeout2 );
- my $timer3 = Gtk->timeout_add( 20, \&progress_timeout3 );
-# $check4->set_active;
-# gtkset_active($check4 , 1);
-# $check4 -> set_active =1;
-
- $window2->show_all;
- $window2->realize;
- $window2->show_all();
-}
-
-sub main_gi {
- my $window1 = $::isEmbedded ? new Gtk::Plug ($::XID) : new Gtk::Window -toplevel;
- $window1->signal_connect ( delete_event => sub { Gtk->exit(0); });
+$interactive = 1;
+#sub main_gi {
+ my $window1 = $::isEmbedded ? new Gtk::Plug ($::XID) : new Gtk::Window -toplevel;
+ $window1->signal_connect (delete_event => sub { Gtk->exit(0) });
$window1->set_position(1);
$window1->set_title(_("Fonts Importation"));
- $window1->set_policy(1, 1, 1);
+# $window1->set_policy(1, 1, 1);
$window1->set_border_width(5);
-
- gtkadd($window1,
+ my $font_sel;
+ gtkadd($window1,
gtkpack_(new Gtk::HBox(0,2),
- 0, gtkpack_(new Gtk::HBox(0,5),
+ 1, gtkpack_(new Gtk::VBox(0,0),
+ 1, new Gtk::VBox(0,0),
0, gtkpack($font_box = new Gtk::VBox(0,5),
- my $font_sel = new Gtk::FontSelection,
- )
+ $font_sel = new Gtk::FontSelection,
+ ),
+ 1, new Gtk::VBox(0,0)
),
- 0, gtkadd(gtkset_layout(new Gtk::VButtonBox, -end),
- _("DrakFont"),
- gtksignal_connect(new Gtk::Button(_("Windows Importation")), clicked => sub { $windows = 1; backend_mod(); }),
- gtksignal_connect(new Gtk::Button(_("Advanced Importation")), clicked => sub {
- gtkdestroy($font_box); import_status();
- }),
- gtksignal_connect(new Gtk::Button(_("Uninstall Fonts")), clicked => sub { Gtk->main_quit() }),
- gtksignal_connect(new Gtk::Button(_("Close")), clicked => sub { Gtk->main_quit() }),
- ),
+ 0, gtkpack_(new Gtk::VBox(0,5),
+ 0, _("DrakFont"),
+ 0, gtkadd(gtkset_layout(new Gtk::VButtonBox, -end),
+ gtksignal_connect(new Gtk::Button(_("Windows Importation")), clicked =>
+ sub { $windows = 1; backend_mod(); }),
+ gtksignal_connect(new Gtk::Button(_("Advanced Importation")), clicked =>
+ sub { gtkdestroy($font_sel); import_status(); search_windows_font();
+ }),
+ gtksignal_connect(new Gtk::Button(_("Uninstall Fonts")), clicked => sub { Gtk->main_quit() }),
+ ),
+ 1, new Gtk::VBox(0,0),
+ 0, gtkadd(gtkset_layout(new Gtk::VButtonBox, -end),
+ gtksignal_connect(new Gtk::Button(_("Help")), clicked => sub { print _("Help\n") }),
+ gtksignal_connect(new Gtk::Button(_("Close")), clicked => sub { Gtk->main_quit() }),
+ ),
+ )
),
);
$window1->show_all;
$window1->realize;
$window1->show_all();
+#}
-}
-
-main_gi;
+#main_gi;
Gtk->main;
Gtk->exit(0);
}
-
-
-sub progress_timeout {
- my $new_val;
- my $adjt;
- $new_val = $pbar->get_value() + 5;
- $adjt = $pbar->adjustment; 1;
- $pbar->set_value( $new_val );
- $new_val < 300 || gtkset_active($check1 , 1);
- $new_val < 300 ;
-}
-
-
-sub progress_timeout1 {
- my $new_val;
- my $adjt;
-# my $tmmm = $pbar1->get_value("MAX");
- $new_val = $pbar1->get_value() + 4;
- $adjt = $pbar1->adjustment;
-# $new_val = $adjt->lower if ( $new_val > $adjt->upper );
- $pbar1->set_value( $new_val );
- $new_val < 300 || gtkset_active($check2 , 1);
- $new_val < 300 ;
-}
-
-sub progress_timeout2 {
- my $new_val;
- my $adjt;
- $new_val = $pbar2->get_value() + 3;
- $adjt = $pbar2->adjustment;
- $pbar2->set_value( $new_val );
- $new_val < 300 || gtkset_active($check3 , 1);
- $new_val < 300 ;
-
+sub import_status {
+ my $adj = new Gtk::Adjustment( 0, 1, 100, 0, 0, 0 );
+ my $adj1 = new Gtk::Adjustment( 0, 1, 100, 0, 0, 0 );
+ my $adj2 = new Gtk::Adjustment( 0, 1, 100, 0, 0, 0 );
+ my $adj3 = new Gtk::Adjustment( 0, 1, 100, 0, 0, 0 );
+ my $table;
+ gtkpack($font_box,
+ $table = create_packtable({ col_spacings => 30, row_spacings => 20},
+ [_("Search Fonts on your System"), $pbar = new_with_adjustment Gtk::ProgressBar($adj), gtkset_sensitive($check1 = new Gtk::CheckButton(), 0)],
+ ["Supress Doublons ", $pbar1 = new_with_adjustment Gtk::ProgressBar($adj1), gtkset_sensitive($check2 = new Gtk::CheckButton(), 0)],
+ ["Install Fonts ", $pbar2 = new_with_adjustment Gtk::ProgressBar($adj2), gtkset_sensitive($check3 = new Gtk::CheckButton(), 0)],
+ ["Post Install Fonts ", $pbar3 = new_with_adjustment Gtk::ProgressBar($adj3), gtkset_sensitive($check4 = new Gtk::CheckButton(), 0)],
+ ),
+ );
+ $font_box->show_all();
+# my $timer = Gtk->timeout_add( 5, \&progress_timeout );
+# my $timer1 = Gtk->timeout_add( 10, \&progress_timeout1 );
+# my $timer2 = Gtk->timeout_add( 15, \&progress_timeout2 );
+# my $timer3 = Gtk->timeout_add( 20, \&progress_timeout3 );
+ my $timer4 = Gtk->timeout_add( 5000, sub { $table->destroy(); gtkpack($font_box, "c fini") });
}
-sub progress_timeout3 {
- my $new_val;
- my $adjt;
- $new_val = $pbar3->get_value() + 2;
- $adjt = $pbar3->adjustment;
- $pbar3->set_value( $new_val );
- $new_val < 300 || gtkset_active($check4 , 1);
- $new_val < 300;
+sub progress {
+ my ($bar, $incr) = @_;
+ my $new_val;
+ my $adjt;
+ $new_val = $pbar->get_value() + $incr;
+ $adjt = $bar->adjustment;
+ $bar->set_value( $new_val );
+ $new_val < 100 || gtkset_active($check1 , 1);
+ $new_val < 100 ;
}