Add SslInfoDlg as a nice way to show information about an SSL connection
[quassel.git] / icons / import / import_oxygen.pl
index 16c4116..9efc260 100755 (executable)
@@ -20,9 +20,10 @@ use File::Find;
 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";
@@ -75,9 +76,6 @@ close EXTRA;
 # 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;
@@ -88,6 +86,8 @@ foreach my $size (keys %req_icons) {
   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$//;
@@ -95,6 +95,7 @@ foreach my $size (keys %req_icons) {
       $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;
@@ -116,23 +117,35 @@ foreach my $size (keys %req_icons) {
 
 # 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>";
+}