]> git.saurik.com Git - wxWidgets.git/blobdiff - distrib/msw/tmake/filelist.t
backported fix for proper tree ctrl refershing after changing item colour/font from 2.2
[wxWidgets.git] / distrib / msw / tmake / filelist.t
index a07158f76e3e8506d201c62bc77687225659fd47..c239ed6c45656e0e1b5c4ea3388b626837f40c73 100644 (file)
         #!     print STDERR "Processing line: '$_'\n";
         #! }
 
-        my @fields = split "\t";
+        my @fields = split /\t/;
+
+        #! first column is filename, second is type, third is flags
+        my ($filename, $filetype, $fileflags) = @fields;
+
         if ( $#fields > 2 ) {
             warn "Ignoring malformed line $_ in the filelist file.\n";
             next line;
         } elsif ( $#fields == 1 ) {
             #! add an empty flags string
-            $fields[2] = "";
+            $fileflags = "";
         }
 
         if ( $verbose ) {
-            print STDERR "File $fields[0]: type '$fields[1]', flags '$fields[2]'\n";
+            print STDERR "File $filename: type '$filetype', flags '$fileflags'\n";
         }
 
-        #! first column is filename, second is type, third is flags
-        if ( $fields[1] eq "C" ) {
-            $wxCommon{$fields[0]} = $fields[2];
-        } elsif ( $fields[1] eq "G" ) {
-            $wxGeneric{$fields[0]} = $fields[2];
-        } elsif ( $fields[1] eq "M" ) {
-            $wxMSW{$fields[0]} = $fields[2];
-        } elsif ( $fields[1] eq "X" ) {
-            $wxMOTIF{$fields[0]} = $fields[2];
-        } elsif ( $fields[1] eq "R" ) {
-            $wxGTK{$fields[0]} = $fields[2];
-        } elsif ( $fields[1] eq "O" ) {
-            $wxOS2PM{$fields[0]} = $fields[2];
-        } elsif ( $fields[1] eq "H" ) {
-            $wxHTML{$fields[0]} = $fields[2];
-        } elsif ( $fields[1] eq "J" ) {
-            $wxOGL{$fields[0]} = $fields[2];
-        } elsif ( $fields[1] eq "U" ) {
-            $wxUNIX{$fields[0]} = $fields[2];
-        } elsif ( $fields[1] eq "B" ) {
-            $wxBase{$fields[0]} = $fields[2];
-        } elsif ( $fields[1] eq "W" ) {
-            $wxWXINCLUDE{$fields[0]} = $fields[2];
-        } elsif ( $fields[1] eq "P" ) {
-            $wxPROTOCOLINCLUDE{$fields[0]} = $fields[2];
-        } elsif ( $fields[1] eq "L" ) {
-            $wxHTMLINCLUDE{$fields[0]} = $fields[2];
-        } elsif ( $fields[1] eq "Z" ) {
-            $wxOGLINCLUDE{$fields[0]} = $fields[2];
-        } elsif ( $fields[1] eq "F" ) {
-            $wxMOTIFINCLUDE{$fields[0]} = $fields[2];
-        } elsif ( $fields[1] eq "9" ) {
-            $wxMSWINCLUDE{$fields[0]} = $fields[2];
-        } elsif ( $fields[1] eq "K" ) {
-            $wxGTKINCLUDE{$fields[0]} = $fields[2];
-        } elsif ( $fields[1] eq "2" ) {
-            $wxOS2PMINCLUDE{$fields[0]} = $fields[2];
-        } elsif ( $fields[1] eq "S" ) {
-            $wxUNIXINCLUDE{$fields[0]} = $fields[2];
-        } elsif ( $fields[1] eq "N" ) {
-            $wxGENERICINCLUDE{$fields[0]} = $fields[2];
+        #! this is a bit stupid but all templates are written using the old
+        #! single letter flags which became so unreadable that I decided to
+        #! replace them with more readable strings, but it was easier to do
+        #! the translation here instead of changing all *.t files
+        $fileflags =~ s/Base/B/;
+        $fileflags =~ s/NotWin32/16/;
+        $fileflags =~ s/Win32Only/32/;
+        $fileflags =~ s/Generic/G/;
+        $fileflags =~ s/OLE/O/;
+        $fileflags =~ s/Socket/S/;
+        $fileflags =~ s/NotMSW/U/;
+        $fileflags =~ s/NotGTK/R/;
+        $fileflags =~ s/NotX/X/;
+        $fileflags =~ s/NotOS2/P/;
+        $fileflags =~ s/LowLevel/L/;
+
+        if ( $filetype eq "Common" ) {
+            $wxCommon{$filename} = $fileflags;
+        } elsif ( $filetype eq "Generic" ) {
+            $wxGeneric{$filename} = $fileflags;
+        } elsif ( $filetype eq "MSW" ) {
+            $wxMSW{$filename} = $fileflags;
+        } elsif ( $filetype eq "Motif" ) {
+            $wxMOTIF{$filename} = $fileflags;
+        } elsif ( $filetype eq "GTK" ) {
+            $wxGTK{$filename} = $fileflags;
+        } elsif ( $filetype eq "Univ" ) {
+            $wxUNIV{$filename} = $fileflags;
+        } elsif ( $filetype eq "MGL" ) {
+            $wxMGL{$filename} = $fileflags;
+        } elsif ( $filetype eq "OS2" ) {
+            $wxOS2PM{$filename} = $fileflags;
+        } elsif ( $filetype eq "HTML" ) {
+            $wxHTML{$filename} = $fileflags;
+        } elsif ( $filetype eq "Unix" ) {
+            $wxUNIX{$filename} = $fileflags;
+        } elsif ( $filetype eq "BaseOnly" ) {
+            $wxBase{$filename} = $fileflags;
+        } elsif ( $filetype eq "WXH" ) {
+            $wxWXINCLUDE{$filename} = $fileflags;
+        } elsif ( $filetype eq "ProtoH" ) {
+            $wxPROTOCOLINCLUDE{$filename} = $fileflags;
+        } elsif ( $filetype eq "HtmlH" ) {
+            $wxHTMLINCLUDE{$filename} = $fileflags;
+        } elsif ( $filetype eq "MotifH" ) {
+            $wxMOTIFINCLUDE{$filename} = $fileflags;
+        } elsif ( $filetype eq "MSWH" ) {
+            $wxMSWINCLUDE{$filename} = $fileflags;
+        } elsif ( $filetype eq "GTKH" ) {
+            $wxGTKINCLUDE{$filename} = $fileflags;
+        } elsif ( $filetype eq "OS2H" ) {
+            $wxOS2PMINCLUDE{$filename} = $fileflags;
+        } elsif ( $filetype eq "UnivH" ) {
+            $wxUNIVINCLUDE{$filename} = $fileflags;
+        } elsif ( $filetype eq "UnixH" ) {
+            $wxUNIXINCLUDE{$filename} = $fileflags;
+        } elsif ( $filetype eq "GenericH" ) {
+            $wxGENERICINCLUDE{$filename} = $fileflags;
         } else {
-            warn "Unknown file type $fields[1] for $fields[0], ignoring.\n";
+            warn "Unknown file type $filetype for $filename, ignoring.\n";
             next line;
         }
     }