b1f658268818067717b2ea5d9a57701ec4836b1a tdreszer Wed Sep 28 09:31:47 2011 -0700 Drag and drop subtracks only on when requested AND not sortable. diff --git src/hg/lib/hui.c src/hg/lib/hui.c index 72823ca..3a38892 100644 --- src/hg/lib/hui.c +++ src/hg/lib/hui.c @@ -3804,35 +3804,35 @@ // Get list of leaf subtracks to work with struct slRef *subtrackRef, *subtrackRefList = trackDbListGetRefsToDescendantLeaves(parentTdb->subtracks); // Look for dividers, heirarchy, dimensions, sort and dragAndDrop! char **lastDivide = NULL; dividers_t *dividers = dividersSettingGet(parentTdb); if (dividers) lastDivide = needMem(sizeof(char*)*dividers->count); hierarchy_t *hierarchy = hierarchySettingGet(parentTdb); membersForAll_t* membersForAll = membersForAllSubGroupsGet(parentTdb,NULL); int dimCount=0,di; for(di=0;di<membersForAll->dimMax;di++) { if (membersForAll->members[di]) dimCount++; } sortOrder_t* sortOrder = sortOrderGet(cart,parentTdb); boolean preSorted = FALSE; -#ifdef SUBTRACK_CFG -boolean useDragAndDrop = (sortOrder == NULL); // Only support drag and drop when not sortable table -#else///ifndef SUBTRACK_CFG boolean useDragAndDrop = sameOk("subTracks",trackDbSetting(parentTdb, "dragAndDrop")); -#endif///ndef SUBTRACK_CFG +#ifdef SUBTRACK_CFG +if (useDragAndDrop) + useDragAndDrop = (sortOrder == NULL); // Only support drag and drop when not sortable table +#endif///def SUBTRACK_CFG char buffer[SMALLBUF]; char *displaySubs = NULL; int subCount = slCount(subtrackRefList); #define LARGE_COMPOSITE_CUTOFF 30 if (subCount > LARGE_COMPOSITE_CUTOFF) { safef(buffer,SMALLBUF,"%s.displaySubtracks",parentTdb->track); displaySubs = cartUsualString(cart, buffer,"some"); // track specific defaults to only selected } else { displaySubs = cartUsualString(cart, "displaySubtracks", "all"); // browser wide defaults to all } boolean displayAll = sameString(displaySubs, "all");