2002-02-23 03:40:24 +00:00
|
|
|
#import "NSOutlineView-SelectedItems.h"
|
|
|
|
|
2002-10-04 19:54:05 +00:00
|
|
|
/* The methods in the following catagory were based upon those in OmniAppKit */
|
2002-02-23 03:40:24 +00:00
|
|
|
|
2010-08-30 23:38:46 +00:00
|
|
|
@implementation NSOutlineView (RKSelectedItemExtensions)
|
2002-02-23 03:40:24 +00:00
|
|
|
|
|
|
|
- (id)selectedItem
|
|
|
|
{
|
2010-08-30 23:38:46 +00:00
|
|
|
if ([self numberOfSelectedRows] != 1) return nil;
|
2002-02-23 03:40:24 +00:00
|
|
|
else return [self itemAtRow:[self selectedRow]];
|
|
|
|
}
|
|
|
|
|
2008-07-31 20:27:55 +00:00
|
|
|
- (NSArray *)selectedItems
|
2002-02-23 03:40:24 +00:00
|
|
|
{
|
|
|
|
NSMutableArray *items = [NSMutableArray array];
|
2010-08-30 23:38:46 +00:00
|
|
|
#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];
|
2010-08-30 23:38:46 +00:00
|
|
|
while (row = [enumerator nextObject])
|
2002-02-23 03:40:24 +00:00
|
|
|
[items addObject:[self itemAtRow:[row intValue]]];
|
2010-08-30 23:38:46 +00:00
|
|
|
#endif
|
2002-02-23 03:40:24 +00:00
|
|
|
|
|
|
|
return items;
|
|
|
|
}
|
|
|
|
|
|
|
|
@end
|