my $oxygen = shift;
my $source = "../src";
-my $skeleton = "oxygen_quassel";
-my $output = "oxygen";
-my $qrcfile = "oxygen.qrc";
+my $quassel_icons = "oxygen";
+my $output = "oxygen_kde";
+my $qrcfile_quassel = "oxygen.qrc";
+my $qrcfile_kde = "oxygen_kde.qrc";
my $extrafile = "import/extra-icons";
my $blacklistfile = "import/blacklisted-icons";
# Clean old output dir
print "Removing old $output...\n";
system("rm -rf $output");
-# Copy skeleton
-print "Copying skeleton from $skeleton...\n";
-system("cp -a $skeleton $output");
# Now copy the icons
my %scalables;
opendir (BASEDIR, "$oxygen/$sizestr") or die "Could not open dir for size $size\n";
foreach my $cat (readdir BASEDIR) {
next if $cat eq '.' or $cat eq '..';
+ system "mkdir -p $output/$sizestr/$cat" and die "Could not create category dir\n";
+ system "mkdir -p $output/scalable/$cat" and die "Could not create category dir\n";
opendir (CATDIR, "$oxygen/$sizestr/$cat") or die "Could not open category dir\n";
foreach my $icon (readdir CATDIR) {
$icon =~ s/\.png$//;
$scalables{"$cat/$icon"} = 1;
system "cp -a $oxygen/$sizestr/$cat/$icon.png $output/$sizestr/$cat"
and die "Error while copying file $sizestr/$cat/$icon.png\n";
+ # print "Copy: $oxygen/$sizestr/$cat/$icon.png\n";
delete $req_icons{$size}{$icon};
}
closedir CATDIR;
# Generate .qrc
my @file_list;
-find(\&push_icon_path, $output);
+generate_qrc($quassel_icons, $qrcfile_quassel);
+generate_qrc($output, $qrcfile_kde);
-sub push_icon_path {
- return unless /\.png$/;
- push @file_list, " <file>$File::Find::name</file>";
-}
+print "Done.\n";
-my $files = join "\n", @file_list;
+########################################################################################
+sub generate_qrc {
+ my $dir = shift;
+ my $qrcfile = shift;
-my $qrc = "<RCC>\n"
- ." <qresource prefix=\"/icons\">\n"
- ."$files\n"
- ." </qresource>\n"
- ."</RCC>\n";
+ @file_list = ();
+ find(\&push_icon_path, $dir);
+ my $files = join "\n", @file_list;
-open QRC, ">$qrcfile" or die "Could not open $qrcfile for writing!\n";
-print QRC $qrc;
-close QRC;
+ my $qrc = "<RCC>\n"
+ ." <qresource prefix=\"/icons\">\n"
+ ."$files\n"
+ ." </qresource>\n"
+ ."</RCC>\n";
-print "Done.\n";
+ open QRC, ">$qrcfile" or die "Could not open $qrcfile for writing!\n";
+ print QRC $qrc;
+ close QRC;
+}
+
+sub push_icon_path {
+ return unless /\.png$/;
+ my $alias = $File::Find::name;
+ $alias =~ s,^[^/]*(.*),$1,;
+
+ push @file_list, " <file alias=\"oxygen$alias\">$File::Find::name</file>";
+}