Skip to content
Snippets Groups Projects
Commit d9f976e9 authored by cramakri's avatar cramakri
Browse files

Preparation for the model hierarchy. Update the detail view when a drill down is selected.

SVN: 27177
parent ecae4013
No related branches found
No related tags found
No related merge requests found
...@@ -35,6 +35,7 @@ ...@@ -35,6 +35,7 @@
@property (weak, nonatomic) IBOutlet UIImageView *imageView; @property (weak, nonatomic) IBOutlet UIImageView *imageView;
// Actions // Actions
- (void)selectionDidChange; - (void)selectionDidChange; //!< Signals that the user has made a final selction
- (void)selectionIsChanging; //!< Signals that the user has changed the seleciton, but has not yet decided
@end @end
...@@ -56,6 +56,13 @@ ...@@ -56,6 +56,13 @@
} }
} }
- (void)selectionIsChanging
{
// Update the view, but do not dissmiss the popover
[self configureViewProvisionally];
[self requestServerSync];
}
- (CISDOBIpadEntity *)detailItem { return [self.openBisModel selectedObject]; } - (CISDOBIpadEntity *)detailItem { return [self.openBisModel selectedObject]; }
- (void)configureViewProvisionally - (void)configureViewProvisionally
......
...@@ -54,7 +54,6 @@ ...@@ -54,7 +54,6 @@
// UIBarButtonItem *addButton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemAdd target:self action:@selector(insertNewObject:)]; // UIBarButtonItem *addButton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemAdd target:self action:@selector(insertNewObject:)];
// self.navigationItem.rightBarButtonItem = addButton; // self.navigationItem.rightBarButtonItem = addButton;
self.detailViewController = (CISDOBDetailViewController *)[[self.splitViewController.viewControllers lastObject] topViewController]; self.detailViewController = (CISDOBDetailViewController *)[[self.splitViewController.viewControllers lastObject] topViewController];
self.detailViewController.openBisModel = self.openBisModel;
} }
- (void)didReceiveMemoryWarning - (void)didReceiveMemoryWarning
...@@ -128,17 +127,19 @@ ...@@ -128,17 +127,19 @@
// Segue to the detail view unless we are on the ipad // Segue to the detail view unless we are on the ipad
if ([[UIDevice currentDevice] userInterfaceIdiom] != UIUserInterfaceIdiomPad) return; if ([[UIDevice currentDevice] userInterfaceIdiom] != UIUserInterfaceIdiomPad) return;
// Drill into the hierarchy
[self.openBisModel selectObjectAtIndexPath: indexPath]; [self.openBisModel selectObjectAtIndexPath: indexPath];
if ([self.openBisModel isSelectionGroup]) { if ([self.openBisModel isSelectionGroup]) {
UIStoryboard *storyboard = self.storyboard; UIStoryboard *storyboard = self.storyboard;
CISDOBMasterViewController *child = [storyboard instantiateViewControllerWithIdentifier: @"Master"]; CISDOBMasterViewController *child = [storyboard instantiateViewControllerWithIdentifier: @"Master"];
[child initializeDrillDownFrom: self]; [child initializeDrillDownFrom: self];
[self.navigationController pushViewController: child animated: YES]; [self.navigationController pushViewController: child animated: YES];
[self.detailViewController selectionIsChanging];
} else { } else {
// Show the current selection
self.detailViewController.openBisModel = self.openBisModel;
[self.detailViewController selectionDidChange]; [self.detailViewController selectionDidChange];
} }
} }
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender - (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
......
...@@ -39,7 +39,7 @@ ...@@ -39,7 +39,7 @@
@property (weak, nonatomic) CISDOBOpenBisModel *parentModel; @property (weak, nonatomic) CISDOBOpenBisModel *parentModel;
// Initialize // Initialize
- (id)initWithParentModel:(CISDOBOpenBisModel *)parentModel; - (id)initWithParentModel:(CISDOBOpenBisModel *)parentModel; //!< The designated initializer
// Model // Model
- (NSInteger)numberOfSections; //!< Get the number of categories for the current selection - (NSInteger)numberOfSections; //!< Get the number of categories for the current selection
......
...@@ -26,6 +26,13 @@ ...@@ -26,6 +26,13 @@
@implementation CISDOBOpenBisModel @implementation CISDOBOpenBisModel
#pragma mark - Initialize #pragma mark - Initialize
- (id)init
{
if (!(self = [self initWithParentModel: nil])) return nil;
return self;
}
- (id)initWithParentModel:(CISDOBOpenBisModel *)parentModel - (id)initWithParentModel:(CISDOBOpenBisModel *)parentModel
{ {
if (!(self = [super init])) return nil; if (!(self = [super init])) return nil;
......
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <?xml version="1.0" encoding="UTF-8" standalone="no"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="2.0" toolsVersion="2840" systemVersion="11G56" targetRuntime="iOS.CocoaTouch.iPad" propertyAccessControl="none" useAutolayout="YES" initialViewController="5"> <document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="2.0" toolsVersion="2843" systemVersion="11G56" targetRuntime="iOS.CocoaTouch.iPad" propertyAccessControl="none" useAutolayout="YES" initialViewController="5">
<dependencies> <dependencies>
<development version="4500" identifier="xcode"/> <development version="4500" identifier="xcode"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="1926"/> <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="1929"/>
</dependencies> </dependencies>
<scenes> <scenes>
<!--Navigation Controller--> <!--Navigation Controller-->
...@@ -188,7 +188,7 @@ ...@@ -188,7 +188,7 @@
<outlet property="delegate" destination="19" id="21"/> <outlet property="delegate" destination="19" id="21"/>
</connections> </connections>
</tableView> </tableView>
<navigationItem key="navigationItem" title="Categories" id="40"/> <navigationItem key="navigationItem" title="All" id="40"/>
</tableViewController> </tableViewController>
<placeholder placeholderIdentifier="IBFirstResponder" id="23" sceneMemberID="firstResponder"/> <placeholder placeholderIdentifier="IBFirstResponder" id="23" sceneMemberID="firstResponder"/>
</objects> </objects>
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment