version 1.294, 2005/11/27 23:54:00
|
version 1.296, 2005/11/28 21:58:24
|
Line 48 use Apache::lonmenu();
|
Line 48 use Apache::lonmenu();
|
use Apache::lonmeta(); |
use Apache::lonmeta(); |
use Apache::Constants qw(:common); |
use Apache::Constants qw(:common); |
use File::Basename; |
use File::Basename; |
use Data::Dumper; |
#use Data::Dumper; |
|
|
BEGIN { |
BEGIN { |
|
|
Line 1987 sub start_table {
|
Line 1987 sub start_table {
|
$Apache::londefdef::table[-1]{'content'}=[]; |
$Apache::londefdef::table[-1]{'content'}=[]; |
$Apache::londefdef::table[-1]{'align'}=[]; |
$Apache::londefdef::table[-1]{'align'}=[]; |
$currentstring.='\keephidden{NEW TABLE ENTRY}'; |
$currentstring.='\keephidden{NEW TABLE ENTRY}'; |
&Apache::lonnet::logthis("------ start-table------"); |
|
&debug_dump_table; |
|
&Apache::lonnet::logthis("-------start-table------"); |
|
|
|
} |
} |
return $currentstring; |
return $currentstring; |
Line 2005 sub end_table {
|
Line 2003 sub end_table {
|
my $output = ''; |
my $output = ''; |
my $WARNING=''; |
my $WARNING=''; |
#width of columns from TeXwidth attributes |
#width of columns from TeXwidth attributes |
&Apache::lonnet::logthis("----------------end_table-----------------"); |
|
&debug_dump_table; |
|
|
|
for (my $in=0;$in<=$Apache::londefdef::table[-1]{'row_number'};$in++) { |
for (my $in=0;$in<=$Apache::londefdef::table[-1]{'row_number'};$in++) { |
for (my $jn=0;$jn<=$Apache::londefdef::table[-1]{'counter_columns'};$jn++) { |
for (my $jn=0;$jn<=$Apache::londefdef::table[-1]{'counter_columns'};$jn++) { |
Line 2213 sub end_table {
|
Line 2209 sub end_table {
|
$Apache::londefdef::table[-1]{'output'} .= $header_of_table.$Apache::londefdef::table[-1]{'hinc'}.$output.'\end{tabular}\strut'.'\\\\'."\n".'\strut '; |
$Apache::londefdef::table[-1]{'output'} .= $header_of_table.$Apache::londefdef::table[-1]{'hinc'}.$output.'\end{tabular}\strut'.'\\\\'."\n".'\strut '; |
if ($#Apache::londefdef::table > 0) { |
if ($#Apache::londefdef::table > 0) { |
my $inmemory = $Apache::londefdef::table[-1]{'output'}; |
my $inmemory = $Apache::londefdef::table[-1]{'output'}; |
&Apache::lonnet::logthis("--- popping nested table --"); |
|
# Figure out max/and min width by summing us and then |
# Figure out max/and min width by summing us and then |
# apply that to the current column of the table we nest in |
# apply that to the current column of the table we nest in |
# if it's larger than the current width or the current width |
# if it's larger than the current width or the current width |
Line 2231 sub end_table {
|
Line 2226 sub end_table {
|
$min_nested_width += 5; |
$min_nested_width += 5; |
$max_nested_width += 5; |
$max_nested_width += 5; |
|
|
&Apache::lonnet::logthis("Nested min: $min_nested_width"); |
|
&Apache::lonnet::logthis("Nested max: $max_nested_width"); |
|
my $outer_column = $Apache::londefdef::table[-2]{'counter_columns'}; |
my $outer_column = $Apache::londefdef::table[-2]{'counter_columns'}; |
my $outer_row = $Apache::londefdef::table[-2]{'row_number'}; |
my $outer_row = $Apache::londefdef::table[-2]{'row_number'}; |
&Apache::lonnet::logthis("Outer row/column: $outer_row : $outer_column"); |
|
if ($min_nested_width > $Apache::londefdef::table[-2]{'minlen'}[$outer_row][$outer_column]) { |
if ($min_nested_width > $Apache::londefdef::table[-2]{'minlen'}[$outer_row][$outer_column]) { |
$Apache::londefdef::table[-2]{'minlen'}[$outer_row][$outer_column] = $min_nested_width; |
$Apache::londefdef::table[-2]{'minlen'}[$outer_row][$outer_column] = $min_nested_width; |
} |
} |
Line 2250 sub end_table {
|
Line 2242 sub end_table {
|
pop @Apache::londefdef::table; |
pop @Apache::londefdef::table; |
undef @Apache::londefdef::table; |
undef @Apache::londefdef::table; |
} |
} |
&debug_dump_table; |
|
&Apache::lonnet::logthis("---------end table------"); |
|
|
|
} |
} |
return $currentstring; |
return $currentstring; |
} |
} |
Line 2264 sub start_tr {
|
Line 2253 sub start_tr {
|
if ($target eq 'web') { |
if ($target eq 'web') { |
$currentstring = $token->[4]; |
$currentstring = $token->[4]; |
} elsif ($target eq 'tex') { |
} elsif ($target eq 'tex') { |
&Apache::lonnet::logthis("--------------start-tr----------"); |
|
$Apache::londefdef::table[-1]{'row_number'}++; |
$Apache::londefdef::table[-1]{'row_number'}++; |
my $alignchar=&Apache::lonxml::get_param('align',$parstack,$safeeval,undef,1); |
my $alignchar=&Apache::lonxml::get_param('align',$parstack,$safeeval,undef,1); |
if ($alignchar ne '') { |
if ($alignchar ne '') { |
Line 2279 sub start_tr {
|
Line 2267 sub start_tr {
|
push @ {$Apache::londefdef::table[-1]{'minlen'}}, []; |
push @ {$Apache::londefdef::table[-1]{'minlen'}}, []; |
push @ {$Apache::londefdef::table[-1]{'maxlen'}}, []; |
push @ {$Apache::londefdef::table[-1]{'maxlen'}}, []; |
push @ {$Apache::londefdef::table[-1]{'content'}}, []; |
push @ {$Apache::londefdef::table[-1]{'content'}}, []; |
&debug_dump_table; |
|
&Apache::lonnet::logthis("------------start-tr-----------"); |
|
} |
} |
return $currentstring; |
return $currentstring; |
} |
} |
Line 2291 sub end_tr {
|
Line 2277 sub end_tr {
|
if ($target eq 'web') { |
if ($target eq 'web') { |
$currentstring .= $token->[2]; |
$currentstring .= $token->[2]; |
} elsif ($target eq 'tex') { |
} elsif ($target eq 'tex') { |
&Apache::lonnet::logthis("-------end-tr-----"); |
|
if ($Apache::londefdef::TD_redirection) { |
if ($Apache::londefdef::TD_redirection) { |
&end_td_tex($parstack,$parser,$safeeval); |
&end_td_tex($parstack,$parser,$safeeval); |
} |
} |
&debug_dump_table; |
|
&Apache::lonnet::logthis("------end-tr------"); |
|
|
|
} |
} |
return $currentstring; |
return $currentstring; |
Line 2309 sub start_td {
|
Line 2294 sub start_td {
|
if ($target eq 'web') { |
if ($target eq 'web') { |
$currentstring = $token->[4]; |
$currentstring = $token->[4]; |
} elsif ($target eq 'tex') { |
} elsif ($target eq 'tex') { |
&Apache::lonnet::logthis("------start-td----"); |
|
$Apache::londefdef::TD_redirection = 1; |
$Apache::londefdef::TD_redirection = 1; |
&tag_check('tr','td',$tagstack,$parstack,$parser,$safeeval); |
&tag_check('tr','td',$tagstack,$parstack,$parser,$safeeval); |
&debug_dump_table; |
|
&Apache::lonnet::logthis("-----start-td-----"); |
|
} |
} |
return $currentstring; |
return $currentstring; |
} |
} |
Line 2446 sub end_td {
|
Line 2428 sub end_td {
|
if ($target eq 'web') { |
if ($target eq 'web') { |
$currentstring = $token->[2]; |
$currentstring = $token->[2]; |
} elsif ($target eq 'tex') { |
} elsif ($target eq 'tex') { |
&Apache::lonnet::logthis("--------end_td-----"); |
|
$Apache::londefdef::TD_redirection =0; |
$Apache::londefdef::TD_redirection =0; |
&end_td_tex($parstack,$parser,$safeeval); |
&end_td_tex($parstack,$parser,$safeeval); |
&debug_dump_table; |
|
&Apache::lonnet::logthis("--------end-td----"); |
|
} |
} |
return $currentstring; |
return $currentstring; |
} |
} |