Introduced OutlineViewController to modularize code

This commit is contained in:
michael starke
2013-02-19 03:30:36 +01:00
parent 93928c376e
commit 1f05b0eaba
12 changed files with 1300 additions and 1498 deletions

View File

@@ -10,22 +10,26 @@
#import "MPIconHelper.h"
#import "KdbLib.h"
NSString *const _MPOutlineViewDataViewIdentifier = @"DataCell";
NSString *const _MPOutlinveViewHeaderViewIdentifier = @"HeaderCell";
@implementation MPOutlineViewDelegate
- (NSView *)outlineView:(NSOutlineView *)outlineView viewForTableColumn:(NSTableColumn *)tableColumn item:(id)item {
KdbGroup *group = item;
NSTableCellView *view;
if(![group parent]) {
view = [outlineView makeViewWithIdentifier:@"HeaderCell" owner:self];
view = [outlineView makeViewWithIdentifier:_MPOutlinveViewHeaderViewIdentifier owner:self];
[view.textField setStringValue:[group name]];
}
else {
view = [outlineView makeViewWithIdentifier:@"DataCell" owner:self];
view = [outlineView makeViewWithIdentifier:_MPOutlineViewDataViewIdentifier owner:self];
NSDictionary *availableIcons = [MPIconHelper availableIcons];
NSInteger randomIndex = rand() % [availableIcons count];
NSImage *icon = [MPIconHelper icon:(MPIconType)randomIndex];
[view.imageView setImage:icon];
[view.textField setStringValue:[group name]];
}
return view;