4f5d84f480c9fe7c926e1554e36b618cfe39fbd4 tdreszer Thu Nov 18 10:54:15 2010 -0800 Changed configureByPopup json boolean to configureBy none,popup or clickThrough. diff --git src/hg/hgTracks/imageV2.c src/hg/hgTracks/imageV2.c index 6d2c44f..0d1d024 100644 --- src/hg/hgTracks/imageV2.c +++ src/hg/hgTracks/imageV2.c @@ -135,31 +135,31 @@ enum kindOfChild tdbKindOfChild(struct trackDb *tdb) { enum kindOfChild kindOfChild = kocOrphan; if (tdbIsFolderContent(tdb)) kindOfChild = kocFolderContent; else if (tdbIsCompositeChild(tdb)) kindOfChild = kocCompositeChild; else if (tdbIsMultiTrackChild(tdb)) kindOfChild = kocMultiTrackChild; return kindOfChild; } ///////////////////////// // JSON support. Eventually the whole imgTbl could be written out as JSON -void jsonTdbSettingsBuild(struct dyString **jsonTdbSettingsString, struct track *track) +void jsonTdbSettingsBuild(struct dyString **jsonTdbSettingsString, struct track *track, boolean configurable) // Creates then successively adds trackDb settings to the jsonTdbSettingsString // Initially pass in NULL pointer to a dyString to properly begin building { if (*jsonTdbSettingsString==NULL) { *jsonTdbSettingsString = newDyString(1024); dyStringPrintf(*jsonTdbSettingsString, "\n\n"); +dyStringAppend(*jsonTdbSettingsString, "}\n\n\n"); return dyStringCannibalize(jsonTdbSettingsString); } ///////////////////////// // IMAGEv2 // The new way to do images: PLEASE REFER TO imageV2.h FOR A DETAILED DESCRIPTION ///////////////////////// /////////////////////// Maps struct mapSet *mapSetStart(char *name,struct image *img,char *linkRoot) /* Starts a map (aka mapSet) which is the seet of links and image locations used in HTML. Complete a map by adding items with mapItemAdd() */ @@ -1769,34 +1775,36 @@ hPrintf(" class='tableWithDragAndDrop'"); hPrintf(" style='border:1px solid blue;border-collapse:separate;'>\n"); #if defined(CONTEXT_MENU) || defined(TRACK_SEARCH) struct dyString *jsonTdbVars = NULL; #endif/// defined(CONTEXT_MENU) || defined(TRACK_SEARCH) char *newLine = NEWLINE_TO_USE(cgiClientBrowser(NULL,NULL,NULL)); struct imgTrack *imgTrack = imgBox->imgTracks; for(;imgTrack!=NULL;imgTrack=imgTrack->next) { char *trackName = (imgTrack->name != NULL ? imgTrack->name : imgTrack->tdb->track ); #if defined(CONTEXT_MENU) || defined(TRACK_SEARCH) struct track *track = hashFindVal(trackHash, trackName); if(track) - jsonTdbSettingsBuild(&jsonTdbVars, track); + { + struct imgSlice *slice = imgTrackSliceGetByType(imgTrack,stButton); + boolean configurable = (slice->link != NULL || sliceGetMap(slice,FALSE) != NULL); // sliceMap is overkill since stButton has no image + jsonTdbSettingsBuild(&jsonTdbVars, track, configurable); + } #endif - //if(verbose && imgTrack->order == 3) - // imgTrackShow(NULL,imgTrack,0); hPrintf("