// // NSIndexPath+MPRemoveFirstIndex.m // MathPad // // Created by Kim Wittenburg on 23.04.14. // Copyright (c) 2014 Kim Wittenburg. All rights reserved. // #import "NSIndexPath+MPAdditions.h" @implementation NSIndexPath (MPAdditions) - (NSIndexPath *)indexPathByRemovingFirstIndex { if (self.length <= 1) { return [[NSIndexPath alloc] init]; } NSUInteger indexes[self.length]; [self getIndexes:indexes]; NSUInteger newIndexes[self.length-1]; for (NSUInteger i = 0; i < self.length-1; i++) { newIndexes[i] = indexes[i+1]; } return [[NSIndexPath alloc] initWithIndexes:newIndexes length:self.length-1]; } - (NSIndexPath *)indexPathByPreceedingIndex:(NSUInteger)index { NSUInteger newIndexes[self.length+1]; newIndexes[0] = index; for (NSUInteger i = 0; i < self.length; i++) { newIndexes[i+1] = [self indexAtPosition:i]; } return [[NSIndexPath alloc] initWithIndexes:newIndexes length:self.length+1]; } @end