d22f72049b67be2c8745828b1e6ebba9d5087ead chmalee Wed Mar 18 09:40:51 2026 -0700 Add explanatory text and notes to hgConvert page, refs #36111 Co-Authored-By: Claude Opus 4.6 (1M context) diff --git src/hg/hgConvert/hgConvert.c src/hg/hgConvert/hgConvert.c index 2374737ac43..fd4951ad84f 100644 --- src/hg/hgConvert/hgConvert.c +++ src/hg/hgConvert/hgConvert.c @@ -76,30 +76,37 @@ if (quickLiftEnabled(cart)) { askAboutQuickLift = TRUE; quickLift = cartUsualBoolean(cart, "doQuickLift", FALSE); } cartWebStart(cart, database, "Convert %s to New Assembly", fromPos); /* Include autocomplete libraries */ jsIncludeAutoCompleteLibs(); /* create HTML form */ puts("
\n"); cartSaveSession(cart); +cgiParagraph( + "This tool converts the current genome browser position to the corresponding " + "region in another assembly or species using genome sequence alignments. " + "Select a target assembly below and click Submit to jump to the matching region. " + "If a pair of assemblies cannot be selected directly, a sequential conversion " + "may still be possible (e.g., mm9 to mm10 to mm39)."); + /* CSS for two-section layout */ puts("\n"); puts("
\n"); /* SOURCE SECTION (read-only) */ puts("
\n"); @@ -125,33 +132,33 @@ /* Current selection display */ char *selectedLabel = getCurrentGenomeLabel(liftOver->toDb); hPrintf("
%s
\n", selectedLabel); /* Assembly dropdown (updates based on genome selection) */ puts("
\n"); puts("Assembly:\n"); dbList = hGetLiftOverToDatabases(liftOver->fromDb); printAllAssemblyListHtmlParm(liftOver->toDb, dbList, HGLFT_TODB_VAR, TRUE, "change", onChangeToOrg); puts("
\n"); /* QuickLift option */ if (askAboutQuickLift) { puts("
\n"); cgiMakeCheckBoxWithId("doQuickLift", quickLift, "doQuickLift"); - puts(" \n"); + puts(" \n"); puts(" beta\n"); puts("
\n"); } puts("
\n"); /* end destination section */ puts("
\n"); /* end grid */ /* Submit button centered below */ puts("
\n"); cgiMakeButton(HGLFT_DO_CONVERT, "Submit"); puts("
\n"); /* JavaScript initialization for autocomplete with liftOver filtering */ jsInlineF( @@ -237,30 +244,40 @@ " $input.focus();\n" " }\n" " });\n" " }\n" "});\n" , liftOver->fromDb , liftOver->fromDb , HGLFT_TOORG_VAR , HGLFT_TODB_VAR , searchBarId, searchBarId, searchBarId, searchBarId , searchBarId, searchBarId, searchBarId ); puts("
\n"); +webNewSection("Notes"); +cgiParagraph( + "QuickLift tracks: When enabled, QuickLift displays tracks from " + "the source assembly mapped onto the target assembly, allowing you to view " + "your current tracks in the context of the new genome."); +cgiParagraph( + "If your desired target assembly is not available, you can search for it " + "and request it on our " + "Assembly Search page."); + cartWebEnd(); } static double scoreLiftOverChain(struct liftOverChain *chain, char *fromOrg, char *fromDb, char *toOrg, char *toDb, struct hash *dbRank ) /* Score the chain in terms of best match for cart settings */ { double score = 0; char *chainFromOrg = hOrganism(chain->fromDb); char *chainToOrg = hOrganism(chain->toDb); int fromRank = hashIntValDefault(dbRank, chain->fromDb, 0); int maxRank = hashIntVal(dbRank, "maxRank"); int toRank = hashIntValDefault(dbRank, chain->toDb, maxRank);