Author: sparky                       Date: Fri Dec  1 23:52:48 2006 GMT
Module: vfmg                          Tag: HEAD
---- Log message:
- xpde backend

---- Files affected:
vfmg/VFMG:
   xpde_out.pm (NONE -> 1.1)  (NEW)

---- Diffs:

================================================================
Index: vfmg/VFMG/xpde_out.pm
diff -u /dev/null vfmg/VFMG/xpde_out.pm:1.1
--- /dev/null   Sat Dec  2 00:52:48 2006
+++ vfmg/VFMG/xpde_out.pm       Sat Dec  2 00:52:43 2006
@@ -0,0 +1,38 @@
+package VFMG::Output;
+
+use strict;
+use warnings;
+use File::Path qw(mkpath);
+
+sub destdir {
+       return "$ENV{'HOME'}/.xpde/Start Menu/Programs";
+}
+
+sub xpde {
+       my ($no, $dir) = @_;
+       foreach my $entry (keys %{$main::menu[$no]}) {
+               my $d = $main::desktop[$entry];
+               my $name = main::encode($main::opt{encoding},$$d{Name});
+               if ($main::menu[$no]{$entry} < 0) {
+                       $name =~ s/\"/\\\"/g;
+                       my $icon = "";
+                       $icon = main::scale_icon($$d{Icon}) if 
$main::opt{icons};
+                       open F_OUT, ">> $dir/$$d{file}.lnk" or warn 
"$dir/$$d{file}.lnk: $!\n";
+                       print F_OUT "[Shortcut]\n",
+                                               "Caption=$name\n",
+                                               "Command=$$d{Exec}\n";
+                       print F_OUT "Icon=$icon\n" if length $icon;
+                       close F_OUT;
+               } else {
+                       $name =~ s#/##g;
+                       mkpath("$dir/$name",0,0700);
+                       xpde($main::menu[$no]{$entry}, "$dir/$name");
+               }
+       }
+}
+
+sub do_menu() {
+       xpde($main::opt{strip}, $main::opt{destdir});
+}
+
+1;
================================================================
_______________________________________________
pld-cvs-commit mailing list
[email protected]
http://lists.pld-linux.org/mailman/listinfo/pld-cvs-commit

Reply via email to