Revision: 26483 http://sourceforge.net/p/bibdesk/svn/26483 Author: hofman Date: 2021-07-23 23:58:58 +0000 (Fri, 23 Jul 2021) Log Message: ----------- Only resort newly added children
Modified Paths: -------------- trunk/bibdesk/BDSKParentGroup.m Modified: trunk/bibdesk/BDSKParentGroup.m =================================================================== --- trunk/bibdesk/BDSKParentGroup.m 2021-07-23 23:39:26 UTC (rev 26482) +++ trunk/bibdesk/BDSKParentGroup.m 2021-07-23 23:58:58 UTC (rev 26483) @@ -111,7 +111,7 @@ - (void)resortInRange:(NSRange)range { if (sortDescriptors && range.length > 1) { - if (range.length == [self numberOfChildren]) + if (NSEqualRanges(range, NSMakeRange(0, [self numberOfChildren]))) [children sortUsingDescriptors:sortDescriptors]; else [children replaceObjectsInRange:range withObjectsFromArray:[[children subarrayWithRange:range] sortedArrayUsingDescriptors:sortDescriptors]]; @@ -128,13 +128,6 @@ return [children objectAtIndex:anIndex]; } -- (void)insertChild:(id)child atIndex:(NSUInteger)anIndex { - [children insertObject:child atIndex:anIndex]; - [child setParent:self]; - [child setDocument:[self document]]; - [self resort]; -} - - (void)insertChild:(id)child atIndex:(NSUInteger)relativeIndex fromIndex:(NSUInteger)anIndex { [children insertObject:child atIndex:anIndex + relativeIndex]; [child setParent:self]; @@ -162,10 +155,10 @@ [[children subarrayWithRange:range] setValue:nil forKey:@"document"]; [children replaceObjectsInRange:range withObjectsFromArray:newChildren]; } - [children setValue:self forKey:@"parent"]; - [children setValue:[self document] forKey:@"document"]; + [newChildren setValue:self forKey:@"parent"]; + [newChildren setValue:[self document] forKey:@"document"]; if ([newChildren count]) - [self resort]; + [self resortInRange:NSMakeRange(range.location, [newChildren count])]; } - (void)removeAllChildren { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. _______________________________________________ Bibdesk-commit mailing list Bibdesk-commit@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bibdesk-commit