OSDN Git Service

Refactoring
authorHirami <tomohisa.hirami@nifty.com>
Fri, 30 Mar 2012 01:16:32 +0000 (10:16 +0900)
committerHirami <tomohisa.hirami@nifty.com>
Fri, 30 Mar 2012 01:16:32 +0000 (10:16 +0900)
iOS/Tombo/Tombo/MasterViewController.m

index c89bffb..79ec19b 100644 (file)
 }
 */
 
+- (void)transitDetailView:(NSIndexPath *)indexPath controller:(DetailViewController*)controller {
+    FileItem *item = [_objects objectAtIndex:indexPath.row];
+    if (item.isUp) {
+        // switch view items
+        [self removeAllItems];
+        [storage updir];
+        [self insertItems];
+    } else if (item.isDirectory) {
+        // switch view items
+        [self removeAllItems];
+        [storage chdir: item.name];
+        [self insertItems];
+        
+    } else {
+        [controller setDetailItem:item];
+    }
+    
+}
+
 // Select Row(iPhone/iPad)
 // set item for iPad
 - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
 {
     if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPad) {
-        FileItem *item = [_objects objectAtIndex:indexPath.row];
-        if (item.isUp) {
-            // switch view items
-            [self removeAllItems];
-            [storage updir];
-            [self insertItems];
-        } else if (item.isDirectory) {
-            // switch view items
-            [self removeAllItems];
-            [storage chdir: item.name];
-            [self insertItems];
-            
-        } else {
-            [self.detailViewController setDetailItem:item];
-        }
+        [self transitDetailView:indexPath controller:self.detailViewController];
     }
 }
 
     if ([[segue identifier] isEqualToString:@"showDetail"]) {
         NSIndexPath *indexPath = [self.tableView indexPathForSelectedRow];         
         FileItem *item = [_objects objectAtIndex:indexPath.row];
-        if (item.isUp) {
-            CustomSegue *customSegue = (CustomSegue*)segue;
-            customSegue.isStop = YES;
-
-            // switch view items
-            [self removeAllItems];
-            [storage updir];
-            [self insertItems];
-        } else if (item.isDirectory) {
+        if (item.isUp || item.isDirectory) {
             CustomSegue *customSegue = (CustomSegue*)segue;
-            customSegue.isStop = YES;
-            
-            // switch view items
-            [self removeAllItems];
-            [storage chdir: item.name];
-            [self insertItems];
-            
-        } else {
-            [[segue destinationViewController] setDetailItem:item];
+            customSegue.isStop = YES;            
         }
+        [self transitDetailView:indexPath controller:[segue destinationViewController]];
     }
 }