1b3ed4f497bcd39c9b3de7581a0a7daf3ef6daaa braney Mon Oct 7 15:48:44 2013 -0700 let people put a treeImage in the composite matrix (for snakes) diff --git src/hg/lib/hui.c src/hg/lib/hui.c index 39d6502..9cb5fac 100644 --- src/hg/lib/hui.c +++ src/hg/lib/hui.c @@ -7122,30 +7122,39 @@ if (!subgroupingExists(parentTdb,"view")) puts("(<A HREF=\"../goldenPath/help/multiView.html\" title='Help on subtrack selection' " "TARGET=_BLANK>help</A>)\n"); puts("<BR>\n"); if (membersForAll->abcCount > 0 && membersForAll->filters == FALSE) { displayABCdimensions(db,cart,parentTdb,subtrackRefList,membersForAll); } // Could have been just filterComposite. Must be an X or Y dimension if (dimensionX == NULL && dimensionY == NULL) return FALSE; +// if there is a treeimage, put it beside the matrix in the green box +char *treeImage = trackDbSetting(parentTdb, "treeImage"); +if (treeImage != NULL) + { + printf("<TABLE class='greenBox matrix' ><TD>"); + printf("<TABLE cellspacing=0 style='background-color:%s;'>\n", + COLOR_BG_ALTDEFAULT); + } +else printf("<TABLE class='greenBox matrix' cellspacing=0 style='background-color:%s;'>\n", COLOR_BG_ALTDEFAULT); (void)matrixXheadings(db,parentTdb,membersForAll,TRUE); // Now the Y by X matrix int cntX=0,cntY=0; for (ixY = 0; ixY < sizeOfY; ixY++) { if (dimensionY == NULL || (dimensionY->tags[ixY])) { cntY++; assert(!dimensionY || ixY < dimensionY->count); printf("<TR ALIGN=CENTER>"); @@ -7226,30 +7235,34 @@ printf("<TD class='matCell %s'></TD>\n", (dimensionX ? dimensionX->tags[ixX] : dimensionY->tags[ixY])); } } } if (dimensionX && cntX>MATRIX_RIGHT_BUTTONS_AFTER) matrixYheadings(db,parentTdb, membersForAll,ixY,FALSE); puts("</TR>\n"); } } if (dimensionY && cntY>MATRIX_BOTTOM_BUTTONS_AFTER) matrixXheadings(db,parentTdb,membersForAll,FALSE); puts("</TD></TR></TABLE>"); +// if there is a treeImage, put it beside the matrix +if (treeImage != NULL) + printf("</TD><TD><IMG SRC=\"%s\"></TD></TABLE>", treeImage); + // If any filter additional filter composites, they can be added at the end. compositeUiByFilter(db, cart, parentTdb, formName); return TRUE; } static boolean compositeUiAllButtons(char *db, struct cart *cart, struct trackDb *parentTdb, char *formName) // UI for composite tracks: all/none buttons only (as opposed to matrix or lots of buttons { if (trackDbCountDescendantLeaves(parentTdb) <= 1) return FALSE; if (dimensionsExist(parentTdb)) return FALSE;