\n");
puts(
" \n");
}
static void printTissueTable()
/* Output HTML with tissue labels and colors, in 2 columns, to fit next to body map */
{
struct gtexTissue *tis, *tissues = gtexGetTissues(version);
char var[512];
safef(var, sizeof var, "%s.%s", trackDb->track, GTEX_TISSUE_SELECT);
struct hash *selectedHash = cartHashList(cart, var);
struct gtexTissue **tisTable = NULL;
int count = slCount(tissues);
AllocArray(tisTable, count);
int i=0, col=0;
int cols = 2;
int last = count/2 + 1;
puts(
" \n"
"
\n"
"
Tissues
\n"
"
\n"
" Click label below or in Body Map to set or clear a tissue\n"
"
\n"
"
\n"
"
set all
\n"
"
clear all
\n"
"
\n"
"
\n"
);
puts(
"
\n");
puts(
"
\n");
for (tis = tissues; tis != NULL; tis = tis->next)
{
if (tis->id < last)
i = tis->id * 2;
else
i = (tis->id - last) * 2 + 1;
tisTable[i] = tis;
}
boolean all = (hashNumEntries(selectedHash) == 0) ? TRUE : FALSE;
for (i=0; iname) != NULL);
printf(
"
%s",
isChecked ? "gbmTissueSelected" : "", tis->name, tis->description);
// Hidden checkbox stores value for cart
printf(
"",
var, tis->name, isChecked ? "checked" : "");
puts(
"
");
col++;
if (col > cols-1)
{
puts("
\n
");
col = 0;
}
}
puts(
"
\n");
puts(
"
");
char buf[512];
safef(buf, sizeof(buf), "%s%s.%s", cgiMultListShadowPrefix(), trackDb->track, GTEX_TISSUE_SELECT);
cgiMakeHiddenVar(buf, "0");
}
static void printTrackConfig()
/* Print track configuration panels, including Body Map.
The layout is 2-column. Left column is body map SVG.
Right column has a top panel for configuration settings (non-tissue),
and a lower panel with a tissue selection list.
*/
{
puts(
"\n"
"