8be39eded2ca995a387d5c47127f049c2b228932 braney Tue Jun 2 17:26:58 2015 -0700 changes to get NCBI RefSeq track to use the trackVersion table, and to grab Genbank information when available. #13673 diff --git src/hg/hgTracks/simpleTracks.c src/hg/hgTracks/simpleTracks.c index 892a872..8c0bd74 100644 --- src/hg/hgTracks/simpleTracks.c +++ src/hg/hgTracks/simpleTracks.c @@ -126,30 +126,32 @@ #include "transMapTracks.h" #include "retroTracks.h" #include "pcrResult.h" #include "variome.h" #include "pubsTracks.h" #endif /* GBROWSE */ #ifdef LOWELAB #include "loweLabTracks.h" #include "rnaPLFoldTrack.h" #endif /* LOWELAB */ #ifdef LOWELAB_WIKI #include "wiki.h" #endif /* LOWELAB_WIKI */ +#include "trackVersion.h" + #define CHROM_COLORS 26 int colorBin[MAXPIXELS][256]; /* count of colors for each pixel for each color */ /* Declare our color gradients and the the number of colors in them */ Color shadesOfGreen[EXPR_DATA_SHADES]; Color shadesOfRed[EXPR_DATA_SHADES]; Color shadesOfBlue[EXPR_DATA_SHADES]; Color shadesOfYellow[EXPR_DATA_SHADES]; Color shadesOfGreenOnWhite[EXPR_DATA_SHADES]; Color shadesOfRedOnWhite[EXPR_DATA_SHADES]; Color shadesOfBlueOnWhite[EXPR_DATA_SHADES]; Color shadesOfYellowOnWhite[EXPR_DATA_SHADES]; Color shadesOfRedOnYellow[EXPR_DATA_SHADES]; Color shadesOfBlueOnYellow[EXPR_DATA_SHADES]; Color orangeColor = 0; @@ -13041,41 +13043,50 @@ /* Create a track based on the tdb */ { struct track *track = NULL; char *exonArrows; char *nextItem; if (!tdb) return NULL; track = trackNew(); track->track = cloneString(tdb->track); track->table = cloneString(tdb->table); track->visibility = tdb->visibility; track->shortLabel = cloneString(tdb->shortLabel); if (sameWord(tdb->track, "ensGene")) { - char ensVersionString[256]; - char ensDateReference[256]; - ensGeneTrackVersion(database, ensVersionString, ensDateReference, - sizeof(ensVersionString)); - if (ensVersionString[0]) + struct trackVersion *trackVersion = getTrackVersion(database, "ensGene"); + if ((trackVersion != NULL) && !isEmpty(trackVersion->version)) { char longLabel[256]; - if (ensDateReference[0] && differentWord("current", ensDateReference)) - safef(longLabel, sizeof(longLabel), "Ensembl Gene Predictions - archive %s - %s", ensVersionString, ensDateReference); + if (!isEmpty(trackVersion->dateReference) && differentWord("current", trackVersion->dateReference)) + safef(longLabel, sizeof(longLabel), "Ensembl Gene Predictions - archive %s - %s", trackVersion->version, trackVersion->dateReference); + else + safef(longLabel, sizeof(longLabel), "Ensembl Gene Predictions - %s", trackVersion->version); + track->longLabel = cloneString(longLabel); + } else - safef(longLabel, sizeof(longLabel), "Ensembl Gene Predictions - %s", ensVersionString); + track->longLabel = cloneString(tdb->longLabel); + } +else if (sameWord(tdb->track, "ncbiRefCurated") || sameWord(tdb->track, "ncbiRefCurated")) + { + struct trackVersion *trackVersion = getTrackVersion(database, "ncbiRefSeq"); + if ((trackVersion != NULL) && !isEmpty(trackVersion->version)) + { + char longLabel[1024]; + safef(longLabel, sizeof(longLabel), "%s - Annotation Release %s", tdb->longLabel, trackVersion->version); track->longLabel = cloneString(longLabel); } else track->longLabel = cloneString(tdb->longLabel); } else track->longLabel = cloneString(tdb->longLabel); track->color.r = tdb->colorR; track->color.g = tdb->colorG; track->color.b = tdb->colorB; track->altColor.r = tdb->altColorR; track->altColor.g = tdb->altColorG; track->altColor.b = tdb->altColorB; track->lineHeight = tl.fontHeight+1; track->heightPer = track->lineHeight - 1;