version 1.296, 2005/11/28 21:58:24
|
version 1.300, 2005/12/05 23:22:49
|
Line 61 BEGIN {
|
Line 61 BEGIN {
|
# Need this 'cause evidently when given an array, Data::Dumper only seems |
# Need this 'cause evidently when given an array, Data::Dumper only seems |
# to dump element 0. |
# to dump element 0. |
# |
# |
sub debug_dump_table { |
#sub debug_dump_table { |
my $lastrow = $#Apache::londefdef::table; |
# my $lastrow = $#Apache::londefdef::table; |
&Apache::lonnet::logthis("Dumping table: Last row index: $lastrow"); |
# &Apache::lonnet::logthis("Dumping table: Last row index: $lastrow"); |
my $row; |
# my $row; |
for ($row =0; $row <= $lastrow; $row++ ) { |
# for ($row =0; $row <= $lastrow; $row++ ) { |
my $text = Dumper($Apache::londefdef::table[$row]); |
# my $text = Dumper($Apache::londefdef::table[$row]); |
&Apache::lonnet::logthis("table [ $row ]".$text); |
# &Apache::lonnet::logthis("table [ $row ]".$text); |
|
# |
} |
# } |
} |
#} |
|
|
sub initialize_londefdef { |
sub initialize_londefdef { |
$Apache::londefdef::TD_redirection=0; |
$Apache::londefdef::TD_redirection=0; |
Line 145 sub end_m {
|
Line 145 sub end_m {
|
} |
} |
|
|
sub start_tthoption { |
sub start_tthoption { |
my ($target,$token,$tagstack,$parstack,$parser,$safeeval) = @_; |
my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$style) = @_; |
my $result; |
my $result; |
if ($target eq 'web') { |
if ($target eq 'web') { |
my $inside = &Apache::lonxml::get_all_text("/tthoption",$parser); |
my $inside = &Apache::lonxml::get_all_text("/tthoption",$parser, |
|
$style); |
$inside=~s/^\s*//; |
$inside=~s/^\s*//; |
if ($env{'browser.mathml'}) { |
if ($env{'browser.mathml'}) { |
&tth::ttmoptions($inside); |
&tth::ttmoptions($inside); |
Line 385 sub end_title {
|
Line 386 sub end_title {
|
|
|
#-- <meta> tag (end tag forbidden) |
#-- <meta> tag (end tag forbidden) |
sub start_meta { |
sub start_meta { |
my ($target,$token,$tagstack,$parstack,$parser,$safeeval) = @_; |
my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$style) = @_; |
my $currentstring = ''; |
my $currentstring = ''; |
if ($target eq 'web') { |
if ($target eq 'web') { |
my $args=''; |
my $args=''; |
if ( $#$parstack > -1 ) { $args=$$parstack[$#$parstack]; } |
if ( $#$parstack > -1 ) { $args=$$parstack[$#$parstack]; } |
if ($args eq '') { |
if ($args eq '') { |
&Apache::lonxml::get_all_text("/meta",$parser); |
&Apache::lonxml::get_all_text("/meta",$parser,$style); |
} else { |
} else { |
$currentstring = $token->[4]; |
$currentstring = $token->[4]; |
} |
} |
Line 454 sub end_meta {
|
Line 455 sub end_meta {
|
|
|
# accessrule |
# accessrule |
sub start_accessrule { |
sub start_accessrule { |
my ($target,$token,$tagstack,$parstack,$parser,$safeeval) = @_; |
my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$style) = @_; |
my $currentstring = ''; |
my $currentstring = ''; |
my $eff=&Apache::lonxml::get_param |
my $eff=&Apache::lonxml::get_param |
('effect',$parstack,$safeeval,undef,1); |
('effect',$parstack,$safeeval,undef,1); |
Line 473 sub start_accessrule {
|
Line 474 sub start_accessrule {
|
my $args=''; |
my $args=''; |
if ( $#$parstack > -1 ) { $args=$$parstack[$#$parstack]; } |
if ( $#$parstack > -1 ) { $args=$$parstack[$#$parstack]; } |
if ($args eq '') { |
if ($args eq '') { |
&Apache::lonxml::get_all_text("/accessrule",$parser); |
&Apache::lonxml::get_all_text("/accessrule",$parser,$style); |
} else { |
} else { |
$currentstring = $token->[4]; |
$currentstring = $token->[4]; |
} |
} |
Line 2217 sub end_table {
|
Line 2218 sub end_table {
|
my $min_nested_width = 0; |
my $min_nested_width = 0; |
my $max_nested_width = 0; |
my $max_nested_width = 0; |
for (my $col = 0; $col <= $Apache::londefdef::table[-1]{'counter_columns'}; $col++) { |
for (my $col = 0; $col <= $Apache::londefdef::table[-1]{'counter_columns'}; $col++) { |
|
|
$min_nested_width += $min_len[$col]; |
$min_nested_width += $min_len[$col]; |
$max_nested_width += $max_len[$col]; |
$max_nested_width += $max_len[$col]; |
|
|
} |
} |
# Fudge in an extra 5 mm for borders etc: |
# Fudge in an extra 5 mm for borders etc: |
|
|
Line 2261 sub start_tr {
|
Line 2262 sub start_tr {
|
push @ {$Apache::londefdef::table[-1]{'rows'} }, 'l'; |
push @ {$Apache::londefdef::table[-1]{'rows'} }, 'l'; |
} |
} |
push ( @{ $Apache::londefdef::table[-1]{'rowdata'} }, $Apache::londefdef::table[-1]{'hinc'}); |
push ( @{ $Apache::londefdef::table[-1]{'rowdata'} }, $Apache::londefdef::table[-1]{'hinc'}); |
|
# |
|
# Need to save the number of table columns to preserve the max # columns. |
|
# |
|
$Apache::londefdef::table[-1]{'prior_columns'} = $Apache::londefdef::table[-1]{'counter_columns'}; |
$Apache::londefdef::table[-1]{'counter_columns'} = -1; |
$Apache::londefdef::table[-1]{'counter_columns'} = -1; |
push @ {$Apache::londefdef::table[-1]{'TeXlen'}}, []; |
push @ {$Apache::londefdef::table[-1]{'TeXlen'}}, []; |
push @ {$Apache::londefdef::table[-1]{'objectlen'}}, []; |
push @ {$Apache::londefdef::table[-1]{'objectlen'}}, []; |
Line 2280 sub end_tr {
|
Line 2285 sub end_tr {
|
if ($Apache::londefdef::TD_redirection) { |
if ($Apache::londefdef::TD_redirection) { |
&end_td_tex($parstack,$parser,$safeeval); |
&end_td_tex($parstack,$parser,$safeeval); |
} |
} |
|
# Counter columns must be the maximum number of columns seen |
|
# in the table so far so: |
|
if ($Apache::londefdef::table[-1]{'prior_columns'} > $Apache::londefdef::table[-1]{'counter_columns'}) { |
|
$Apache::londefdef::table[-1]{'counter_columns'} = $Apache::londefdef::table[-1]{'prior_columns'}; |
|
} |
|
|
|
|
|
|
Line 2415 sub end_td_tex {
|
Line 2425 sub end_td_tex {
|
push @ {$Apache::londefdef::table[-1]{'minlen'}[$Apache::londefdef::table[-1]{'row_number'}] },$min_length; |
push @ {$Apache::londefdef::table[-1]{'minlen'}[$Apache::londefdef::table[-1]{'row_number'}] },$min_length; |
} |
} |
} |
} |
for (my $in=0; $in<=$#{$Apache::londefdef::table[-1]{'include'}};$in++) { |
for (my $in=0; $in<=$#{$Apache::londefdef::table[-1]{'include'}};$in++) { |
$data=~s/\\keephidden\{NEW TABLE ENTRY\}/$Apache::londefdef::table[-1]{'include'}[$in] \&/; |
my $nested = $Apache::londefdef::table[-1]{'include'}[$in]; |
|
$nested =~ s/\\end\{tabular\}\\strut\\\\/\\end\{tabular\}/; |
|
# $data=~s/\\keephidden\{NEW TABLE ENTRY\}/$Apache::londefdef::table[-1]{'include'}[$in]/; |
|
$data =~ s/\\keephidden\{NEW TABLE ENTRY\}/$nested/; |
} |
} |
push @ {$Apache::londefdef::table[-1]{'content'}[-1] },$data; |
push @ {$Apache::londefdef::table[-1]{'content'}[-1] },$data; |
return''; |
return''; |
Line 2575 sub end_th {
|
Line 2588 sub end_th {
|
# (Note there seems to also be support for this as a % of page size) |
# (Note there seems to also be support for this as a % of page size) |
# |
# |
sub start_img { |
sub start_img { |
my ($target,$token,$tagstack,$parstack,$parser,$safeeval) = @_; |
my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$style) = @_; |
my $src = &Apache::lonxml::get_param('src',$parstack,$safeeval, |
my $src = &Apache::lonxml::get_param('src',$parstack,$safeeval, |
undef,1); |
undef,1); |
if (not $src and ($target eq 'web' or $target eq 'tex')) { |
if (not $src and ($target eq 'web' or $target eq 'tex')) { |
my $inside = &Apache::lonxml::get_all_text("/img",$parser); |
my $inside = &Apache::lonxml::get_all_text("/img",$parser,$style); |
return ''; |
return ''; |
} |
} |
&Apache::lonxml::extlink($src); |
&Apache::lonxml::extlink($src); |