src/hg/lib/hui.c 1.243
1.243 2009/10/26 22:14:40 tdreszer
Moved dimension Z outside of matrix. Requested by Pauline and does make things clearer
Index: src/hg/lib/hui.c
===================================================================
RCS file: /projects/compbio/cvsroot/kent/src/hg/lib/hui.c,v
retrieving revision 1.242
retrieving revision 1.243
diff -b -B -U 4 -r1.242 -r1.243
--- src/hg/lib/hui.c 21 Oct 2009 15:51:47 -0000 1.242
+++ src/hg/lib/hui.c 26 Oct 2009 22:14:40 -0000 1.243
@@ -5051,17 +5051,41 @@
safef(javascript, sizeof(javascript), "%s:</B>",dimensionY->title);
else if(dimensionX && dimensionY && !dimensionZ)
safef(javascript, sizeof(javascript), "%s and %s:</B>",dimensionX->title,dimensionY->title);
else //if(dimensionX && dimensionY && dimensionZ)
- safef(javascript, sizeof(javascript), "%s, %s and %s:</B>",dimensionX->title,dimensionY->title,dimensionZ->title);
+ safef(javascript, sizeof(javascript), "%s, %s and %s:</B>",dimensionZ->title,dimensionX->title,dimensionY->title);
puts(strLower(javascript));
if(!subgroupingExists(parentTdb,"view"))
puts("(<A HREF=\"../goldenPath/help/multiView.html\" title='Help on views' TARGET=_BLANK>help</A>)\n");
puts("<BR>\n");
-printf("<TABLE class='greenBox' bgcolor='%s' borderColor='%s'}>\n",COLOR_BG_DEFAULT,COLOR_BG_DEFAULT);
+if(dimensionZ)
+ {
+ printf("<BR><TABLE>\n");
+ printf("<TR><TH valign=top align=left colspan=2 rowspan=20> <B><EM>%s</EM></B>:",dimensionZ->title);
+ char *dimZdefaults = trackDbSettingOrDefault(parentTdb,"dimensionZchecked","");
+ boolean alreadySet=FALSE;
+ for(ixZ=0;ixZ<sizeOfZ;ixZ++)
+ {
+ if(tdbsZ[ixZ] != NULL && cellsZ[ixZ]>0)
+ {
+ printf("<TH align=left nowrap>");
+ safef(objName, sizeof(objName), "%s.mat_%s_dimZ_cb",parentTdb->tableName,dimensionZ->names[ixZ]);
+ alreadySet=(NULL!=findWordByDelimiter(dimensionZ->names[ixZ],',',dimZdefaults));
+ alreadySet=cartUsualBoolean(cart,objName,alreadySet);
+ struct dyString *dyJS = dyStringCreate("onclick='matCbClick(this);'");
+ dyStringPrintf(dyJS, " class=\"matCB dimZ %s\"",dimensionZ->names[ixZ]);
+ cgiMakeCheckBoxJS(objName,alreadySet,dyStringCannibalize(&dyJS));// dimZ is set by cart variable, while X and Y are set by subtrack sets
+ printf("%s",labelWithVocabLink(parentTdb,tdbsZ[ixZ],dimensionZ->tag,dimensionZ->values[ixZ]));
+ puts("</TH>");
+ }
+ }
+ puts("</TD></TR></TABLE>");
+ }
+
+printf("<TABLE class='greenBox' bgcolor='%s' borderColor='%s'>\n",COLOR_BG_DEFAULT,COLOR_BG_DEFAULT);
matrixXheadings(parentTdb,dimensionX,dimensionY,tdbsX,TRUE);
// Now the Y by X matrix
@@ -5120,38 +5144,8 @@
}
if(dimensionY && cntY>MATRIX_BOTTOM_BUTTONS_AFTER)
matrixXheadings(parentTdb,dimensionX,dimensionY,tdbsX,FALSE);
-if(dimensionZ)
- {
- printf("<TR align='center' valign='bottom' BGCOLOR='%s''>",COLOR_BG_ALTDEFAULT);
- printf("<TH class='greenRoof' STYLE='font-size: 2' colspan=50> </TH>");
- printf("<TR BGCOLOR='%s'><TH valign=top align=left colspan=2 rowspan=20><B><EM>%s</EM></B>:",
- COLOR_BG_ALTDEFAULT,dimensionZ->title);
- int cntZ=0;
- char *dimZdefaults = trackDbSettingOrDefault(parentTdb,"dimensionZchecked","");
- boolean alreadySet=FALSE;
- for(ixZ=0;ixZ<sizeOfZ;ixZ++)
- {
- if(tdbsZ[ixZ] != NULL && cellsZ[ixZ]>0)
- {
- if(cntZ > 0 && (cntZ % cntX) == 0)
- printf("</TR><TR BGCOLOR='%s'>",COLOR_BG_ALTDEFAULT);
- printf("<TH align=left nowrap>");
- safef(objName, sizeof(objName), "%s.mat_%s_dimZ_cb",parentTdb->tableName,dimensionZ->names[ixZ]);
- alreadySet=(NULL!=findWordByDelimiter(dimensionZ->names[ixZ],',',dimZdefaults));
- alreadySet=cartUsualBoolean(cart,objName,alreadySet);
- struct dyString *dyJS = dyStringCreate("onclick='matCbClick(this);'");
- dyStringPrintf(dyJS, " class=\"matCB dimZ %s\"",dimensionZ->names[ixZ]);
- cgiMakeCheckBoxJS(objName,alreadySet,dyStringCannibalize(&dyJS));// dimZ is set by cart variable, while X and Y are set by subtrack sets
- printf("%s",labelWithVocabLink(parentTdb,tdbsZ[ixZ],dimensionZ->tag,dimensionZ->values[ixZ]));
- puts("</TH>");
- cntZ++;
- }
- }
- if((cntZ % cntX) > 0)
- printf("<TH colspan=%d> </TH>",cntX);
- }
puts("</TD></TR></TABLE>");
subgroupMembersFree(&dimensionX);
subgroupMembersFree(&dimensionY);