1291f2242d9627684efaa88259c1c09f5e7c1b10 braney Thu Apr 4 07:19:11 2019 -0700 some lollipop code leaked out on my last commit, so here's more leakage! diff --git src/hg/hgTracks/hgTracks.h src/hg/hgTracks/hgTracks.h index b7762cd..fc23a7d 100644 --- src/hg/hgTracks/hgTracks.h +++ src/hg/hgTracks/hgTracks.h @@ -47,30 +47,32 @@ /* A few hgGenome cart constant defaults copied from */ #define hggPrefix "hgGenome_" #define hggGraphPrefix hggPrefix "graph" /* trackDb setting for expRatio tracks */ #define EXP_COLOR_DENSE "expColorDense" #ifdef LOWELAB #define MAXPIXELS 60000 #else #define MAXPIXELS 14000 #endif #define BIGBEDMAXIMUMITEMS 100000 +#include "lolly.h" + struct track /* Structure that displays of tracks. The central data structure * of the graphical genome browser. */ { struct track *next; /* Next on list. */ char *track; /* Track symbolic name. Name on image map etc. Same as tdb->track. */ char *table; /* Table symbolic name. Name of database table. Same as tdb->table.*/ enum trackVisibility visibility; /* How much of this want to see. */ enum trackVisibility limitedVis; /* How much of this actually see. */ boolean limitedVisSet; /* Is limited visibility set? */ char *longLabel; /* Long label to put in center. */ char *shortLabel; /* Short label to put on side. */ bool mapsSelf; /* True if system doesn't need to do map box. */ @@ -271,30 +273,32 @@ void (*nonPropDrawItemAt)(struct track *tg, void *item, struct hvGfx *hvg, int xOff, int yOff, double scale, MgFont *font, Color color, enum trackVisibility vis); /* Draw a single Non-proportional fixed-width item. Such as gtexGene. * This is method is optional, but if it's here * then you can plug in genericDrawItems into the drawItems, * which takes care of all sorts of things including packing. */ int (*nonPropPixelWidth)(struct track *tg, void *item); /* Return the width in pixels of the non-proportional part of track, e.g. gtexGene graphic */ struct slInt *labelColumns; /* The columns in a bigBed that can be used for labels. */ boolean subTrackVisSet; /* have we calculated visibility on this subtrack */ boolean subTrackVis; /* if we calculated it, what is it */ + + struct lollyCartOptions *lollyCart; }; struct window // window in multiwindow image { struct window *next; // Next on list. // These two were experimental and will be removed soon: char *organism; /* Name of organism */ char *database; /* Name of database */ char *chromName; int winStart; // in bases int winEnd; int insideX; // in pixels int insideWidth; @@ -1536,31 +1540,31 @@ void peptideAtlasMethods(struct track *tg); /* PeptideAtlas (bed 12+) handlers */ void barChartMethods(struct track *tg); /* Bar Chart track type: draw fixed width chart of colored bars over a BED item */ void barChartCtMethods(struct track *tg); /* Bar Chart track methods for custom track */ void gtexEqtlClusterMethods(struct track *tg); /* GTEx eQTL Cluster (bigBed 5 +) tracks */ void gtexEqtlTissueMethods(struct track *tg); /* Install handler for GTEx eQTL Tissues track */ -void lollipopMethods(struct track *track, struct trackDb *tdb, +void lollyMethods(struct track *track, struct trackDb *tdb, int wordCount, char *words[]); /* Lollipop track type methods */ void interactMethods(struct track *tg); /* Interact track type methods */ void interactCtMethods(struct track *tg); /* Interact track methods for custom track */ void parentChildCartCleanup(struct track *trackList,struct cart *newCart,struct hash *oldVars); /* When composite/view settings changes, remove subtrack specific vis When superTrackChild is found and selected, shape superTrack to match. */ void dontLoadItems(struct track *tg); /* No-op loadItems when we aren't going to try. */