There is an important difference in a way KSPFetchedResultsController merges the changes from the NSManagedObjectContextObjectsDidChangeNotification. The chosen way is better for NSTableView pairing, but may be a little confusing for the NSFetchedResultsController users.
KSPFetchedResultsControllerDelegate is notified not only about changes that already took place, but also about changes that are going to happen.
KSPSectionedFetchedResultsController uses NSObjects as 'names' for its sections as opposed for NSStrings used by NSFetchedResultsController.
KSPFetchedResultsController uses plain indices instead if index paths used by NSFetchedResultsController. Again, this is better for NSTableView pairing. Because of this the KSPSectionedFetchedResultsControllerDelegate method that is called on object change has completely different signature.
When reporting sections changes KSPSectionedFetchedResultsController has three possible events: section insertion, section movement and section deletion. Again, delegate method signature is a little different, and a separate enum (KSPSectionedFetchedResultsChangeType) is used to define possible sections changes.
KSPFetchedResultsController
merges the changes from theNSManagedObjectContextObjectsDidChangeNotification
. The chosen way is better forNSTableView
pairing, but may be a little confusing for theNSFetchedResultsController
users.KSPFetchedResultsControllerDelegate
is notified not only about changes that already took place, but also about changes that are going to happen.KSPSectionedFetchedResultsController
usesNSObjects
as 'names' for its sections as opposed forNSStrings
used byNSFetchedResultsController
.KSPFetchedResultsController
uses plain indices instead if index paths used byNSFetchedResultsController
. Again, this is better forNSTableView
pairing. Because of this theKSPSectionedFetchedResultsControllerDelegate
method that is called on object change has completely different signature.KSPSectionedFetchedResultsController
has three possible events: section insertion, section movement and section deletion. Again, delegate method signature is a little different, and a separate enum (KSPSectionedFetchedResultsChangeType
) is used to define possible sections changes.