90575b28d8d97732503671e4c5c80f7fbf2d3ac2
tdreszer
  Tue Oct 11 13:57:16 2011 -0700
With subCfg, when only one subtrack, highlevel shouuld show subtrack controls, so that rightClick and subCfg work together.
diff --git src/hg/inc/trackDb.h src/hg/inc/trackDb.h
index 4206f40..17331ec 100644
--- src/hg/inc/trackDb.h
+++ src/hg/inc/trackDb.h
@@ -393,39 +393,40 @@
 // Not all track types have separate configuration
 typedef enum _eCfgType
 {
     cfgNone     =0,
     cfgBedScore =1,
     cfgWig      =2,
     cfgWigMaf   =3,
     cfgPeak     =4,
     cfgGenePred =5,
     cfgChain =6,
     cfgNetAlign =7,
     cfgBedFilt  =8,
     cfgBam      =9,
     cfgPsl      =10,
     cfgVcf      =11,
+    cfgUndetermined // Not specifically denied, but not determinable in lib code
 } eCfgType;
 
 eCfgType cfgTypeFromTdb(struct trackDb *tdb, boolean warnIfNecessary);
 /* determine what kind of track specific configuration is needed,
    warn if not multi-view compatible */
 
-int configurableByPopup(struct trackDb *tdb, eCfgType cfgTypeIfKnown);
+int configurableByAjax(struct trackDb *tdb, eCfgType cfgTypeIfKnown);
 // Is this track configurable by right-click popup, or in hgTrackUi subCfg?
-// returns 0 = no; <0=explicitly blocked;  >0=allowed and will be cfgType
+// returns 0 = nothing to cfg; <0=blocked via ajax; >0=allowed and will be cfgType if determinable
 
 void trackDbOverride(struct trackDb *td, struct trackDb *overTd);
 /* apply an trackOverride trackDb entry to a trackDb entry */
 
 #ifdef OLD
 char *trackDbCompositeSettingByView(struct trackDb *parentTdb, char* view, char *name);
 /* Get a trackDb setting at the view level for a multiview composite.
    returns a string that must be freed */
 #endif /* OLD */
 
 char *trackDbSettingByView(struct trackDb *tdb, char *name);
 /* For a subtrack of a multiview composite, get a setting stored in the parent settingByView.
    returns a string that must be freed */
 
 #define trackDbSettingClosestToHome(tdb, name) trackDbSetting(tdb, name)