--- loncom/homework/randomlabel.pm 2001/12/04 15:17:56 1.8 +++ loncom/homework/randomlabel.pm 2002/02/07 16:45:06 1.13 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # random labelling tool # -# $Id: randomlabel.pm,v 1.8 2001/12/04 15:17:56 albertel Exp $ +# $Id: randomlabel.pm,v 1.13 2002/02/07 16:45:06 sakharuk Exp $ # # Copyright Michigan State University Board of Trustees # @@ -58,8 +58,9 @@ # =========================================== package Apache::randomlabel; use strict; +use Apache::edit; -sub BEGIN { +BEGIN { &Apache::lonxml::register('Apache::randomlabel',('randomlabel','labelgroup','location','label')); } @@ -94,16 +95,17 @@ sub start_randomlabel { $result.=""; $result.=""; } elsif ($target eq 'tex') { - $bgimg=~s/(.gif|.jpg)$/.ps/; - $result.='\vspace*{2mm} \\ \noindent \epsfxsize='.$texwidth.' \epsffile{'. - $bgimg.'}\setlength{\unitlength}{1mm} \\ \begin{picture}(0,0)(0,-5)'; + $bgimg=~s/(.gif|.jpg)$/.eps/; + $bgimg=~s/http:\/\/[^\/]*/\/home\/httpd\/html/; + $result.='\vspace*{2mm} \noindent \epsfxsize='.$texwidth.' mm \epsffile{'. + $bgimg.'}\setlength{\unitlength}{1mm} \begin{picture}('.$texwidth.','.$texwidth*$h/$w.')' } elsif ($target eq 'edit') { $result.=&Apache::edit::tag_start($target,$token); $result.=&Apache::edit::text_arg('Image:','bgimg',$token,75).'
'. &Apache::edit::text_arg('Width(pixel):','width',$token,4). &Apache::edit::text_arg('Height(pixel):','height',$token,4). &Apache::edit::text_arg('TeXWidth(mm):','texwidth',$token,4). - ''; + &Apache::edit::end_row().&Apache::edit::start_spanning_row(); } elsif ($target eq 'modified') { my $constructtag=&Apache::edit::get_new_args($token,$parstack,$safeeval, 'bgimg','width','height', @@ -154,7 +156,7 @@ sub start_labelgroup { $result.=&Apache::edit::tag_start($target,$token); $result.=&Apache::edit::text_arg('Name:','name',$token). &Apache::edit::select_arg('Type:','type',['text','image'],$token). - ''; + &Apache::edit::end_row().&Apache::edit::start_spanning_row(); } elsif ($target eq 'modified') { my $constructtag=&Apache::edit::get_new_args($token,$parstack,$safeeval, 'name','type'); @@ -244,7 +246,7 @@ sub end_labelgroup { my $x = $Apache::randomlabel::xcoord[$i]; my $y = $Apache::randomlabel::ycoord[$i]; my $value = $Apache::randomlabel::value[$i]; - my $tcX=$x*($texwidth/$wwidth); + my $tcX=$x*($texwidth/$wwidth) - $texwidth; my $tcY=$TY1-$y*($TY1/$wheight)-2; $tcX=sprintf('%.2f',$tcX); $tcY=sprintf('%.2f',$tcY); @@ -278,7 +280,7 @@ sub start_location { $result.=&Apache::edit::text_arg('X:','x',$token,4). &Apache::edit::text_arg('Y:','y',$token,4). &Apache::edit::text_arg('Value:','value',$token). - ''; + &Apache::edit::end_row(); $result.=&Apache::edit::end_table; } elsif ($target eq 'modified') { my $constructtag=&Apache::edit::get_new_args($token,$parstack,$safeeval, @@ -309,12 +311,12 @@ sub start_label { } elsif ($target eq 'edit') { $result.=&Apache::edit::tag_start($target,$token); my $text=&Apache::lonxml::get_all_text("/label",$$parser[-1]); - $result.=''. + $result.=&Apache::edit::end_row().&Apache::edit::start_spanning_row(). &Apache::edit::editfield('',$text,'',20,1). &Apache::edit::end_table(); } elsif ($target eq 'modified') { my $text=$$parser[-1]->get_text("/label"); - $result.=&Apache::edit::modifiedfield($token); + $result.='