fix_font(): Instead of using a long if/elsif cluster, use a bloody

dictionary.  Added some entries to the dictionary to fix part of
    SF bug #451556.
This commit is contained in:
Fred Drake 2001-08-16 21:56:24 +00:00
parent 457c4190f9
commit cb19976f1a
1 changed files with 16 additions and 23 deletions

View File

@ -1182,33 +1182,26 @@ sub do_cmd_memberlineni{
@col_aligns = ('<td>', '<td>', '<td>', '<td>', '<td>'); @col_aligns = ('<td>', '<td>', '<td>', '<td>', '<td>');
%FontConversions = ('cdata' => 'tt class="cdata"',
'character' => 'tt class="character"',
'class' => 'tt class="class"',
'command' => 'code',
'constant' => 'tt class="constant"',
'exception' => 'tt class="exception"',
'file' => 'tt class="file"',
'filenq' => 'tt class="file"',
'kbd' => 'kbd',
'member' => 'tt class="member"',
'programopt' => 'b',
'textrm' => '',
);
sub fix_font{ sub fix_font{
# do a little magic on a font name to get the right behavior in the first # do a little magic on a font name to get the right behavior in the first
# column of the output table # column of the output table
my $font = @_[0]; my $font = @_[0];
if ($font eq 'textrm') { if (defined $FontConversions{$font}) {
$font = ''; $font = $FontConversions{$font};
}
elsif ($font eq 'file' || $font eq 'filenq') {
$font = 'tt class="file"';
}
elsif ($font eq 'member') {
$font = 'tt class="member"';
}
elsif ($font eq 'class') {
$font = 'tt class="class"';
}
elsif ($font eq 'constant') {
$font = 'tt class="constant"';
}
elsif ($font eq 'kbd') {
$font = 'kbd';
}
elsif ($font eq 'programopt') {
$font = 'b';
}
elsif ($font eq 'exception') {
$font = 'tt class="exception"';
} }
return $font; return $font;
} }