I have an NSOutlineView subclass that does the following to remove a row: [selfbeginUpdates]; [selfremoveItemsAtIndexes:[NSIndexSetindexSetWithIndex:editingRow] inParent:nilwithAnimation:NSTableViewAnimationEffectNone]; [selfendUpdates];
However, when the above runs, I get the following exception: *** Assertion failure in -[MyOutlineView _doUpdatedWorkWithHandler:], /SourceCache/AppKit/AppKit-1138.23/TableView.subproj/NSTableView.m:14634 Exception detected while handling key input. Exception Name: NSInternalInconsistencyException Exception Reason: NSTableView Error: Insert/remove/move only works within a -beginUpdates/-endUpdates block. Huh? The row index is valid, I'm not overriding any of the above methods, and the calls are balanced, so I don't know why I get this. I get the same thing if I try to add a row, but discovered that if I have the outline view's delete do it instead, that works, but don't know/explain why. Unfortunately I can't use that workaround in the situation I use the code above for. Any ideas? Here's the relevant part of the stack trace: 0 CoreFoundation 0x00007fff8672c286 __exceptionPreprocess + 198 1 libobjc.A.dylib 0x00007fff8aad4d5e objc_exception_throw + 43 2 CoreFoundation 0x00007fff8672c0ba +[NSException raise:format:arguments:] + 106 3 Foundation 0x00007fff8c4757d3 -[NSAssertionHandler handleFailureInMethod:object:file:lineNumber:description:] + 169 4 AppKit 0x00007fff8e89f32b -[NSTableView _doUpdatedWorkWithHandler:] + 133 5 AppKit 0x00007fff8ebd5f35 -[NSOutlineView removeItemsAtIndexes:inParent:withAnimation:] + 214 _______________________________________________ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com