f7148e5113be698a6fe208b4b233540be2000636 kate Thu Apr 23 11:30:36 2020 -0700 Change note on longlabel when hide empty is on. Also, limit to composite track label (don't display on subtracks). refs #23365 diff --git src/hg/hgTracks/hgTracks.c src/hg/hgTracks/hgTracks.c index 9cb9f0d..d3380b9 100644 --- src/hg/hgTracks/hgTracks.c +++ src/hg/hgTracks/hgTracks.c @@ -10339,15 +10339,39 @@ { tg->longLabel = labelAsFilteredNumber(tg->longLabel, numOut); } void labelTrackAsFiltered(struct track *tg) /* add text to track long label to indicate filter is active */ { tg->longLabel = labelAsFiltered(tg->longLabel); // also label parent composite track filtered struct trackDb *parentTdb = tdbGetComposite(tg->tdb); if (parentTdb) parentTdb->longLabel = labelAsFiltered(parentTdb->longLabel); } +static char *labelAddNote(char *label, char *note) +/* add parenthesized text to label */ +// TODO: move to lib/trackDbCustom.c +{ +char buffer[2048]; +safef(buffer, sizeof buffer, " (%s)", note); +if (stringIn(note, label)) + return label; +return (catTwoStrings(label, buffer)); +} + +void labelTrackAsHideEmpty(struct track *tg) +/* Add text to track long label to indicate empty subtracks are hidden, + * but avoid adding to subtrack labels */ +{ +#define EMPTY_SUBTRACKS_HIDDEN "empty subtracks hidden" +struct trackDb *parentTdb = tdbGetComposite(tg->tdb); +if (parentTdb) + parentTdb->longLabel = labelAddNote(parentTdb->longLabel, EMPTY_SUBTRACKS_HIDDEN); +else + tg->longLabel = labelAddNote(tg->longLabel, EMPTY_SUBTRACKS_HIDDEN); +} + +