8ae222adb54c0234afbe72e49a50da755c272352 kate Wed Mar 17 17:30:41 2021 -0700 1. Add checkbox to multi-region config custom regions panel that causes display to show all regions. This is under same hg.conf control as multi-region button move 2. Change multiRegionBedUrl track setting to match existing cart var (multiRegionsBedUrl). Tweak help text on MR config panel, as per QA input. refs #26385 diff --git src/hg/hgTracks/config.c src/hg/hgTracks/config.c index 3e876bf..a9e74e4 100644 --- src/hg/hgTracks/config.c +++ src/hg/hgTracks/config.c @@ -737,31 +737,33 @@ char *groupTarget; struct track *trackList; struct track *ideoTrack; struct group *groupList; int vis = -2; configInitTrackList(vis, &groupTarget, &trackList, &ideoTrack, &groupList); hPrintf("<FORM ACTION=\"%s\" NAME=\"mainForm\" METHOD=%s>\n", hgTracksName(), cartUsualString(cart, "formMethod", "POST")); webStartWrapperDetailedNoArgs(cart, database, "", "", FALSE, FALSE, FALSE, FALSE); cartSaveSession(cart); -hPrintf("Multi-region display 'slices' the genome to allow viewing discontinuous regions" +hPrintf("<A HREF=\"../goldenPath/help/multiRegionHelp.html\" target=_blank>" + "<b><em>Multi-region display</em></b></A>" + " 'slices' the genome to allow viewing discontinuous regions" " together in the browser window. "); // mode-specific message filled in by JS when dialog opened hPrintf("<span id='multiRegionConfigStatusMsg'></span>"); hPrintf("<p></p>"); hTableStart(); virtModeType = cartUsualString(cart, "virtModeType", virtModeType); hPrintf("<TR><TD>"); cgiMakeRadioButton("virtModeType", "default", sameWord("default", virtModeType)); hPrintf("</TD>"); hPrintf("<TD id='virtModeTypeDefaultLabel'>"); hPrintf("Exit multi-region mode"); hPrintf("</TD></TR>\n"); @@ -819,32 +821,42 @@ { if (fileExists(multiRegionsBedUrl)) { struct lineFile *lf = lineFileMayOpen(multiRegionsBedUrl, TRUE); char *line; int lineSize; while (lineFileNext(lf, &line, &lineSize)) { dyStringPrintf(dyMultiRegionsBedInput, "%s\n", line); } lineFileClose(&lf); } } hPrintf("<TEXTAREA NAME='multiRegionsBedInput' ID='multiRegionsBedInput' rows='4' cols='58' style='white-space: pre;'>%s</TEXTAREA>", dyMultiRegionsBedInput->string); -hPrintf("</TD></TR>\n"); +// option to set viewing window to show all regions. This id also known to JS. +if (cfgOptionBooleanDefault(MULTI_REGION_CFG_BUTTON_TOP, FALSE)) + { + boolean isChecked = cartUsualBoolean(cart, MULTI_REGION_BED_WIN_FULL, FALSE); + hPrintf("  "); + cgiMakeCheckBoxUtil(MULTI_REGION_BED_WIN_FULL, isChecked, + "If unchecked, when regions are changed here the view is zoomed in and does not display all regions", + MULTI_REGION_BED_WIN_FULL); + hPrintf("Show all"); + hPrintf("</TD></TR>\n"); +} /* The AllChroms option will be released in future if (emGeneTable && sqlTableExists(conn, emGeneTable)) { hPrintf("<TR><TD>"); cgiMakeRadioButton("virtModeType", "singleTrans", sameWord("singleTrans", virtModeType)); hPrintf("</TD><TD>"); hPrintf("Show only one transcript using an ID from %s : ", emGeneTrack->shortLabel); char *trans = cartUsualString(cart, "singleTransId", singleTransId); char sql[1024]; sqlSafef(sql, sizeof sql, "select name from %s where name='%s'", emGeneTable, trans); char *result = sqlQuickString(conn, sql); if (!result) { sqlSafef(sql, sizeof sql, "select name from %s limit 1", emGeneTable); @@ -966,29 +978,27 @@ hPrintf("<BR>\n"); hPrintf("<TABLE style=\"border:0px; \">\n"); hPrintf("<TR><TD>"); hCheckBox("emAltHighlight", cartUsualBoolean(cart, "emAltHighlight", FALSE)); hPrintf("</TD><TD>"); hPrintf("Highlight alternating regions in multi-region view"); hPrintf("</TD></TR>\n"); hPrintf("</TABLE>\n"); hPrintf("<BR>\n"); hPrintf("<TABLE style=\"border:0px;width:650px \">\n"); hPrintf("<TR><TD>"); cgiMakeButton("topSubmit", "Submit"); hPrintf("  "); cgiMakeCancelButton("Cancel"); -hPrintf("</TD><TD align=right>"); -hPrintf("<A HREF=\"../goldenPath/help/multiRegionHelp.html\" target=_blank>Help</A>\n"); hPrintf("</TD></TR>\n"); hPrintf("</TABLE>\n"); hFreeConn(&conn); cgiDown(0.9); freez(&groupTarget); webEndSectionTables(); hPrintf("</FORM>"); }