8ccceea1c52492b6a869af8de3190a387d4b6550 braney Tue Mar 12 13:41:09 2024 -0700 added exportedDataHubs dialog and code to deal with quickLifted hubs diff --git src/hg/hgTracks/menu.c src/hg/hgTracks/menu.c index dbc19a1..5cb42fc 100644 --- src/hg/hgTracks/menu.c +++ src/hg/hgTracks/menu.c @@ -7,30 +7,31 @@ #include "dystring.h" #include "ensFace.h" #include "agpFrag.h" #include "ctgPos.h" #include "hCommon.h" #include "htmshell.h" #include "hash.h" #include "wikiLink.h" #include "web.h" #include "geoMirror.h" #include "hgTracks.h" #include "trackHub.h" #include "extTools.h" #include "trackVersion.h" #include "chromAlias.h" +#include "exportedDataHubs.h" /* list of links to display in a menu */ /* a link with an empty name is displayed as a horizontal separator line */ struct hotLink { struct hotLink *next; char *name; char *url; char *id; char *mouseOver; char *onClick; char *shortcut; boolean inactive; /* greyed out */ boolean external; }; @@ -237,30 +238,40 @@ menuStr = replaceChars(menuStr, "<!--OPTIONAL_PROJECT_MENU_END -->", "OPTIONAL_PROJECT_MENU_END -->"); // Add Recommended Track Sets to Genome Browser menu (if any for this assembly) // TODO: consider splitting the recommended track sets config file into separate files by database, // so we don't need to read file to see whether to add menu item if (recTrackSetsEnabled() && recTrackSetsForDb()) { #define recTrackSetsMenuItemId "recTrackSetsMenuItem" struct dyString *menuItemDs = dyStringCreate("<li><a href='#' id='%s'>Recommended Track Sets</a></li>", recTrackSetsMenuItemId); menuStr = replaceChars(menuStr, "<!-- OPTIONAL_RECOMMENDED_TRACK_SETS_MENU -->", dyStringCannibalize(&menuItemDs)); if (stringIn(recTrackSetsMenuItemId, menuStr)) jsOnEventById("click", recTrackSetsMenuItemId, "showRecTrackSetsPopup(); return false;"); } +if (exportedDataHubsEnabled()) + { + #define exportedDataHubsMenuItemId "exportedDataHubsMenuItem" + struct dyString *menuItemDs = dyStringCreate("<li><a href='#' id='%s'>Exported Data Hubs</a></li>", + exportedDataHubsMenuItemId); + menuStr = replaceChars(menuStr, "<!-- OPTIONAL_EXPORTED_TRACK_DATA_HUBS_MENU -->", + dyStringCannibalize(&menuItemDs)); + if (stringIn(exportedDataHubsMenuItemId, menuStr)) + jsOnEventById("click", exportedDataHubsMenuItemId, "showExportedDataHubsPopup(); return false;"); + } // Create top items in view menu safef(buf, sizeof(buf), "../cgi-bin/hgTracks?%s&hgt.psOutput=on", uiVars); appendLink(&links, buf, "PDF", "pdfLink", FALSE); safef(buf, sizeof(buf), "%s&o=%d&g=getDna&i=mixed&c=%s&l=%d&r=%d&db=%s&%s", hgcNameAndSettings(), winStart, chromName, winStart, winEnd, database, uiVars); //appendLink(&links, buf, "DNA", "dnaLink", FALSE); appendLinkWithShortcut(&links, buf, "DNA", "dnaLink", "Show DNA sequence in view", "v d", FALSE, FALSE); safef(buf, sizeof(buf), "../cgi-bin/hgConvert?hgsid=%s&db=%s", cartSessionId(cart), database); appendLink(&links, buf, "In Other Genomes (Convert)", "convertMenuLink", FALSE); // add the sendTo menu if (fileExists("extTools.ra")) { appendLinkWithOnclick(&links, "#", "In External Tools", "extToolLink", "Show current sequence on a third-party website", "showExtToolDialog(); return false;", "s t", FALSE, FALSE);