3a3e7f9931622d8837bf08c3de5dfb328c384203 tdreszer Fri Jun 22 15:59:56 2012 -0700 Third batch of many checkins as dictated by Jim's OCD. Formatting space after if and limiting lines to 100 chars. Changes limited to lines last touched by tdreszer (git blame) so as not to ruin history. None of these changes should affect executables in any way. Only affect is to my sanity and Jim's. diff --git src/hg/hgFileSearch/hgFileSearch.c src/hg/hgFileSearch/hgFileSearch.c index 51fe504..2c6f33d 100644 --- src/hg/hgFileSearch/hgFileSearch.c +++ src/hg/hgFileSearch/hgFileSearch.c @@ -24,31 +24,32 @@ #define FILE_SEARCH "hgfs_Search" #define FILE_SEARCH_FORM "fileSearch" #define FILE_SEARCH_CURRENT_TAB "fsCurTab" #define FILE_SEARCH_ON_FILETYPE "fsFileType" // These are common with trackSearch. Should they be? #define TRACK_SEARCH_SIMPLE "tsSimple" #define TRACK_SEARCH_ON_NAME "tsName" #define TRACK_SEARCH_ON_GROUP "tsGroup" #define TRACK_SEARCH_ON_DESCR "tsDescr" #define TRACK_SEARCH_SORT "tsSort" //#define USE_TABS -static struct trackDb *tdbFilterBy(struct trackDb **pTdbList, char *name, char *description, char *group) +static struct trackDb *tdbFilterBy(struct trackDb **pTdbList, char *name, char *description, + char *group) // returns tdbs that match supplied criterion, leaving unmatched in list passed in { // Set the word lists up once struct slName *nameList = NULL; if (name) nameList = slNameListOfUniqueWords(cloneString(name),TRUE); // TRUE means respect quotes struct slName *descList = NULL; if (description) descList = slNameListOfUniqueWords(cloneString(description),TRUE); struct trackDb *tdbList = *pTdbList; struct trackDb *tdbRejects = NULL; struct trackDb *tdbMatched = NULL; while (tdbList != NULL) @@ -81,52 +82,54 @@ struct trackDb *tdb = tdbsFound; for(;tdb != NULL; tdb = tdb->next) { if (tdbIsComposite(tdb)) dyStringPrintf(dyComposites,"%s,",tdb->track); else if (tdbIsCompositeChild(tdb)) { struct trackDb *composite = tdbGetComposite(tdb); dyStringPrintf(dyComposites,"%s,",composite->track); } } if (dyStringLen(dyComposites) > 0) { char *composites = dyStringCannibalize(&dyComposites); composites[strlen(composites) - 1] = '\0'; // drop the last ',' - //warn("Found composites: %s",composites); - slPairAdd(pMdbSelects,MDB_VAR_COMPOSITE,composites); // Composite should not already be in the list, because it is only indirectly sortable + slPairAdd(pMdbSelects,MDB_VAR_COMPOSITE,composites); + // Composite should not already be in the list, because it is only indirectly sortable return TRUE; } //warn("No composites found"); dyStringFree(&dyComposites); return FALSE; } #ifdef USE_TABS static struct slRef *simpleSearchForTdbs(struct trix *trix,char **descWords,int descWordCount) // Performs the simple search and returns the found tracks. { struct slRef *foundTdbs = NULL; struct trixSearchResult *tsList; -for(tsList = trixSearch(trix, descWordCount, descWords, TRUE); tsList != NULL; tsList = tsList->next) +for(tsList = trixSearch(trix, descWordCount, descWords, TRUE); + tsList != NULL; + tsList = tsList->next) { struct trackDb *tdb = (struct track *) hashFindVal(trackHash, tsList->itemId); - if (track != NULL) // It is expected that this is NULL (e.g. when the trix references trackDb tracks which have no tables) - { + if (track != NULL) // It is expected that this is NULL + { // (e.g. when the trix references trackDb tracks which have no tables) refAdd(&foundTdbs, tdb); } } return foundTdbs; } #endif///def USE_TABS struct slName *tdbListGetGroups(struct trackDb *tdbList) // Returns a list of groups found in the tdbList // FIXME: Should be moved to trackDbCustom and shared { struct slName *groupList = NULL; char *lastGroup = "[]"; struct trackDb *tdb = tdbList; for(;tdb!=NULL;tdb=tdb->next) @@ -192,147 +195,162 @@ } #else///ifndef USE_TABS enum searchTab selectedTab = filesTab; descSearch = cartOptionalString(cart, TRACK_SEARCH_ON_DESCR); #endif///ndef USE_TABS #ifdef USE_TABS struct trix *trix; char trixFile[HDB_MAX_PATH_STRING]; getSearchTrixFile(db, trixFile, sizeof(trixFile)); trix = trixOpen(trixFile); #endif///def USE_TABS printf("
"); // FIXME: Do we need a form at all? -printf("
\n\n", FILE_SEARCH_FORM,FILE_SEARCH_FORM); +printf("\n\n", + FILE_SEARCH_FORM,FILE_SEARCH_FORM); cartSaveSession(cart); // Creates hidden var of hgsid to avoid bad voodoo printf("\n", db); printf("\n",TRACK_SEARCH_DEL_ROW); printf("\n",TRACK_SEARCH_ADD_ROW); #ifdef USE_TABS -printf("\n", FILE_SEARCH_CURRENT_TAB, currentTab); +printf("\n", + FILE_SEARCH_CURRENT_TAB, currentTab); printf("\n"); // End tabs div #endif///def USE_TABS if(nameSearch != NULL && !strlen(nameSearch)) nameSearch = NULL; if(descSearch != NULL && !strlen(descSearch)) descSearch = NULL; if(groupSearch != NULL && sameString(groupSearch, ANYLABEL)) groupSearch = NULL; printf("
\n"); printf("
"); // Restricts to max-width:1000px; @@ -370,33 +388,34 @@ displayFoundTracks(cart,tracks,tracksFound,sortBy); if (measureTiming) uglyTime("Displayed found files"); } } else if(selectedTab==filesTab && mdbPairs != NULL) #endif///def USE_TABS { if (nameSearch || descSearch || groupSearch) { // Use nameSearch, descSearch and groupSearch to narrow down the list of composites. if (isNotEmpty(nameSearch) || isNotEmpty(descSearch) || isNotEmpty(groupSearch)) { struct trackDb *tdbList = hTrackDb(db); - struct trackDb *tdbsMatch = tdbFilterBy(&tdbList, nameSearch, descSearch, groupSearch); + struct trackDb *tdbsMatch = tdbFilterBy(&tdbList, nameSearch, descSearch, + groupSearch); - // Now we have a list of tracks, so we need a unique list of composites to add to mdbSelects + // Now we have a list of tracks, so we need a unique list of composites to add doSearch = mdbSelectsAddFoundComposites(&mdbSelects,tdbsMatch); } } if (doSearch && mdbSelects != NULL && isNotEmpty(fileTypeSearch)) fileSearchResults(db, conn, cart, mdbSelects, fileTypeSearch); else printf("

No files found.

\n"); if (measureTiming) uglyTime("Searched for files"); } slPairFreeList(&mdbSelects); } @@ -411,55 +430,60 @@ } void doMiddle(struct cart *cart) /* Write body of web page. */ { struct trackDb *tdbList = NULL; char *organism = NULL; char *db = NULL; getDbAndGenome(cart, &db, &organism, NULL); char *chrom = cartUsualString(cart, "c", hDefaultChrom(db)); measureTiming = isNotEmpty(cartOptionalString(cart, "measureTiming")); // QUESTION: Do We need track list ??? trackHash ??? Can't we just get one track and no children trackHash = trackHashMakeWithComposites(db,chrom,&tdbList,FALSE); -cartWebStart(cart, db, "Search for " FILE_SEARCH_WHAT " in the %s %s Assembly", organism, hFreezeFromDb(db)); +cartWebStart(cart, db, "Search for " FILE_SEARCH_WHAT " in the %s %s Assembly", + organism, hFreezeFromDb(db)); -// This cleverness allows us to have the background image like "Track Search" does, without all the hgTracks overhead +// This cleverness allows us to have the background image like "Track Search" does, +// without all the hgTracks overhead printf("",hBackgroundImage()); webIncludeResourceFile("HGStyle.css"); webIncludeResourceFile("jquery-ui.css"); webIncludeResourceFile("ui.dropdownchecklist.css"); jsIncludeFile("jquery.js", NULL); jsIncludeFile("jquery-ui.js", NULL); jsIncludeFile("ui.dropdownchecklist.js",NULL); jsIncludeFile("utils.js",NULL); // This line is needed to get the multi-selects initialized jsIncludeFile("ddcl.js",NULL); -printf("\n"); +printf("\n"); doFileSearch(db,organism,cart,tdbList); printf("
\n"); webEnd(); } -char *excludeVars[] = { "submit", "Submit", "g", "ajax", "clearCache", FILE_SEARCH,TRACK_SEARCH_ADD_ROW,TRACK_SEARCH_DEL_ROW}; // HOW IS 'ajax" going to be supported? +char *excludeVars[] = { "submit", "Submit", "g", "ajax", "clearCache", + FILE_SEARCH,TRACK_SEARCH_ADD_ROW,TRACK_SEARCH_DEL_ROW}; int main(int argc, char *argv[]) /* Process command line. */ { cgiSpoof(&argc, argv); htmlSetBackground(hBackgroundImage()); cartEmptyShell(doMiddle, hUserCookie(), excludeVars, NULL); return 0; } // TODO: // 1) Done: Limit to first 1000 // 2) Work out simple verses advanced tabs // 3) work out support for non-encode downloads -// 4) Make an hgTrackSearch to replace hgTracks track search ?? Simlpler code, but may not be good idea because of composite reshaping in cart vars +// 4) Make an hgTrackSearch to replace hgTracks track search ?? +// Simlpler code, but may not be good idea because of composite reshaping in cart vars