7340e66cb860fa73cc651af31eb8fda2b668cb0d max Wed Apr 5 11:41:31 2017 -0700 Modifying zoom dialog box so one does not have to see it by using the modifier keys Alt or Ctrl/Cmd. Also allowing user to choose a color for the highlight and allowing to delete all highlights in the View menu. refs #19118 diff --git src/hg/hgTracks/hgTracks.c src/hg/hgTracks/hgTracks.c index a639870..9fd3b7d 100644 --- src/hg/hgTracks/hgTracks.c +++ src/hg/hgTracks/hgTracks.c @@ -9086,30 +9086,36 @@ // save lastDbPos. save the current position and other important cart vars related to virtual view. lastDbPosSaveCartSetting("position"); lastDbPosSaveCartSetting("nonVirtPosition"); lastDbPosSaveCartSetting("virtMode"); lastDbPosSaveCartSetting("virtModeType"); lastDbPosSaveCartSetting("lastVirtModeType"); lastDbPosSaveCartSetting("lastVirtModeExtraState"); cartSetDbPosition(cart, database, lastDbPosCart); if (cartUsualBoolean(cart, "hgt.psOutput", FALSE)) handlePostscript(); else doTrackForm(NULL, NULL); + +boolean gotExtTools = extToolsEnabled(); +setupHotkeys(gotExtTools); +if (gotExtTools) + printExtMenuData(); + } void chromInfoTotalRow(int count, long long total) /* Make table row with total number of sequences and size from chromInfo. */ { cgiSimpleTableRowStart(); cgiSimpleTableFieldStart(); printf("Total: %d", count); cgiTableFieldEnd(); cgiSimpleTableFieldStart(); printLongWithCommas(stdout, total); cgiTableFieldEnd(); cgiTableRowEnd(); } @@ -9608,35 +9614,37 @@ // Write out includes for css and js files hWrites(commonCssStyles()); jsIncludeFile("mousetrap.min.js", NULL); jsIncludeFile("jquery.js", NULL); jsIncludeFile("jquery-ui.js", NULL); jsIncludeFile("utils.js", NULL); jsIncludeFile("ajax.js", NULL); jsIncludeFile("jquery.watermarkinput.js", NULL); if(!searching) { jsIncludeFile("jquery.history.js", NULL); jsIncludeFile("jquery.imgareaselect.js", NULL); } jsIncludeFile("autocomplete.js", NULL); jsIncludeFile("hgTracks.js", NULL); + jsIncludeFile("spectrum.min.js", NULL); #ifdef LOWELAB jsIncludeFile("lowetooltip.js", NULL); #endif///def LOWELAB + webIncludeResourceFile("spectrum.min.css"); webIncludeResourceFile("jquery-ui.css"); if (!searching) // NOT doing search { webIncludeResourceFile("jquery.contextmenu.css"); jsIncludeFile("jquery.contextmenu.js", NULL); webIncludeResourceFile("ui.dropdownchecklist.css"); jsIncludeFile("ui.dropdownchecklist.js", NULL); jsIncludeFile("ddcl.js", NULL); } hPrintf("<div id='hgTrackUiDialog' style='display: none'></div>\n"); hPrintf("<div id='hgTracksDialog' style='display: none'></div>\n"); cartFlushHubWarnings(); } @@ -9724,35 +9732,30 @@ } jsonObjectAdd(jsonForClient, "measureTiming", newJsonBoolean(measureTiming)); // js code needs to know if a highlightRegion is defined for this db char *highlightDef = cartOptionalString(cart, "highlight"); if (highlightDef && startsWith(database,highlightDef) && highlightDef[strlen(database)] == '.') jsonObjectAdd(jsonForClient, "highlight", newJsonString(highlightDef)); jsonObjectAdd(jsonForClient, "enableHighlightingDialog", newJsonBoolean(cartUsualBoolean(cart, "enableHighlightingDialog", TRUE))); struct dyString *dy = dyStringNew(1024); jsonDyStringPrint(dy, (struct jsonElement *) jsonForClient, "hgTracks", 0); jsInline(dy->string); dyStringFree(&dy); -boolean gotExtTools = extToolsEnabled(); -setupHotkeys(gotExtTools); -if (gotExtTools) - printExtMenuData(); - if (measureTiming) measureTime("Time at end of doMiddle, next up cart write"); if (cartOptionalString(cart, "udcTimeout")) { warn("The Genome Browser cart currently includes the \"udcTimeout\" string. " "While this is useful for debugging hubs, it may negatively impact " "performance. To clear this variable, click " "<A HREF='hgTracks?hgsid=%s|url|&udcTimeout=[]'>here</A>.",cartSessionId(cart)); } } void labelTrackAsFiltered(struct track *tg) /* add text to track long label to indicate filter is active */ {