Index: trunk/geticons.pl
===================================================================
--- trunk/geticons.pl	(revision 7196)
+++ trunk/geticons.pl	(revision 7668)
@@ -29,4 +29,5 @@
     while(my $l = <FILE>)
     {
+      next if $l =~ /NO-ICON/;
       if($l =~ /src\s*=\s*["'](.*?)["']/)
       {
@@ -51,5 +52,4 @@
       {
         my $i = $1;
-        $i .= ".png" if !($i =~ /\.png$/);
         ++$icons{$i};
       }
@@ -57,5 +57,4 @@
       {
         my $i = $1;
-        $i .= ".png" if !($i =~ /\.png$/);
         ++$icons{$i};
       }
@@ -63,5 +62,4 @@
       {
         my $i = "$1$2";
-        $i .= ".png" if !($i =~ /\.png$/);
         ++$icons{$i};
       }
@@ -69,5 +67,4 @@
       {
         my $i = "statusline/$1";
-        $i .= ".png" if !($i =~ /\.png$/);
         ++$icons{$i};
       }
@@ -75,5 +72,4 @@
       {
         my $i = "preferences/$1";
-        $i .= ".png" if !($i =~ /\.png$/);
         ++$icons{$i};
       }
@@ -81,5 +77,4 @@
       {
         my $i = "$1/$2";
-        $i .= ".png" if !($i =~ /\.png$/);
         ++$icons{$i};
       }
@@ -87,5 +82,4 @@
       {
         my $i = $1;
-        $i .= ".png" if !($i =~ /\.png$/);
         ++$icons{$i};
       }
@@ -93,8 +87,6 @@
       {
         my $i = "cursor/modifier/$2";
-        $i .= ".png" if !($i =~ /\.png$/);
         ++$icons{$i};
         $i = "cursor/$1";
-        $i .= ".png" if !($i =~ /\.png$/);
         ++$icons{$i};
       }
@@ -102,5 +94,4 @@
       {
         my $i = "cursor/$1";
-        $i .= ".png" if !($i =~ /\.png$/);
         ++$icons{$i};
       }
@@ -108,5 +99,4 @@
       {
         my $i = "dialogs/$1";
-        $i .= ".png" if !($i =~ /\.png$/);
         ++$icons{$i};
       }
@@ -114,5 +104,4 @@
       {
         my $i = "$extends$1";
-        $i .= ".png" if !($i =~ /\.png$/);
         ++$icons{$i};
       }
@@ -120,5 +109,4 @@
       {
         my $i = "$extends$1";
-        $i .= ".png" if !($i =~ /\.png$/);
         ++$icons{$i};
       }
@@ -126,5 +114,4 @@
       {
         my $i = "markers/$1";
-        $i .= ".png" if !($i =~ /\.png$/);
         ++$icons{$i};
       }
@@ -132,30 +119,5 @@
       {
         my $i = "markers/$1";
-        $i .= ".png" if !($i =~ /\.png$/);
         ++$icons{$i};
-      }
-      if($l =~ /allowedtypes\s+=.*\{(.*)\}/s)
-      {
-        my $t = $1;
-        while($t =~ /\"(.*?)\"/g)
-        {
-          ++$icons{"Mf_$1.png"};
-        }
-      }
-      if($l =~ /MODES\s+=.*\{(.*)\}/s)
-      {
-        my $t = $1;
-        while($t =~ /\"(.*?)\"/g)
-        {
-          ++$icons{"dialogs/autoscale/$1.png"};
-        }
-      }
-      if($l =~ /enum\s+DeleteMode\s*\{(.*)/s)
-      {
-        my $t = $1;
-        while($t =~ /\"(.*?)\"/g)
-        {
-          ++$icons{"cursor/modifier/$1.png"};
-        }
       }
       if($l =~ /\.setButtonIcons.*\{(.*)\}/)
@@ -165,5 +127,4 @@
         {
           my $i = $1;
-          $i .= ".png" if !($i =~ /\.png$/);
           ++$icons{$i};
         }
@@ -173,5 +134,5 @@
         $extends = "mapmode/";
       }
-      if($l =~ /extends ToggleDialog/)
+      elsif($l =~ /extends ToggleDialog/)
       {
         $extends = "dialogs/";
@@ -184,5 +145,5 @@
 my %haveicons;
 
-for($i = 1; my @ifiles = glob("images".("/*" x $i).".png"); ++$i)
+for($i = 1; my @ifiles = (glob("images".("/*" x $i).".png"), glob("images".("/*" x $i).".svg")); ++$i)
 {
   for my $ifile (sort @ifiles)
@@ -195,6 +156,15 @@
 for my $img (sort keys %icons)
 {
-  print STDERR "File $img does not exist!\n" if(!-f "images/$img");
-  delete $haveicons{$img};
+  if($img =~ /\.(png|svg)/)
+  {
+    print STDERR "File $img does not exist!\n" if(!-f "images/$img");
+    delete $haveicons{$img};
+  }
+  else
+  {
+    print STDERR "File $img(.svg|.png) does not exist!\n" if(!-f "images/$img.png" && !-f "images/$img.svg");
+    delete $haveicons{"$img.svg"};
+    delete $haveicons{"$img.png"};
+  }
 }
 
