ResKnife/Cocoa/Categories/NSOutlineView-SelectedItems.m

34 lines
906 B
Mathematica
Raw Normal View History

2002-02-23 03:40:24 +00:00
#import "NSOutlineView-SelectedItems.h"
/* The methods in the following catagory were based upon those in OmniAppKit */
2002-02-23 03:40:24 +00:00
@implementation NSOutlineView (RKSelectedItemExtensions)
2002-02-23 03:40:24 +00:00
- (id)selectedItem
{
if ([self numberOfSelectedRows] != 1) return nil;
2002-02-23 03:40:24 +00:00
else return [self itemAtRow:[self selectedRow]];
}
- (NSArray *)selectedItems
2002-02-23 03:40:24 +00:00
{
NSMutableArray *items = [NSMutableArray array];
#if MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_3
NSIndexSet *indicies = [self selectedRowIndexes];
unsigned int rowIndex = [indicies firstIndex];
while (rowIndex != NSNotFound)
{
[items addObject:[self itemAtRow:rowIndex]];
rowIndex = [indicies indexGreaterThanIndex:rowIndex];
}
#else
NSNumber *row;
2002-02-23 03:40:24 +00:00
NSEnumerator *enumerator = [self selectedRowEnumerator];
while (row = [enumerator nextObject])
2002-02-23 03:40:24 +00:00
[items addObject:[self itemAtRow:[row intValue]]];
#endif
2002-02-23 03:40:24 +00:00
return items;
}
@end