From c7dab1e8903cc8ab243d8fc2a778aabad60342a0 Mon Sep 17 00:00:00 2001 From: Jasper Blues Date: Fri, 15 Jun 2012 16:13:02 +0800 Subject: [PATCH] Allow setting the nibName on data renderer. --- .../DataRenderer/expanz_ui_AbstractDataRenderer.h | 7 +++---- .../DataRenderer/expanz_ui_AbstractDataRenderer.m | 2 +- .../DataRenderer/expanz_ui_GridDataRenderer.m | 6 +++++- .../DataRenderer/expanz_ui_TreeDataRenderer.m | 5 ++++- 4 files changed, 13 insertions(+), 7 deletions(-) diff --git a/Source/Main/UserInterface/DataRenderer/expanz_ui_AbstractDataRenderer.h b/Source/Main/UserInterface/DataRenderer/expanz_ui_AbstractDataRenderer.h index b806986e..980d6bde 100644 --- a/Source/Main/UserInterface/DataRenderer/expanz_ui_AbstractDataRenderer.h +++ b/Source/Main/UserInterface/DataRenderer/expanz_ui_AbstractDataRenderer.h @@ -20,6 +20,7 @@ NSMutableArray* _filteredListContent; NSUInteger _cellHeight; + NSString* _nibNameForTableCell; } @@ -43,6 +44,8 @@ */ @property(nonatomic, strong, readonly) UISearchDisplayController* searchController; +@property(nonatomic, strong) NSString* nibNameForTableCell; + /** * Injection point for loading custom table cells from a nib. */ @@ -74,10 +77,6 @@ */ - (void) filterContentForSearchText:(NSString*)searchText scope:(NSString*)scope; -/** -* Abstract method that returns the name of the nib to use. -*/ -- (NSString*) nibNameForTableCell; - (UITableViewCell*) loadTableCellFromNib; diff --git a/Source/Main/UserInterface/DataRenderer/expanz_ui_AbstractDataRenderer.m b/Source/Main/UserInterface/DataRenderer/expanz_ui_AbstractDataRenderer.m index 3dc39230..6e183521 100644 --- a/Source/Main/UserInterface/DataRenderer/expanz_ui_AbstractDataRenderer.m +++ b/Source/Main/UserInterface/DataRenderer/expanz_ui_AbstractDataRenderer.m @@ -11,7 +11,6 @@ #import "expanz_ui_AbstractDataRenderer.h" #import "expanz_model_AbstractData.h" -#import "expanz_ui_NavigationManager.h" @implementation expanz_ui_AbstractDataRenderer @@ -21,6 +20,7 @@ @implementation expanz_ui_AbstractDataRenderer @synthesize activityName = _activityName; @synthesize searchController = _searchController; @synthesize tableCell = _tableCell; +@synthesize nibNameForTableCell = _nibNameForTableCell; /* ================================================== Initializers ================================================== */ diff --git a/Source/Main/UserInterface/DataRenderer/expanz_ui_GridDataRenderer.m b/Source/Main/UserInterface/DataRenderer/expanz_ui_GridDataRenderer.m index cdba9b90..b294f815 100644 --- a/Source/Main/UserInterface/DataRenderer/expanz_ui_GridDataRenderer.m +++ b/Source/Main/UserInterface/DataRenderer/expanz_ui_GridDataRenderer.m @@ -31,6 +31,7 @@ - (Row*) tableView:(UITableView*)tableView rowForIndexPath:(NSIndexPath*)indexPa - (void) thumbnailTableViewCell:(ThumbnailTableCell*)cell setThumbnailImageFor:(Row*)row; @end + /* ================================================================================================================== */ @implementation expanz_ui_GridDataRenderer @@ -147,7 +148,10 @@ - (void) filterContentForSearchText:(NSString*)searchText scope:(NSString*)scope } - (NSString*) nibNameForTableCell { - return @"DefaultTableCellForGridData"; + if ([_nibNameForTableCell length] == 0) { + _nibNameForTableCell = @"DefaultTableCellForGridData"; + } + return _nibNameForTableCell; } diff --git a/Source/Main/UserInterface/DataRenderer/expanz_ui_TreeDataRenderer.m b/Source/Main/UserInterface/DataRenderer/expanz_ui_TreeDataRenderer.m index b48eb992..8f7fcd15 100644 --- a/Source/Main/UserInterface/DataRenderer/expanz_ui_TreeDataRenderer.m +++ b/Source/Main/UserInterface/DataRenderer/expanz_ui_TreeDataRenderer.m @@ -111,7 +111,10 @@ - (void) filterContentForSearchText:(NSString*)searchText scope:(NSString*)scope } - (NSString*) nibNameForTableCell { - return @"DefaultTableCellForTreeData"; + if ([_nibNameForTableCell length] == 0) { + _nibNameForTableCell = @"DefaultTableCellForTreeData"; + } + return _nibNameForTableCell; } /* ================================================== Private Methods =============================================== */