Module: tools Branch: master Commit: eeaf23603b8bc98488ca67266d602dd0c71cc766 URL: http://source.winehq.org/git/tools.git/?a=commit;h=eeaf23603b8bc98488ca67266...
Author: Mikolaj Zalewski mikolajz@tygrys.dom Date: Sat Mar 1 15:06:22 2008 +0100
add links to menu dumps
---
php/lib.php | 37 ++++++++++++++++++++++++++++++++++++- php/resfile.php | 24 ++++++++++-------------- php/resource.php | 2 +- scripts/ver.pl | 13 +++++++------ 4 files changed, 54 insertions(+), 22 deletions(-)
diff --git a/php/lib.php b/php/lib.php index e11ef5e..9b17c2b 100644 --- a/php/lib.php +++ b/php/lib.php @@ -101,7 +101,42 @@ function get_resfile_name($resfile)
function get_resource_name($type, $name) { - return "Resource ".$type." ".$name; + $types = array(); + $types[1] = "CURSOR"; + $types[2] = "BITMAP"; + $types[3] = "ICON"; + $types[4] = "MENU"; + $types[5] = "DIALOG"; + $types[6] = "STRINGTABLE"; + $types[7] = "FONTDIR"; + $types[8] = "FONT"; + $types[9] = "ACCELERATOR"; + $types[10] = "RCDATA"; + $types[11] = "MESSAGE"; + $types[12] = "GROUP_CURSOR"; + $types[14] = "GROUP_ICON"; + $types[16] = "VERSION"; + $types[260] = "MENUEX"; + $types[262] = "DIALOGEX"; + + if (is_numeric($name)) + $pname = "#".$name; + else + $pname = $name; + + if (isset($types[$type])) + $ret = $types[$type]." ".$pname; + else + $ret = $types[$type]." ".$pname; + + if ($type == 6) + $ret .= " (strings ".($name*16 - 16)."..".($name*16 - 1).")"; + return $ret; +} + +function is_dumpable_type($type) +{ + return ($type == 4) || ($type == 6); }
function update_lang_from_resfile($lang, $resfile) diff --git a/php/resfile.php b/php/resfile.php index 3a80e83..e4eb7ad 100644 --- a/php/resfile.php +++ b/php/resfile.php @@ -40,25 +40,21 @@ foreach ($msgs as $value) } if (isset($icon)) echo "<img src="img/icon-".$icon."" width="32">"; - - if (preg_match("/STRINGTABLE ([0-9]+)/", $value, $m)) { - $id0 = $m[1]*16 - 16; - $id1 = $m[1]*16 - 1; - if (strpos($value, "Missing: ") === 0) - { - $value = preg_replace("/STRINGTABLE ([0-9]+)/", - "STRINGTABLE #".$m[1]." (strings $id0..$id1)", - $value); - } - else + + if (preg_match("/@RES(([^:)]+):([^:)]+))/", $value, $m)) + { + if (is_dumpable_type($m[1]) && (strpos($value, "Missing: ") !== 0)) { $error = (strpos($value, "Error: ") === 0); - $value = preg_replace("/STRINGTABLE ([0-9]+)/", - gen_resource_a($lang, $resfile, 6, $m[1], $error). - "STRINGTABLE #".$m[1]." (strings $id0..$id1)</a>", + $value = preg_replace("/@RES(([^:)]+):([^:)]+))/", + gen_resource_a($lang, $resfile, $m[1], $m[2], $error). + get_resource_name($m[1], $m[2])."</a>", $value); } + else + $value = preg_replace("/@RES(([^:)]+):([^:)]+))/", get_resource_name($m[1], $m[2]), $value); } + echo "</td><td>".$value."</td></tr>\n"; } ?> diff --git a/php/resource.php b/php/resource.php index beb2a56..d745d7f 100644 --- a/php/resource.php +++ b/php/resource.php @@ -28,7 +28,7 @@ $compare = isset($_REQUEST['compare']); <body> <?php dump_menu_root() ?> > <?php dump_menu_lang($lang) ?> > <?php dump_menu_resfile($lang, $resfile) ?> > <?php dump_menu_resource($lang, $resfile, $type, $id) ?> -<h1>Resource <?php echo "$id ($type)"?></h1> +<h1>Dump of <?php echo get_resource_name($type, $id) ?></h1>
<?php
diff --git a/scripts/ver.pl b/scripts/ver.pl index a25b275..a80f6fa 100755 --- a/scripts/ver.pl +++ b/scripts/ver.pl @@ -44,12 +44,13 @@ sub resource_name { # return "STRINGTABLE #".$name." (strings ".($name*16-16)."..".($name*16-1).")"; # } # print "arg1=$type arg2=$name\n"; - if (defined($types[$type])) { - $typename = $types[$type]; - } else { - $typename = $type.""; - } - return "$typename ".$name; +# if (defined($types[$type])) { +# $typename = $types[$type]; +# } else { +# $typename = $type.""; +# } +# return "$typename ".$name; + return "@RES($type:$name)"; };
sub resource_name2 {