96bb082b01866c65273531541c20204851c47380 larrym Fri Aug 13 00:30:54 2010 -0700 move trackDbJson code into imageV2.c and print it out from w/n imageBoxDraw to fix problems with subtracks diff --git src/hg/hgTracks/imageV2.c src/hg/hgTracks/imageV2.c index ea10f72..676bb11 100644 --- src/hg/hgTracks/imageV2.c +++ src/hg/hgTracks/imageV2.c @@ -1540,9 +1540,32 @@ hPrintf(""); } +#if defined(CONTEXT_MENU) || defined(TRACK_SEARCH) +static void trackJson(struct dyString *trackDbJson, struct track *track, int count) +{ +// add entry for given track to the trackDbJson string +if(count) + dyStringAppend(trackDbJson, "\n,"); +dyStringPrintf(trackDbJson, "\t%s: {", track->track); +if(tdbIsSuperTrackChild(track->tdb) || tdbIsCompositeChild(track->tdb)) + dyStringPrintf(trackDbJson, "\n\t\tparentTrack: '%s',", track->tdb->parent->track); +dyStringPrintf(trackDbJson, "\n\t\ttype: '%s',", track->tdb->type); +if(sameWord(track->tdb->type, "remote") && trackDbSetting(track->tdb, "url") != NULL) + dyStringPrintf(trackDbJson, "\n\t\turl: '%s',", trackDbSetting(track->tdb, "url")); +dyStringPrintf(trackDbJson, "\n\t\tshortLabel: '%s',\n\t\tlongLabel: '%s',\n\t\tcanPack: %d,\n\t\tvisibility: %d\n\t}", + javaScriptLiteralEncode(track->shortLabel), javaScriptLiteralEncode(track->longLabel), track->canPack, track->limitedVis); +} +#endif/// defined(CONTEXT_MENU) || defined(TRACK_SEARCH) + void imageBoxDraw(struct imgBox *imgBox) /* writes a entire imgBox including all tracksas HTML */ { +#if defined(CONTEXT_MENU) || defined(TRACK_SEARCH) +struct dyString *trackDbJson = newDyString(1000); +int trackDbJsonCount = 1; +dyStringPrintf(trackDbJson, "\n"); +if(!trackImgOnly) + hPrintf(dyStringContents(trackDbJson)); +#endif/// defined(CONTEXT_MENU) || defined(TRACK_SEARCH) }