ec8e394fe288b94187c9258a0aa02a396d7c3ab0 gperez2 Fri Jun 14 18:41:29 2024 -0700 Switching hgTables buttons and labels to sentence case, refs #25787 diff --git src/hg/hgTables/mainPage.c src/hg/hgTables/mainPage.c index 96e0077..00e6074 100644 --- src/hg/hgTables/mainPage.c +++ src/hg/hgTables/mainPage.c @@ -105,31 +105,31 @@ } void makeRegionButton(char *val, char *selVal) /* Make region radio button including a little Javascript * to save selection state. */ { makeRegionButtonExtraHtml(val, selVal, NULL); } struct grp *showGroupField(char *groupVar, char *event, char *groupScript, struct sqlConnection *conn, boolean allTablesOk) /* Show group control. Returns selected group. */ { struct grp *group, *groupList = fullGroupList; struct grp *selGroup = findSelectedGroup(groupList, groupVar); -hPrintf("<B>group:</B>\n"); +hPrintf("<B>Group:</B>\n"); hPrintf("<SELECT NAME=%s id='%s'>\n", groupVar, groupVar); jsOnEventById(event,groupVar,groupScript); for (group = groupList; group != NULL; group = group->next) { if (allTablesOk || differentString(group->name, "allTables")) hPrintf(" <OPTION VALUE=%s%s>%s</OPTION>\n", group->name, (group == selGroup ? " SELECTED" : ""), group->label); } hPrintf("</SELECT>\n"); return selGroup; } static void addIfExists(struct hash *hash, struct slName **pList, char *name) /* Add name to tail of list if it exists in hash. */ @@ -177,31 +177,31 @@ struct slName *dbList = getDbListForGenome(), *db; hPrintf("<B>database:</B>\n"); hPrintf("<SELECT NAME=\"%s\" id='%s'>\n", trackVar, trackVar); jsOnEventById(event, trackVar, trackScript); for (db = dbList; db != NULL; db = db->next) { hPrintf(" <OPTION VALUE=%s%s>%s</OPTION>\n", db->name, (sameString(db->name, selDb) ? " SELECTED" : ""), db->name); } hPrintf("</SELECT>\n"); } else { boolean allTracks = sameString(selGroup->name, "allTracks"); - hPrintf("<B>track:</B>\n"); + hPrintf("<B>Track:</B>\n"); hPrintf("<SELECT NAME=\"%s\" id='%s'>\n", trackVar, trackVar); jsOnEventById(event, trackVar, trackScript); if (allTracks) { selTrack = findSelectedTrack(fullTrackList, NULL, trackVar); slSort(&fullTrackList, trackDbCmpShortLabel); } else { selTrack = findSelectedTrack(fullTrackList, selGroup, trackVar); } boolean selTrackIsDisabled = FALSE; struct trackDb *firstEnabled = NULL; for (track = fullTrackList; track != NULL; track = track->next) { @@ -294,31 +294,31 @@ struct slName *name, *nameList = NULL; char *selTable; if (track == NULL) nameList = tablesForDb(findSelDb()); else nameList = cartTrackDbTablesForTrack(database, track, useJoiner); /* Get currently selected table. If it isn't in our list * then revert to first in list. */ selTable = cartUsualString(cart, varName, nameList->name); if (!slNameInListUseCase(nameList, selTable)) selTable = nameList->name; /* Print out label and drop-down list. */ -hPrintf("<B>table: </B>"); +hPrintf("<B>Table: </B>"); hPrintf("<SELECT NAME=\"%s\" id='%s'>\n", varName, varName); jsOnEventById("change", varName, onChangeTable()); struct trackDb *selTdb = NULL; for (name = nameList; name != NULL; name = name->next) { struct trackDb *tdb = NULL; if (curTrack != NULL && isHubTrack(curTrack->track)) { if (sameString(curTrack->track, name->name)) tdb = curTrack; else if (curTrack->subtracks != NULL) { // maybe a subtrack is what we're looking for struct trackDb *sub = subTdbFind(curTrack, name->name); if (sub) @@ -478,56 +478,56 @@ hPrintf(" <A HREF=\"http://great.stanford.edu\" target=_BLANK>GREAT</A>"); if (isGenomeSpaceEnabled()) { nbSpaces(2); cgiMakeCheckBoxWithId("sendToGenomeSpace", doGenomeSpace(), "checkboxGenomeSpace"); jsOnEventById("click", "checkboxGenomeSpace", "document.getElementById('checkboxGreat').checked=false;" "document.getElementById('checkboxGalaxy').checked=false; return true;"); hPrintf(" <A HREF=\"http://www.genomespace.org\" target=_BLANK>GenomeSpace</A>"); } } hPrintf("</TD></TR>\n"); } -struct outputType otAllFields = { NULL, outPrimaryTable,"all fields from selected table", }; +struct outputType otAllFields = { NULL, outPrimaryTable,"All fields from selected table", }; struct outputType otSelected = { NULL, outSelectedFields, - "selected fields from primary and related tables", }; -struct outputType otSequence = { NULL, outSequence, "sequence", }; + "Selected fields from primary and related tables", }; +struct outputType otSequence = { NULL, outSequence, "Sequence", }; struct outputType otPal = { NULL, outPalOptions, "CDS FASTA alignment from multiple alignment", }; struct outputType otGff = { NULL, outGff, "GTF - gene transfer format (limited)", }; struct outputType otBed = { NULL, outBed, "BED - browser extensible data", }; -struct outputType otCustomTrack = { NULL, outCustomTrack, "custom track", }; -struct outputType otHyperlinks = { NULL, outHyperlinks, "hyperlinks to Genome Browser", }; -struct outputType otWigData = { NULL, outWigData, "data points", }; -struct outputType otWigBed = { NULL, outWigBed, "bed format", }; +struct outputType otCustomTrack = { NULL, outCustomTrack, "Custom track", }; +struct outputType otHyperlinks = { NULL, outHyperlinks, "Hyperlinks to Genome Browser", }; +struct outputType otWigData = { NULL, outWigData, "Data points", }; +struct outputType otWigBed = { NULL, outWigBed, "Bed format", }; struct outputType otMaf = { NULL, outMaf, "MAF - multiple alignment format", }; -struct outputType otChromGraphData = { NULL, outChromGraphData, "data points", }; -struct outputType otMicroarrayNames = { NULL, outMicroarrayNames, "microarray names", }; -struct outputType otMicroarrayGroupings = { NULL, outMicroarrayGroupings, "microarray groupings", }; +struct outputType otChromGraphData = { NULL, outChromGraphData, "Data points", }; +struct outputType otMicroarrayNames = { NULL, outMicroarrayNames, "Microarray names", }; +struct outputType otMicroarrayGroupings = { NULL, outMicroarrayGroupings, "Microarray groupings", }; static void showOutputTypeRow(boolean isWig, boolean isBedGr, boolean isPositional, boolean isMaf, boolean isChromGraphCt, boolean isPal, boolean isMicroarray, boolean isHalSnake) /* Print output line. */ { struct outputType *otList = NULL, *otDefault = NULL; boolean bedifiedOnly = (anySubtrackMerge(database, curTable) || anyIntersection()); -hPrintf("<TR><TD><B>output format:</B>\n"); +hPrintf("<TR><TD><B>Output format:</B>\n"); if (isBedGr) { if (! bedifiedOnly) { slAddTail(&otList, &otAllFields); slAddTail(&otList, &otSelected); } slAddTail(&otList, &otWigData); slAddTail(&otList, &otWigBed); slAddTail(&otList, &otCustomTrack); slAddTail(&otList, &otHyperlinks); } else if (isWig) { @@ -645,43 +645,43 @@ isChromGraphCt = FALSE, isPal = FALSE, isArray = FALSE, isBam = FALSE, isVcf = FALSE, isHalSnake = FALSE, isLongTabix = FALSE, isHic = FALSE; boolean gotClade = hGotClade(); struct hTableInfo *hti = NULL; hPrintf("<TABLE BORDER=0>\n"); int stepNumber = 1; printStep(stepNumber++); /* Print clade, genome and assembly line. */ { if (gotClade) { - hPrintf("<TR><TD><B>clade:</B>\n"); + hPrintf("<TR><TD><B>Clade:</B>\n"); printCladeListHtml(hGenome(database), "change", onChangeClade()); nbSpaces(3); - hPrintf("<B>genome:</B>\n"); + hPrintf("<B>Genome:</B>\n"); printGenomeListForCladeHtml(database, "change", onChangeOrg()); } else { - hPrintf("<TR><TD><B>genome:</B>\n"); + hPrintf("<TR><TD><B>Genome:</B>\n"); printGenomeListHtml(database, "change", onChangeOrg()); } nbSpaces(3); - hPrintf("<B>assembly:</B>\n"); + hPrintf("<B>Assembly:</B>\n"); printAssemblyListHtml(database, "change", onChangeDb()); hPrintf("</TD></TR>\n"); } /* Print group and track line. */ { hPrintf("<TR><TD>"); selGroup = showGroupField(hgtaGroup, "change", onChangeGroupOrTrack(), conn, hAllowAllTables()); nbSpaces(3); curTrack = showTrackField(selGroup, hgtaTrack, "change", onChangeGroupOrTrack(), FALSE); nbSpaces(3); hPrintf("</TD></TR>\n"); } /* Print table line. */ @@ -700,31 +700,31 @@ { isPositional = TRUE; isWig = TRUE; } isHalSnake = isHalTable( curTable); isMaf = isMafTable(database, curTrack, curTable); isBedGr = isBedGraph(curTable); isArray = isMicroarray(curTrack, curTable); struct trackDb *tdb = findTdbForTable(database, curTrack, curTable, ctLookupName); isPal = isPalCompatible(conn, tdb, curTable); nbSpaces(1); if (isCustomTrack(curTable)) { isChromGraphCt = isChromGraph(tdb); } - cgiMakeButton(hgtaDoSchema, "data format description"); + cgiMakeButton(hgtaDoSchema, "Data format description"); hPrintf("</TD></TR>\n"); } if (curTrack == NULL) { struct trackDb *tdb = hTrackDbForTrack(database, curTable); struct trackDb *cTdb = hCompositeTrackDbForSubtrack(database, tdb); if (cTdb) curTrack = cTdb; else curTrack = tdb; isMaf = isMafTable(database, curTrack, curTable); } /* Table-specific options */ @@ -744,257 +744,257 @@ char *regionType; if (cartVarExists(cart, "hgFind.matches")) // coming back from a search regionType = cartUsualString(cart, hgtaRegionType, hgtaRegionTypeRange); else regionType = cartUsualString(cart, hgtaRegionType, hgtaRegionTypeGenome); char *range = cartUsualString(cart, hgtaRange, ""); if (isPositional) { boolean doEncode = FALSE; if (!trackHubDatabase(database)) doEncode = sqlTableExists(conn, "encodeRegions"); - hPrintf("<TR><TD><B>region:</B>\n"); + hPrintf("<TR><TD><B>Region:</B>\n"); /* If regionType not allowed force it to "genome". */ if ((sameString(regionType, hgtaRegionTypeUserRegions) && userRegionsFileName() == NULL) || (sameString(regionType, hgtaRegionTypeEncode) && !doEncode)) regionType = hgtaRegionTypeGenome; // Is "genome" is not allowed because of tdb 'tableBrowser noGenome'? boolean disableGenome = ((curTrack && cartTrackDbIsNoGenome(database, curTrack->table)) || (curTable && cartTrackDbIsNoGenome(database, curTable))); // If "genome" is selected but not allowed, force it to "range": if (sameString(regionType, hgtaRegionTypeGenome) && disableGenome) regionType = hgtaRegionTypeRange; jsTrackingVar("regionType", regionType); if (disableGenome) { makeRegionButtonExtraHtml(hgtaRegionTypeGenome, regionType, "DISABLED"); hPrintf(" <span"NO_GENOME_CLASS">genome (unavailable for selected track)</span>" " "); } else { makeRegionButton(hgtaRegionTypeGenome, regionType); - hPrintf(" genome "); + hPrintf(" Genome "); } if (doEncode) { makeRegionButton(hgtaRegionTypeEncode, regionType); hPrintf(" ENCODE Pilot regions "); } makeRegionButton(hgtaRegionTypeRange, regionType); - hPrintf(" position "); + hPrintf(" Position "); hPrintf("<INPUT TYPE=TEXT NAME=\"%s\" id='%s' SIZE=26 VALUE=\"%s\">\n", hgtaRange, hgtaRange, range); jsOnEventById("focus", hgtaRange, jsRadioUpdate(hgtaRegionType, "regionType", "range")); - cgiMakeButton(hgtaDoLookupPosition, "lookup"); + cgiMakeButton(hgtaDoLookupPosition, "Lookup"); hPrintf(" "); if (userRegionsFileName() != NULL) { makeRegionButton(hgtaRegionTypeUserRegions, regionType); - hPrintf(" defined regions "); - cgiMakeButton(hgtaDoSetUserRegions, "change"); + hPrintf(" Defined regions "); + cgiMakeButton(hgtaDoSetUserRegions, "Change"); hPrintf(" "); - cgiMakeButton(hgtaDoClearUserRegions, "clear"); + cgiMakeButton(hgtaDoClearUserRegions, "Clear"); } else - cgiMakeButton(hgtaDoSetUserRegions, "define regions"); + cgiMakeButton(hgtaDoSetUserRegions, "Define regions"); hPrintf("</TD></TR>\n"); if (disableGenome) { // no need to check curTrack for NULL, disableGenome can only be set if curTable is set hPrintf("<tr><td><DIV style='background-color: #faf2bb; opacity:0.9; border: 1px solid #EEE; margin: 2px; padding: 4px'>"); char *noGenomeNote = trackDbSettingClosestToHome(curTrack, "noGenomeReason"); hPrintf("<b>Note:</b> This track is unavailable for genome-wide download. "); if (noGenomeNote) hPrintf("Reason: %s", noGenomeNote); else hPrintf("Usually, this is due to distribution restrictions of the source database or the size of the track. Please see the track documentation for more details. Contact us if you are still unable to access the data. "); hPrintf("</DIV></td></tr>"); } } else { /* Need to put at least stubs of cgi variables in for JavaScript to work. */ jsTrackingVar("regionType", regionType); cgiMakeHiddenVar(hgtaRange, range); cgiMakeHiddenVar(hgtaRegionType, regionType); } /* Select identifiers line (if applicable). */ if (!isWig && getIdField(database, curTrack, curTable, hti) != NULL) { - hPrintf("<TR><TD><B>identifiers (names/accessions):</B>\n"); - cgiMakeButton(hgtaDoPasteIdentifiers, "paste list"); + hPrintf("<TR><TD><B>Identifiers (names/accessions):</B>\n"); + cgiMakeButton(hgtaDoPasteIdentifiers, "Paste list"); hPrintf(" "); - cgiMakeButton(hgtaDoUploadIdentifiers, "upload list"); + cgiMakeButton(hgtaDoUploadIdentifiers, "Upload list"); if (identifierFileName() != NULL) { hPrintf(" "); - cgiMakeButton(hgtaDoClearIdentifiers, "clear list"); + cgiMakeButton(hgtaDoClearIdentifiers, "Clear list"); } hPrintf("</TD></TR>\n"); } } /* button for option page here (median/log-ratio, etc) */ printStep(stepNumber++); /* Filter line. */ { -hPrintf("<TR><TD><B>filter:</B>\n"); +hPrintf("<TR><TD><B>Filter:</B>\n"); if (anyFilter()) { - cgiMakeButton(hgtaDoFilterPage, "edit"); + cgiMakeButton(hgtaDoFilterPage, "Edit"); hPrintf(" "); - cgiMakeButton(hgtaDoClearFilter, "clear"); + cgiMakeButton(hgtaDoClearFilter, "Clear"); if (isWig || isBedGr) wigShowFilter(conn); } else { - cgiMakeButton(hgtaDoFilterPage, "create"); + cgiMakeButton(hgtaDoFilterPage, "Create"); } hPrintf("</TD></TR>\n"); } /* Composite track subtrack merge line. */ boolean canSubtrackMerge = (curTrack && tdbIsComposite(curTrack) && !isBam && !isVcf && !isLongTabix && !isHic); if (canSubtrackMerge) { - hPrintf("<TR><TD><B>subtrack merge:</B>\n"); + hPrintf("<TR><TD><B>Subtrack merge:</B>\n"); if (anySubtrackMerge(database, curTable)) { - cgiMakeButton(hgtaDoSubtrackMergePage, "edit"); + cgiMakeButton(hgtaDoSubtrackMergePage, "Edit"); hPrintf(" "); - cgiMakeButton(hgtaDoClearSubtrackMerge, "clear"); + cgiMakeButton(hgtaDoClearSubtrackMerge, "Clear"); } else { - cgiMakeButton(hgtaDoSubtrackMergePage, "create"); + cgiMakeButton(hgtaDoSubtrackMergePage, "Create"); } hPrintf("</TD></TR>\n"); } /* Intersection line. */ if (isPositional) { if (anyIntersection()) { - hPrintf("<TR><TD><B>intersection with %s:</B>\n", + hPrintf("<TR><TD><B>Intersection with %s:</B>\n", cartString(cart, hgtaIntersectTable)); - cgiMakeButton(hgtaDoIntersectPage, "edit"); + cgiMakeButton(hgtaDoIntersectPage, "Edit"); hPrintf(" "); - cgiMakeButton(hgtaDoClearIntersect, "clear"); + cgiMakeButton(hgtaDoClearIntersect, "Clear"); hPrintf("</TD></TR>\n"); } else if (canIntersect(database, curTable)) { - hPrintf("<TR><TD><B>intersection:</B>\n"); - cgiMakeButton(hgtaDoIntersectPage, "create"); + hPrintf("<TR><TD><B>Intersection:</B>\n"); + cgiMakeButton(hgtaDoIntersectPage, "Create"); hPrintf("</TD></TR>\n"); } } /* Correlation line. */ struct trackDb *tdb = findTdbForTable(database, curTrack, curTable, ctLookupName); if (correlateTrackTableOK(tdb, curTable)) { char *table2 = cartUsualString(cart, hgtaCorrelateTable, "none"); - hPrintf("<TR><TD><B>correlation:</B>\n"); + hPrintf("<TR><TD><B>Correlation:</B>\n"); if (differentWord(table2, "none") && strlen(table2) && ! isNoGenomeDisabled(database, table2)) { struct grp *groupList = fullGroupList; struct grp *selGroup = findSelectedGroup(groupList, hgtaCorrelateGroup); struct trackDb *tdb2 = findSelectedTrack(fullTrackList, selGroup,hgtaCorrelateTrack); if (tdbIsComposite(tdb2)) { struct slRef *tdbRefList = trackDbListGetRefsToDescendantLeaves(tdb2->subtracks); struct slRef *tdbRef; for (tdbRef = tdbRefList; tdbRef != NULL; tdbRef = tdbRef->next) { struct trackDb *subTdb = tdbRef->val; if (sameString(table2, subTdb->table)) { tdb2 = subTdb; break; } } slFreeList(&tdbRefList); } - cgiMakeButton(hgtaDoCorrelatePage, "calculate"); - cgiMakeButton(hgtaDoClearCorrelate, "clear"); + cgiMakeButton(hgtaDoCorrelatePage, "Calculate"); + cgiMakeButton(hgtaDoClearCorrelate, "Clear"); if (tdb2 && tdb2->shortLabel) hPrintf(" (with: %s)", tdb2->shortLabel); #ifdef NOT_YET /* debugging dbg vvvvv */ if (curTrack && curTrack->type) /* dbg */ { hPrintf("<BR> (debug: '%s', '%s(%s)')", curTrack->type, tdb2->type, table2); } /* debugging debug ^^^^^ */ #endif } else - cgiMakeButton(hgtaDoCorrelatePage, "create"); + cgiMakeButton(hgtaDoCorrelatePage, "Create"); hPrintf("</TD></TR>\n"); } /* Print output type line. */ printStep(stepNumber++); showOutputTypeRow(isWig, isBedGr, isPositional, isMaf, isChromGraphCt, isPal, isArray, isHalSnake); /* Print output destination line. */ { char *compressType = cartUsualString(cart, hgtaCompressType, textOutCompressNone); char *fieldSep = cartUsualString(cart, hgtaOutSep, outTab); char *fileName = cartUsualString(cart, hgtaOutFileName, ""); hPrintf("<TR><TD>\n"); - hPrintf("<B>output filename:</B> "); + hPrintf("<B>Output filename:</B> "); cgiMakeTextVar(hgtaOutFileName, fileName, 29); hPrintf(" (<span id='excelOutNote' style='display:none'>add .csv extension if opening in Excel, </span>leave blank to keep output in browser)</TD></TR>\n"); hPrintf("<TR><TD>\n"); - hPrintf("<B>output field separator: </B>"); + hPrintf("<B>Output field separator: </B>"); // tab or csv output cgiMakeRadioButton(hgtaOutSep, outTab, sameWord(outTab, fieldSep)); hPrintf(" tsv (tab-separated)  "); cgiMakeRadioButton(hgtaOutSep, outCsv, sameWord(outCsv, fieldSep)); hPrintf(" csv (for excel) "); hPrintf("</TD></TR>\n"); hPrintf("<TR><TD>\n"); - hPrintf("<B>file type returned: </B>"); + hPrintf("<B>File type returned: </B>"); cgiMakeRadioButton(hgtaCompressType, textOutCompressNone, sameWord(textOutCompressNone, compressType)); - hPrintf(" plain text "); + hPrintf(" Plain text "); cgiMakeRadioButton(hgtaCompressType, textOutCompressGzip, sameWord(textOutCompressGzip, compressType)); - hPrintf(" gzip compressed"); + hPrintf(" Gzip compressed"); hPrintf("</TD></TR>\n"); } hPrintf("</TABLE>\n"); /* Submit buttons. */ { hPrintf("<BR>\n"); if (isWig || isBam || isVcf || isLongTabix || isHic) { char *name; extern char *maxOutMenu[]; char *maxOutput = maxOutMenu[0]; @@ -1012,35 +1012,35 @@ " a very large file that contains the original data values (not" " compressed into the wiggle format) -- see the Downloads page." "</I><BR>", maxOutput); else if (isBam || isVcf || isLongTabix || isHic) hPrintf( "<I>Note: to return more than %s lines, change the filter setting" " (above). Please consider downloading the entire data from our Download pages." "</I><BR>", maxOutput); } else if (anySubtrackMerge(database, curTable) || anyIntersection()) { hPrintf("<I>Note: The all fields and selected fields output formats " "are not available when a%s has been specified.</I><BR>", canSubtrackMerge ? " subtrack merge or intersection" : "n intersection"); } - cgiMakeButton(hgtaDoTopSubmit, "get output"); + cgiMakeButton(hgtaDoTopSubmit, "Get output"); hPrintf(" "); if (isPositional || isWig) { - cgiMakeButton(hgtaDoSummaryStats, "summary/statistics"); + cgiMakeButton(hgtaDoSummaryStats, "Summary/statistics"); hPrintf(" "); } #ifdef SOMETIMES hPrintf(" "); cgiMakeButton(hgtaDoTest, "test"); #endif /* SOMETIMES */ } hPrintf("<P></P>"); } static char *getGenomeSpaceText() /* fetch GenomeSpace text if enabled */ { if (isGenomeSpaceEnabled())