bd53b8dfe0a86f9d1c8ed57289fd409a6c52bd6b chmalee Fri Jun 26 10:54:41 2020 -0700 Add option to shade alleles by inconsitent transmission between child and parent haplotypes diff --git src/hg/lib/vcfUi.c src/hg/lib/vcfUi.c index 7425a1e..4d579eb 100644 --- src/hg/lib/vcfUi.c +++ src/hg/lib/vcfUi.c @@ -478,30 +478,36 @@ boolean isAliasChecked = cartUsualBooleanClosestToHome(cart, tdb, parentLevel, VCF_PHASED_ALIAS_LABEL_VAR, TRUE); cgiMakeCheckBox(defaultLabel, isDefaultChecked); printf("VCF file sample names  "); cgiMakeCheckBox(aliasLabel, isAliasChecked); printf("Family Labels"); printf("
"); } if (trackDbSetting(tdb,VCF_PHASED_PARENTS_SAMPLE_SETTING)) { printf("Hide parent sample(s)"); char hideVarName[1024]; safef(hideVarName, sizeof(hideVarName), "%s.%s", name, VCF_PHASED_HIDE_OTHER_VAR); boolean hidingOtherSamples = cartUsualBooleanClosestToHome(cart, tdb, parentLevel, VCF_PHASED_HIDE_OTHER_VAR, FALSE); cgiMakeCheckBox(hideVarName, hidingOtherSamples); } +printf("
"); +printf("Highlight child variants that are inconsistent with phasing red"); +char shadeByDiffs[1024]; +safef(shadeByDiffs, sizeof(shadeByDiffs), "%s.%s", name, VCF_PHASED_HIGHLIGHT_INCONSISTENT); +boolean highlightChildDiffs = cartUsualBooleanClosestToHome(cart, tdb, FALSE, VCF_PHASED_HIGHLIGHT_INCONSISTENT, FALSE); +cgiMakeCheckBox(shadeByDiffs, highlightChildDiffs); } void vcfCfgUi(struct cart *cart, struct trackDb *tdb, char *name, char *title, boolean boxed) /* VCF: Variant Call Format. redmine #3710 */ { boxed = cfgBeginBoxAndTitle(tdb, boxed, title); printf("", boxed ? " width='100%'" : ""); struct vcfFile *vcff = vcfHopefullyOpenHeader(cart, tdb); if (vcff != NULL) { boolean parentLevel = isNameAtParentLevel(tdb, name); if (vcff->genotypeCount > 1 && !sameString(tdb->type, "vcfPhasedTrio")) { vcfCfgHapCluster(cart, tdb, vcff, name, parentLevel); }