--- rat/client/Attic/code.html 2000/06/08 16:19:50 1.4
+++ rat/client/Attic/code.html 2000/06/28 03:41:48 1.5
@@ -9,7 +9,7 @@ Resource Assembly Tool
1/7,1/8,1/10,1/14,1/15,1/16,1/21,1/22,1/29,1/30,1/31,
2/2,2/3,2/10,2/12,2/13,2/14,2/15,2/17,2/18,2/19,2/20,2/21,2/22,
5/2,5/3,5/4,5/5,5/6,5/8,5/9,5/13,5/18,5/20,5/22,5/24,5/25,
-6/7,6/8
+6/7,6/8,6/9,6/10,6/12,6/15
Gerd Kortemeyer with Scott Harrison
-->
@@ -21,7 +21,7 @@ var row=new Array();
var maxrow=-1;
var col=new Array();
var maxcol=-1;
-var lastempty=-2;
+
var colmap=new Array();
var colmap2=new Array();
var colmap3=new Array();
@@ -61,6 +61,7 @@ var data3=new Array(1024);
var data4=new Array(1024);
var data5=new Array(1024);
+var inf;
// ------------------------------------------------ Insert a row into the table
@@ -482,13 +483,7 @@ function cleanup () {
var j,kj,i;
disrows=0;
discols=0;
-
- if (lastempty!=obj.length) {
- insertrow(maxrow);
- insertcol(maxcol);
- addobj(maxrow,'e&'+maxcol);
- lastempty=obj.length;
- }
+ var emptyspots=0;
for (kj=0;kj<=maxcol;kj++) { data1[kj]=0; }
for (kj=0;kj<=maxrow;kj++) {
@@ -512,6 +507,7 @@ function cleanup () {
}
if (obj[colmap[j]].substring(0,2)=='b&') {
data1[j]=2;
+ if (colmap[maxcol]==0) { emptyspots++; }
rowtype[kj]=2;
}
}
@@ -526,6 +522,16 @@ function cleanup () {
if (rowtype[j]==2) { disrows+=3; }
if (rowtype[j]==1) { disrows+=1; }
}
+ if (emptyspots==0) {
+ insertrow(maxrow);
+ insertcol(maxcol);
+ addobj(maxrow,'e&'+maxcol);
+ discols++;
+ disrows++;
+ rowtype[maxrow]=2;
+ coltype[maxcol]=2;
+ }
+
}
// -------------------------------------------- Delete a condition from a block
@@ -853,9 +859,21 @@ function drawcell (rtype,ctype,what,cm,o
('');
} else {
- parent.mapout.document.write
- ('
');
+ if (what=='rs:') {
+ parent.mapout.document.write
+ ('
');
+ } else {
+ if (what=='rf:') {
+ parent.mapout.document.write
+ ('
');
+ } else {
+ parent.mapout.document.write
+ ('
');
+ }
+ }
}
}
if (obj1!='') {
@@ -887,7 +905,7 @@ function rescolor (ext,typ) {
if (ext=='true') { bc='55'; } else { bc='99'; }
if (typ=='mandatory') { rc='FF'; } else { rc='BB'; }
if (typ=='optional') { gc='BB'; } else { gc='FF'; }
- if ((typ=='start') || (typ=='end')) { rc='AA'; gc='AA'; bc='FF'; }
+ if ((typ=='start') || (typ=='finish')) { rc='AA'; gc='AA'; bc='FF'; }
return '#'+rc+gc+bc;
}
@@ -902,7 +920,7 @@ function condcolor(typ) {
// ----------------------------------------------------------------- Draw a row
function drawrow (jid) {
-var j; var jk; var k; var ck;
+var j; var jk; var k; var ck; var rtype;
var objd1=new Array();
var objd2=new Array();
var notempty=new Array();
@@ -921,6 +939,7 @@ if (rowtype[jid]!=0) {
data3=obj[data2[jk]].split('&');
if (data3[0]=='b') {
data1=objcont[data2[jk]].split(':');
+ rtype=data1[3];
ck=rescolor(data1[2],data1[3]);
left=maxcol;
leftin=maxcol;
@@ -958,7 +977,15 @@ if (rowtype[jid]!=0) {
}
for (k=left;k<=right;k++) { notempty[k]=1; colmap5[k]=ck; }
middle=Math.round((left+right)/2);
- colmap[middle]='r:';
+ if (rtype=='start') {
+ colmap[middle]='rs:';
+ } else {
+ if (rtype=='finish') {
+ colmap[middle]='rf:';
+ } else {
+ colmap[middle]='r:';
+ }
+ }
objd1[middle]+='r&'+data2[jk];
if (rightin>middle) {
@@ -1077,13 +1104,13 @@ if (rowtype[jid]!=0) {
}
if (rowtype[jid]==2) {
parent.mapout.document.writeln('');
- parent.mapout.document.writeln('
'+
@@ -1189,13 +1215,27 @@ function infoclear() {
}
}
+// ------------------------------------------------------------ Open inf window
+
+function infopen() {
+ var options="scrollbars=1,resizable=1,menubar=0,width=400,height=300";
+ inf=open("","infout",options);
+}
+
+// -------------------------------------------------------- Do inf status check
+
+function infcheck() {
+ if (inf.closed) {
+ infopen();
+ }
+}
+
// --------------------------------------------------- Prints out resource info
function info(infostr) {
if ((editmode!=1) && (infostr!=lastinfo)) {
notclear=1;
- var options="scrollbars=1,resizable=1,menubar=0,width=400,height=300";
- var inf=open("","infout",options);
+ infcheck();
inf.document.clear();
inf.document.writeln(
''+
@@ -1225,7 +1265,15 @@ function info(infostr) {
data2=objcont[data1[1]].split(':');
inf.document.write('');
if (data2[2]=='true') { inf.document.write('External '); }
- inf.document.write('Resource');
+ if (data2[3]=='start') {
+ inf.document.writeln('Start');
+ } else {
+ if (data2[3]=='finish') {
+ inf.document.writeln('Finish');
+ } else {
+ inf.document.writeln('Resource');
+ }
+ }
if (data2[3]=='mandatory') {
inf.document.write(' (Mandatory)');
}
@@ -1285,6 +1333,8 @@ function insertreslink(infostr) {
var tobj;
var nobj;
var cobj;
+ var cid;
+ var rid;
data1=infostr.split('&');
data2=obj[data1[0]].split('&');
lnr=data2[data2.length-2];
@@ -1306,14 +1356,33 @@ function insertreslink(infostr) {
joinres(nobj,tobj,0);
}
+// -------------------------------------------- Insert resource after condition
+
+function insertcondlink(cid,lnr) {
+ var fobj;
+ var tobj;
+ var nobj;
+ var cobj;
+ data3=objlinks[lnr].split(':');
+ fobj=data3[0];
+ tobj=data3[1];
+ cobj=data3[2];
+ rid=(obj[fobj].split('&'))[1];
+ insertrow(row[rid]);
+ dellink(lnr);
+ newresource(maxrow,cid,'','','false','normal');
+ nobj=obj.length-1;
+ joinres(fobj,nobj,cobj);
+ joinres(nobj,tobj,0);
+}
+
// ---------------------------------------------------- Handles "click to edit"
function handler(infostr) {
var k;
editmode=1;
notclear=1;
- var options="scrollbars=1,resizable=1,menubar=0,width=400,height=300";
- var inf=open("","infout",options);
+ infcheck();
inf.document.clear();
inf.document.writeln(
''+
@@ -1366,6 +1435,13 @@ function handler(infostr) {
'Delete Link');
+
+ inf.document.writeln(' Insert Resource Into Link'); + + } else { if (data1[0]=='r') { if (linkmode!=0) { @@ -1376,18 +1452,28 @@ function handler(infostr) { inf.document.writeln('Linked Resources'); draw(); } else { - inf.document.writeln('Resource'); data2=objcont[data1[1]].split(':'); + if (data2[3]=='start') { + inf.document.writeln('Start'); + } else { + if (data2[3]=='finish') { + inf.document.writeln('Finish'); + } else { + inf.document.writeln('Resource'); + } + } inf.document.write( ' |