--- loncom/homework/matchresponse.pm 2004/03/08 23:23:04 1.37 +++ loncom/homework/matchresponse.pm 2004/04/02 17:58:16 1.39 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # Full matching style response # -# $Id: matchresponse.pm,v 1.37 2004/03/08 23:23:04 albertel Exp $ +# $Id: matchresponse.pm,v 1.39 2004/04/02 17:58:16 sakharuk Exp $ # # Copyright Michigan State University Board of Trustees # @@ -153,7 +153,7 @@ sub end_itemgroup { $table.=''; $Apache::matchresponse::itemtable{'display'}=$table; } elsif ($target eq 'tex') { - my $table=' \begin{description} '; + my $table=' \begin{description}\setlength{\leftmargin}{2em}\setlength{\labelwidth}{1em}\setlength{\itemsep}{0.5pt plus1pt minus2pt}\setlength{\listparindent}{0em} '; my $i=0; foreach my $name (@names) { $Apache::response::itemgroup{$name.'.text'}=~s/\$\$/\$/g; @@ -487,14 +487,22 @@ sub displayfoils { $result='
'.$question.''.$result. '
'; } else { - $result='\begin{tabular}{p{\textwidth/2}p{\textwidth/2}}\begin{minipage}{\textwidth/2}'.$question.'\end{minipage}&\begin{minipage}{\textwidth/2}'.$result.'\end{minipage}\end{tabular}'; + my $tabsize=&Apache::londefdef::recalc($ENV{'form.textwidth'}); + $tabsize=~/(\d+\.?\d*)/; + $tabsize=$1/2.1; + $tabsize.=' mm '; + $result='\setlength{\tabcolsep}{1 mm}\begin{tabular}{p{'.$tabsize.'}p{'.$tabsize.'}}\begin{minipage}{'.$tabsize.'}'.$question.'\end{minipage}&\begin{minipage}{'.$tabsize.'}'.$result.'\end{minipage}\end{tabular}'; } } elsif ($result=&itemdisplay('left')) { if ($target ne 'tex') { $result='
'.$result.''.$question. '
'; } else { - $result='\begin{tabular}{p{\textwidth/2}p{\textwidth/2}}\begin{minipage}{\textwidth/2}'.$result.'\end{minipage}&\begin{minipage}{\textwidth/2}'.$question.'\end{minipage}\end{tabular}'; + my $tabsize=&Apache::londefdef::recalc($ENV{'form.textwidth'}); + $tabsize=~/(\d+\.?\d*)/; + $tabsize=$1/2.1; + $tabsize.=' mm '; + $result='\setlength{\tabcolsep}{1 mm}\begin{tabular}{p{'.$tabsize.'}p{'.$tabsize.'}}\begin{minipage}{'.$tabsize.'}'.$result.'\end{minipage}&\begin{minipage}{'.$tabsize.'}'.$question.'\end{minipage}\end{tabular}'; } } if ($target ne 'tex') {$result.="
";} else {$result.=' \\\\ ';} @@ -601,6 +609,7 @@ sub end_foil { if (defined($Apache::response::foilnames{$name})) { &Apache::lonxml::error(&mt("Foil name [_1] appears more than once. Foil names need to be unique.",$name)); } + $Apache::response::foilnames{$name}++; my $location =&Apache::lonxml::get_param('location',$parstack, $safeeval); if ( $Apache::matchresponse::conceptgroup