f9c9519372b406cf392f199cdd23d1b032fa8e22
braney
  Tue Jun 3 12:02:11 2025 -0700
put quickLifted tracks in the right order and with the right
visibilities

diff --git src/hg/inc/trackDb.h src/hg/inc/trackDb.h
index 10cfebf725f..54f89b45327 100644
--- src/hg/inc/trackDb.h
+++ src/hg/inc/trackDb.h
@@ -26,31 +26,31 @@
 
 #define TRACKDB_NUM_COLS 21
 
 // Forward definitions
 struct tdbExtras;
 
 // A structure to keep track of our min and max values if we're a wig 
 struct minMax 
 {
     double min, max;
 };
 
 /* DO NOT CHANGE THE TRACKDB STRUCTURE WITHOUT INCREMENTING THE VERSION NUMBER */
 /* This number is tacked onto the end of cached trackDb entries to make sure we
  * don't use a cached structure that has different contents. */
-#define TRACKDB_VERSION 7
+#define TRACKDB_VERSION 8
 
 struct trackDb
 /* This describes an annotation track.  */
 /* DO NOT CHANGE THE TRACKDB STRUCTURE WITHOUT INCREMENTING THE VERSION NUMBER */
     {
     struct trackDb *next;  /* Next in singly linked list.  Next sibling in tree. */
     char *track; /* Symbolic ID of Track - used in cart. Is tableName in database historically. */
     char *table; /* Symbolic ID of Table - used in database. Same as track usually. */
     char *shortLabel;	/* Short label displayed on left */
     char *type;	/* Track type: bed, psl, genePred, etc. */
     char *longLabel;	/* Long label displayed in middle */
     unsigned char visibility;	/* 0=hide, 1=dense, 2=full, 3=pack, 4=squish */
     float priority;	/* 0-100 - where to position.  0 is top */
     unsigned char colorR;	/* Color red component 0-255 */
     unsigned char colorG;	/* Color green component 0-255 */
@@ -58,30 +58,31 @@
     unsigned char altColorR;	/* Light color red component 0-255 */
     unsigned char altColorG;	/* Light color green component 0-255 */
     unsigned char altColorB;	/* Light color blue component 0-255 */
     unsigned char useScore;	/* 1 if use score, 0 if not */
 /* DO NOT CHANGE THE TRACKDB STRUCTURE WITHOUT INCREMENTING THE VERSION NUMBER */
 #ifndef	__cplusplus
     unsigned char private;	/* 1 if only want to show it on test site */
 #else
     unsigned char priv;		/* don't conflict with C++ keyword */
 #endif
     int restrictCount;	/* Number of chromosomes this is on (0=all though!) */
     char **restrictList;	/* List of chromosomes this is on */
     char *url;	/* URL to link to when they click on an item */
     char *html;	/* Some html to display when they click on an item */
     char *grp;	/* Which group track belongs to */
+    float groupPriority; /* our group's priority */
     unsigned char canPack;	/* 1 if can pack track display, 0 otherwise */
     char *settings;	/* Name/value pairs for track-specific stuff */
     struct hash *viewHash;  /* Hash for settings. Not saved in database.*/
     struct hash *settingsHash;  /* Hash for settings. Not saved in database.
                                  * Don't use directly, rely on trackDbSetting to access. */
     /* additional info, determined from settings */
 /* DO NOT CHANGE THE TRACKDB STRUCTURE WITHOUT INCREMENTING THE VERSION NUMBER */
     char treeNodeType;          // bit map containing defining supertrack, composite and children
                                 //     of same (may be parent & child)
     struct trackDb *parent;     // parent of composite or superTracks
     struct trackDb *subtracks;  // children of composite not supers. NOTE: only in one sl at a time!
     struct slRef *children;     // children of folders (superTracks) only.
                                 // Needed as slRef since these children are on the main trackList
                                 // and can't be in 2 sl's at once
     char *parentName;           // set if this is a supertrack member