72853428212949dd7ddcb4824762b8c85827461a braney Mon Sep 18 13:47:27 2017 -0700 custom icons for tracks and such diff --git src/hg/hgCollection/hgCollection.c src/hg/hgCollection/hgCollection.c index 9b4b37b..5aa1300 100644 --- src/hg/hgCollection/hgCollection.c +++ src/hg/hgCollection/hgCollection.c @@ -113,44 +113,46 @@ static void printGroup(char *parent, struct trackDb *tdb, boolean folder, boolean user) // output list elements for a group { char *userString = ""; char *prefix = ""; char *viewFunc = "show all"; if (user) { //prefix = "coll_"; if (tdb->parent && tdb->subtracks) { viewFunc = trackDbSetting(tdb, "viewFunc"); if (viewFunc == NULL) viewFunc = "show all"; - userString = "viewType='view' class='folder'"; + userString = "data-jstree='{\\\"icon\\\":\\\"../images/folderC.png\\\"}'viewType='track'viewType='view' class='folder'"; } else if (tdb->subtracks) - userString = "viewType='track' class='folder'"; + userString = "data-jstree='{\\\"icon\\\":\\\"../images/folderC.png\\\"}'viewType='track' class='folder'"; else - userString = "viewType='track'"; + userString = "data-jstree='{\\\"icon\\\":\\\"../images/invisible16.png\\\"}' viewType='track'"; } else { //prefix = "coll_"; if (tdb->parent && tdb->subtracks) - userString = "class='nodrop' viewType='view'"; + userString = "data-jstree='{\\\"icon\\\":\\\"../images/folderC.png\\\"}'viewType='track'class='nodrop' viewType='view'"; + else if (tdb->subtracks) + userString = "data-jstree='{\\\"icon\\\":\\\"../images/folderC.png\\\"}'viewType='track'class='nodrop' viewType='track'"; else - userString = "class='nodrop' viewType='track'"; + userString = "data-jstree='{\\\"icon\\\":\\\"../images/invisible16.png\\\"}'class='nodrop' viewType='track'"; } //userString = "viewType='track data-jstree='{'icon':'images/folderC.png'}''"; #define IMAKECOLOR_32(r,g,b) ( ((unsigned int)b<<0) | ((unsigned int)g << 8) | ((unsigned int)r << 16)) jsInlineF("<li shortLabel='%s' longLabel='%s' color='#%06x' viewFunc='%s' visibility='%s' name='%s%s' %s>%s", tdb->shortLabel, tdb->longLabel,IMAKECOLOR_32(tdb->colorR,tdb->colorG,tdb->colorB), viewFunc, hStringFromTv(tdb->visibility), prefix, trackHubSkipHubName(tdb->track), userString, tdb->shortLabel ); jsInlineF(" (%s)", tdb->longLabel); if (tdb->subtracks) { struct trackDb *subTdb; jsInlineF("<ul>"); @@ -286,31 +288,31 @@ void addVisibleTracks() // add the visible tracks table rows. { struct trackDb *tdb; struct trackDbRef *tdbRefList = NULL, *tdbRef; //checkForVisible(fullTrackList); for(tdb = fullTrackList; tdb; tdb = tdb->next) { checkForVisible(&tdbRefList, tdb); } slSort(&tdbRefList, tdbRefCompare); jsInlineF("<ul>"); -jsInlineF("<li class='nodrop' name='%s'>%s", "visibile", "Visible Tracks"); +jsInlineF("<li data-jstree='{\\\"icon\\\":\\\"../images/folderC.png\\\"}' class='nodrop' name='%s'>%s", "visibile", "Visible Tracks"); jsInlineF("<ul>"); for(tdbRef = tdbRefList; tdbRef; tdbRef = tdbRef->next) printGroup("visible", tdbRef->tdb, FALSE, FALSE); jsInlineF("</ul>"); jsInlineF("</li>"); jsInlineF("</ul>"); } void doTable() // output the tree table { char *hubName = hubNameFromUrl(getHubName(database)); struct grp *curGroup; for(curGroup = fullGroupList; curGroup; curGroup = curGroup->next) @@ -330,44 +332,44 @@ jsInlineF("<div id='%s' shortLabel='%s'>", trackHubSkipHubName(tdb->track), tdb->shortLabel); jsInlineF("<ul>"); printGroup("collections", tdb, TRUE, TRUE); jsInlineF("</ul>"); jsInlineF("</div>"); } } jsInlineF("\");\n"); // print out all the tracks in this group jsInlineF("$('#collectionList').append(\""); for(tdb = fullTrackList; tdb; tdb = tdb->next) { if (sameString(tdb->grp, hubName)) { - jsInlineF("<li class='nodrop' id='%s' name='%s'>%s</li>", trackHubSkipHubName(tdb->track),trackHubSkipHubName(tdb->track), tdb->shortLabel); + jsInlineF("<li data-jstree='{\\\"icon\\\":\\\"../images/folderC.png\\\"}' class='nodrop' id='%s' name='%s'>%s</li>", trackHubSkipHubName(tdb->track),trackHubSkipHubName(tdb->track), tdb->shortLabel); //printGroup("collections", tdb, TRUE, TRUE); } } jsInlineF("\");\n"); } jsInlineF("$('#tracks').append(\""); addVisibleTracks(); for(curGroup = fullGroupList; curGroup; curGroup = curGroup->next) { if ((hubName != NULL) && sameString(curGroup->name, hubName)) continue; jsInlineF("<ul>"); - jsInlineF("<li class='nodrop' name='%s'>%s", curGroup->name, curGroup->label ); + jsInlineF("<li data-jstree='{\\\"icon\\\":\\\"../images/folderC.png\\\"}' class='nodrop' name='%s'>%s", curGroup->name, curGroup->label ); struct trackDb *tdb; jsInlineF("<ul>"); for(tdb = fullTrackList; tdb; tdb = tdb->next) { if ( sameString(tdb->grp, curGroup->name)) { printGroup(curGroup->name, tdb, FALSE, FALSE); } } jsInlineF("</ul>"); jsInlineF("</li>"); jsInlineF("</ul>"); } jsInlineF("\");\n");