--- loncom/homework/edit.pm 2003/05/04 22:14:53 1.48
+++ loncom/homework/edit.pm 2003/05/06 11:54:08 1.49
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# edit mode helpers
#
-# $Id: edit.pm,v 1.48 2003/05/04 22:14:53 albertel Exp $
+# $Id: edit.pm,v 1.49 2003/05/06 11:54:08 www Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -40,6 +40,9 @@ use HTML::Entities();
# depth of nesting of edit
$Apache::edit::colordepth=0;
@Apache::edit::inserttag=();
+# image-type responses: active background image and curdepth at definition
+$Apache::edit::bgimgsrc='';
+$Apache::edit::bgimgsrccurdepth='';
sub initialize_edit {
$Apache::edit::colordepth=0;
@@ -565,6 +568,64 @@ sub select_or_text_arg {
return $result;
}
+#----------------------------------------------------- image coordinates
+# single image coordinates, x, y
+sub entercoords {
+ my ($idx,,$idy,$mode,$width,$height) = @_;
+ unless ($Apache::edit::bgimgsrc) { return ''; }
+ if ($idx) { $idx.='_'; }
+ if ($idy) { $idy.='_'; }
+ my $bgfile=&Apache::lonnet::escape($Apache::edit::bgimgsrc);
+ my $form = 'lonhomework';
+ my $element;
+ if (! defined($mode) || $mode eq 'attribute') {
+ $element = &Apache::lonnet::escape("$Apache::lonxml::curdepth");
+ } elsif ($mode eq 'textnode') { # for data between ...
+ $element = &Apache::lonnet::escape('homework_edit_'.
+ $Apache::lonxml::curdepth);
+ }
+ my $formheight='';
+ if ($height) {
+ $formheight='&formheight='.$height.'_'.$Apache::edit::bgimgsrccurdepth;
+ }
+ my $formwidth='';
+ if ($width) {
+ $formwidth='&formwidth='.$width.'_'.$Apache::edit::bgimgsrccurdepth;
+ }
+ my $result = <<"ENDBUTTON";
+Click Coordinates
+ENDBUTTON
+ return $result;
+}
+
+# coordinate pair (x1,y1)-(x2,y2)
+sub entercoordpair {
+ my ($id,$mode,$width,$height) = @_;
+ unless ($Apache::edit::bgimgsrc) { return ''; }
+ my $bgfile=&Apache::lonnet::escape($Apache::edit::bgimgsrc);
+ my $form = 'lonhomework';
+ my $element;
+ if (! defined($mode) || $mode eq 'attribute') {
+ $element = &Apache::lonnet::escape("$id\_$Apache::lonxml::curdepth");
+ } elsif ($mode eq 'textnode') { # for data between ...
+ $element = &Apache::lonnet::escape('homework_edit_'.
+ $Apache::lonxml::curdepth);
+ }
+ my $formheight='';
+ if ($height) {
+ $formheight='&formheight='.$height.'_'.$Apache::edit::bgimgsrccurdepth;
+ }
+ my $formwidth='';
+ if ($width) {
+ $formwidth='&formwidth='.$width.'_'.$Apache::edit::bgimgsrccurdepth;
+ }
+ my $result = <<"ENDBUTTON";
+Click Coordinate Pair
+ENDBUTTON
+ return $result;
+}
#----------------------------------------------------- browse
sub browse {
# insert a link to call up the filesystem browser (lonindexer)
@@ -572,7 +633,7 @@ sub browse {
my $form = 'lonhomework';
my $element;
if (! defined($mode) || $mode eq 'attribute') {
- $element = &Apache::lonnet::escape("$Apache::lonxml::curdepth.$id");
+ $element = &Apache::lonnet::escape("$id\_$Apache::lonxml::curdepth");
} elsif ($mode eq 'textnode') { # for data between ...
$element = &Apache::lonnet::escape('homework_edit_'.
$Apache::lonxml::curdepth);
@@ -586,9 +647,15 @@ ENDBUTTON
#----------------------------------------------------- browse
sub search {
# insert a link to call up the filesystem browser (lonindexer)
- $_ = shift;
+ my ($id, $mode) = @_;
my $form = 'lonhomework';
- my $element = &Apache::lonnet::escape("$Apache::lonxml::curdepth.$_");
+ my $element;
+ if (! defined($mode) || $mode eq 'attribute') {
+ $element = &Apache::lonnet::escape("$id\_$Apache::lonxml::curdepth");
+ } elsif ($mode eq 'textnode') { # for data between ...
+ $element = &Apache::lonnet::escape('homework_edit_'.
+ $Apache::lonxml::curdepth);
+ }
my $result = <<"ENDBUTTON";
Search
ENDBUTTON