vfmg (DEVEL): vfmg - fixed: qw(metisse olvwm qvwm aewm xpde)

sparky sparky at pld-linux.org
Mon Oct 31 04:38:51 CET 2005


Author: sparky                       Date: Mon Oct 31 03:38:51 2005 GMT
Module: vfmg                          Tag: DEVEL
---- Log message:
- fixed: qw(metisse olvwm qvwm aewm xpde)

---- Files affected:
vfmg:
   vfmg (1.73.2.9 -> 1.73.2.10) 

---- Diffs:

================================================================
Index: vfmg/vfmg
diff -u vfmg/vfmg:1.73.2.9 vfmg/vfmg:1.73.2.10
--- vfmg/vfmg:1.73.2.9	Mon Oct 31 03:38:58 2005
+++ vfmg/vfmg	Mon Oct 31 04:38:45 2005
@@ -850,103 +850,101 @@
 } # }}}
 
 sub metisse { # {{{
-	my $no=$_[0];
-	my $file=$_[1];
+	my ( $no, $file, $basename ) = @_;
 	$file=~s|^\.||;
-	my $basename=$_[2];
 	my $icon="";
-	foreach my $entry(keys %{$menu[$no]}) {
-		if($menu[$no]{$entry}[0]>=0) {
-			$name=substr($entry,1);
-			$name=~s|/||g;
-			my $menutitle=$name;
-			$name=~s/\s+/_/g;
-		      metisse($menu[$no]{$entry}[0],"$file.$name","$menutitle");
+	foreach my $entry (keys %{$menu[$no]}) {
+		if($menu[$no]{$entry} >= 0) {
+			$name = $desktop{$entry}[0];
+			$name =~ s|/||g;
+			$name =~ s/\s+/_/g;
+			metisse($menu[$no]{$entry},"$file.$name",$desktop{$entry}[1]);
 		}
 	}
-	if (!$file) {
-		return;
-	}
+	return unless length $file;
+	
+	my $apps="";
 	print "DestroyMenu $file\n";
 	print "AddToMenu $file \"$basename\" Title\n";
-	foreach my $entry(sort keys %{$menu[$no]}) {
-		$icon=$menu[$no]{$entry}[1] if $o_icons;
-		$icon=scale_icon($icon,"png","-geometry","21x18") if $icon;
-		$icon="\%$icon\%" if $icon;
+	foreach my $entry (sort {$desktop{$a}[1] cmp $desktop{$b}[1]} keys %{$menu[$no]}) {
+		my $d = $desktop{$entry};
+		$icon = $$d[2] if $o_icons;
+		$icon = scale_icon($icon,"png","-geometry","21x18") if $icon;
+		$icon = "\%$icon\%" if $icon;
 		
-		if($menu[$no]{$entry}[0]<0) {
-			$name=$entry;
-			$name=~s/\"/\\\"/g;
-			print "+ \"$icon$name\"\tExec exec $menu[$no]{$entry}[2]\n";
-		} else {
-			$name=substr($entry,1);
-			$name=~s|/||g;
-			my $menutitle=$name;
-			$name=~s/\s+/_/g;
-			print "+ \"$icon$menutitle\"\tPopup\t$file.$name\n";
+		if($menu[$no]{$entry}<0) {
+			$name = $$d[1];
+			$name =~ s/\"/\\\"/g;
+			$apps .= "+ \"$icon$name\"\tExec exec $$d[3]\n";
+		} else {
+			$name = $$d[0];
+			$name =~ s|/||g;
+			$name =~ s/\s+/_/g;
+			print "+ \"$icon$$d[1]\"\tPopup\t$file.$name\n";
 		}
 	}
-	print "\n";
+	print $apps. "\n";
 } # }}}
 
 sub olvwm { # {{{
 	my $no=$_[0];
-	foreach my $entry(sort keys %{$menu[$no]}) {
-		print "$level";
-		my $name=$entry;
-		$name=~s/\"/\\\"/g;
-		if($menu[$no]{$entry}[0]<0) {
-			print "\"$name\"	exec $menu[$no]{$entry}[2]\n";
+	my $apps="";
+	foreach my $entry (sort {$desktop{$a}[1] cmp $desktop{$b}[1]} keys %{$menu[$no]}) {
+		my $d = $desktop{$entry};
+		( my $name = $$d[1] ) =~ s/\"/\\\"/g;
+		if($menu[$no]{$entry}<0) {
+			$apps .= "$level\"$name\"	exec $$d[3]\n";
 		} else {
-			$name=substr($name,1);
-			print "\"$name\" MENU\n";
+			print "$level\"$name\" MENU\n";
 			$level.="	";
-			olvwm($menu[$no]{$entry}[0]);
+			olvwm($menu[$no]{$entry});
 			$level=substr($level,1);
 			print "$level\"$name\" END PIN\n";
 		}
 	}
+	print $apps;
 } # }}}
 
 sub qvwm { # {{{
 	my $no=$_[0];
-	foreach my $entry(sort keys %{$menu[$no]}) {
-		print "$level";
-		$name=$entry;
-		$name=~s/\"/\\\"/g;
-		if($menu[$no]{$entry}[0]<0) {
-			$menu[$no]{$entry}[2]=~s/\"/\\\"/g;
-			print "\"$name\" \"$menu[$no]{$entry}[1]\" \"$menu[$no]{$entry}[2]\"\n";
+	my $apps="";
+	foreach my $entry (sort {$desktop{$a}[1] cmp $desktop{$b}[1]} keys %{$menu[$no]}) {
+		my $d = $desktop{$entry};
+		( my $name = $$d[1] ) =~ s/\"/\\\"/g;
+		if($menu[$no]{$entry}<0) {
+			( my $exec = $$d[3] ) =~ s/\"/\\\"/g;
+			$apps .= "${level}\"$name\" \"$$d[2]\" \"$exec\"\n";
 		} else {
-			$name=substr($name,1);
-			print "\"$name\" \"$menu[$no]{$entry}[1]\"\n$level+\n";
+			print "${level}\"$name\" \"$$d[2]\"\n",
+				"$level+\n";
 			$level.="	";
-			qvwm($menu[$no]{$entry}[0]);
+			qvwm($menu[$no]{$entry});
 			$level=substr($level,1);
 			print "$level-\n";
 		}
 	}
+	print $apps;
 } # }}}
 
 sub aewm { # {{{
 	my $no=$_[0];
 	my $name;
-	foreach my $entry(sort keys %{$menu[$no]}) {
-		print "$level";
-		$name=$entry;
-		$name=~s/\"/\\\"/g;
-		if($menu[$no]{$entry}[0]<0) {
-			$menu[$no]{$entry}[2]=~s/\"/\\\"/g;
-			print "cmd \"$name\" \"$menu[$no]{$entry}[2]\"\n";
+	my $apps="";
+	foreach my $entry (sort {$desktop{$a}[1] cmp $desktop{$b}[1]} keys %{$menu[$no]}) {
+		my $d = $desktop{$entry};
+		( my $name = $$d[1] ) =~ s/\"/\\\"/g;
+		if($menu[$no]{$entry}<0) {
+			( my $exec = $$d[3] ) =~ s/\"/\\\"/g;
+			$apps .= "${level}cmd \"$name\" \"$exec\"\n";
 		} else {
-			$name=substr($name,1);
-			print "menu \"$name\"\n";
+			print "${level}menu \"$name\"\n";
 			$level.="	";
-			aewm($menu[$no]{$entry}[0]);
+			aewm($menu[$no]{$entry});
 			$level=substr($level,1);
 			print "${level}end\n";
 		}
 	}
+	print $apps;
 } # }}}
 
 sub enlightenment { # {{{
@@ -955,7 +953,7 @@
 	open $F_OUT, ">> $dir/$mfile.menu" or warn "$dir/$mfile.menu: $!\n";
 	print $F_OUT "\"$title\"\n";
 	my $apps="";
-	foreach my $entry(sort {$desktop{$a}[1] cmp $desktop{$b}[1]} keys %{$menu[$no]}) {
+	foreach my $entry (sort {$desktop{$a}[1] cmp $desktop{$b}[1]} keys %{$menu[$no]}) {
 		my $d = $desktop{$entry};
 		$name=encode($o_enc,$$d[1]);
 		$name=~s/\"/\'/g;
@@ -974,23 +972,22 @@
 } # }}}
 
 sub xpde { # {{{
-	my $no=$_[0];
-	my $dir=$_[1];
-	foreach my $entry(keys %{$menu[$no]}) {
-		$name=$entry;
-		if($menu[$no]{$entry}[0]<0) {
-			$file=$entry;
-			$file=~s|/||g;
-			$name=~s/\"/\\\"/g;
-			open F_OUT, ">> $dir/$file.lnk" or warn "$dir/$file.lnk: $!\n";
-			print F_OUT "[Shortcut]\nCaption=$name\nCommand=$menu[$no]{$entry}[2]\n";
-			print F_OUT "Icon=$menu[$no]{$entry}[1]\n" if $menu[$no]{$entry}[1] ne "";
+	my ($no, $dir)=@_;
+	foreach my $entry (keys %{$menu[$no]}) {
+		my $d = $desktop{$entry};
+		$name = encode($o_enc,$$d[1]);
+		if($menu[$no]{$entry}<0) {
+			$name =~ s/\"/\\\"/g;
+			open F_OUT, ">> $dir/$$d[0].lnk" or warn "$dir/$$d[0].lnk: $!\n";
+			print F_OUT "[Shortcut]\n",
+						"Caption=$name\n",
+						"Command=$$d[3]\n";
+			print F_OUT "Icon=$$d[2]\n" if length $$d[2];
 			close F_OUT;
 		} else {
-			$name=substr($name,1);
-			$name=~s|/||g;
+			$name =~ s|/||g;
 			mkpath("$dir/$name",0,0700);
-			xpde($menu[$no]{$entry}[0],"$dir/$name");
+			xpde($menu[$no]{$entry},"$dir/$name");
 		}
 	}
 } # }}}
@@ -998,7 +995,7 @@
 sub fbpanel { # {{{
 	my $no=$_[0];
 	my $apps="";
-	foreach my $entry(sort {$desktop{$a}[1] cmp $desktop{$b}[1]} keys %{$menu[$no]}) {
+	foreach my $entry (sort {$desktop{$a}[1] cmp $desktop{$b}[1]} keys %{$menu[$no]}) {
 		my $d = $desktop{$entry};
 		if($menu[$no]{$entry}<0) {
 			$apps .=
@@ -1023,7 +1020,7 @@
 sub openbox { # {{{
 	my $no=$_[0];
 	my $apps="";
-	foreach my $entry(sort {$desktop{$a}[1] cmp $desktop{$b}[1]} keys %{$menu[$no]}) {
+	foreach my $entry (sort {$desktop{$a}[1] cmp $desktop{$b}[1]} keys %{$menu[$no]}) {
 		my $d = $desktop{$entry};
 		if($menu[$no]{$entry}<0) {
 			$apps .=
================================================================

---- CVS-web:
    http://cvs.pld-linux.org/vfmg/vfmg?r1=1.73.2.9&r2=1.73.2.10&f=u




More information about the pld-cvs-commit mailing list