28 |
28 |
29 -(void) viewDidLoad { |
29 -(void) viewDidLoad { |
30 self.title = NSLocalizedString(@"Settings",@""); |
30 self.title = NSLocalizedString(@"Settings",@""); |
31 |
31 |
32 // allocate controllers and store them into the array |
32 // allocate controllers and store them into the array |
33 NSArray *array= [[NSArray alloc] initWithObjects:NSLocalizedString(@"General",@""), |
33 NSArray *array= [[NSArray alloc] initWithObjects:NSLocalizedString(@"General",@""), |
34 NSLocalizedString(@"Teams",@""), |
34 NSLocalizedString(@"Teams",@""), |
35 NSLocalizedString(@"Weapons",@""), |
35 NSLocalizedString(@"Weapons",@""), |
36 NSLocalizedString(@"Schemes",@""), |
36 NSLocalizedString(@"Schemes",@""), |
37 nil]; |
37 nil]; |
38 self.controllerNames = array; |
38 self.controllerNames = array; |
39 [array release]; |
39 [array release]; |
40 |
40 |
41 // on ipad make the general setting the first view, on iphone add the "Done" button on top left |
41 // on ipad make the general setting the first view, on iphone add the "Done" button on top left |
42 if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) { |
42 if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) { |
43 |
43 |
44 UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(112, 112, 480, 320)]; |
44 UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(112, 112, 480, 320)]; |
45 label.text = @"Press the buttons on the left"; |
45 label.text = @"Press the buttons on the left"; |
46 label.font = [UIFont systemFontOfSize:20]; |
46 label.font = [UIFont systemFontOfSize:20]; |
47 label.textAlignment = UITextAlignmentCenter; |
47 label.textAlignment = UITextAlignmentCenter; |
48 [self.view addSubview:label]; |
48 [self.view addSubview:label]; |
49 [label release]; |
49 [label release]; |
50 |
50 |
51 //[self.navigationController pushViewController:nextController animated:NO]; |
51 //[self.navigationController pushViewController:nextController animated:NO]; |
52 } else { |
52 } else { |
53 self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemDone |
53 self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemDone |
54 target:self |
54 target:self |
55 action:@selector(dismissSplitView)]; |
55 action:@selector(dismissSplitView)]; |
73 return [controllerNames count]; |
73 return [controllerNames count]; |
74 } |
74 } |
75 |
75 |
76 -(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { |
76 -(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { |
77 static NSString *CellIdentifier = @"Cell"; |
77 static NSString *CellIdentifier = @"Cell"; |
78 |
78 |
79 UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier]; |
79 UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier]; |
80 if (cell == nil) { |
80 if (cell == nil) { |
81 cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault |
81 cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault |
82 reuseIdentifier:CellIdentifier] autorelease]; |
82 reuseIdentifier:CellIdentifier] autorelease]; |
83 } |
83 } |
84 |
84 |
85 NSInteger row = [indexPath row]; |
85 NSInteger row = [indexPath row]; |
86 |
86 |
87 cell.textLabel.text = [controllerNames objectAtIndex:row]; |
87 cell.textLabel.text = [controllerNames objectAtIndex:row]; |
88 cell.imageView.image = [UIImage imageNamed:@"Icon.png"]; |
88 cell.imageView.image = [UIImage imageNamed:@"Icon.png"]; |
89 cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator; |
89 cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator; |
90 |
90 |
91 return cell; |
91 return cell; |
92 } |
92 } |
93 |
93 |
94 #pragma mark - |
94 #pragma mark - |
95 #pragma mark Table view delegate |
95 #pragma mark Table view delegate |
96 -(void) tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { |
96 -(void) tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { |
97 NSInteger row = [indexPath row]; |
97 NSInteger row = [indexPath row]; |
98 UIViewController *nextController = nil; |
98 UIViewController *nextController = nil; |
99 |
99 |
100 switch (row) { |
100 switch (row) { |
101 case 0: |
101 case 0: |
102 if (nil == generalSettingsViewController) |
102 if (nil == generalSettingsViewController) |
103 generalSettingsViewController = [[GeneralSettingsViewController alloc] initWithStyle:UITableViewStyleGrouped]; |
103 generalSettingsViewController = [[GeneralSettingsViewController alloc] initWithStyle:UITableViewStyleGrouped]; |
104 nextController = generalSettingsViewController; |
104 nextController = generalSettingsViewController; |
117 if (nil == schemeSettingsViewController) |
117 if (nil == schemeSettingsViewController) |
118 schemeSettingsViewController = [[SchemeSettingsViewController alloc] initWithStyle:UITableViewStyleGrouped]; |
118 schemeSettingsViewController = [[SchemeSettingsViewController alloc] initWithStyle:UITableViewStyleGrouped]; |
119 nextController = schemeSettingsViewController; |
119 nextController = schemeSettingsViewController; |
120 break; |
120 break; |
121 } |
121 } |
122 |
122 |
123 nextController.title = [controllerNames objectAtIndex:row]; |
123 nextController.title = [controllerNames objectAtIndex:row]; |
124 [self.navigationController pushViewController:nextController animated:YES]; |
124 [self.navigationController pushViewController:nextController animated:YES]; |
125 } |
125 } |
126 |
126 |
127 -(IBAction) dismissSplitView { |
127 -(IBAction) dismissSplitView { |
135 [popoverController dismissPopoverAnimated:YES]; |
135 [popoverController dismissPopoverAnimated:YES]; |
136 } |
136 } |
137 } |
137 } |
138 |
138 |
139 // Called when the master view controller is about to be hidden |
139 // Called when the master view controller is about to be hidden |
140 -(void) splitViewController: (UISplitViewController*)svc willHideViewController:(UIViewController *)aViewController |
140 -(void) splitViewController: (UISplitViewController*)svc willHideViewController:(UIViewController *)aViewController |
141 withBarButtonItem:(UIBarButtonItem*)barButtonItem forPopoverController: (UIPopoverController*)pc { |
141 withBarButtonItem:(UIBarButtonItem*)barButtonItem forPopoverController: (UIPopoverController*)pc { |
142 |
142 |
143 /* barButtonItem.title = @"Master View"; |
143 /* barButtonItem.title = @"Master View"; |
144 UIToolbar *toolbar = self.parentViewController.navigationController.toolbar; |
144 UIToolbar *toolbar = self.parentViewController.navigationController.toolbar; |
145 NSMutableArray *items = [[toolbar items] mutableCopy]; |
145 NSMutableArray *items = [[toolbar items] mutableCopy]; |
152 barButtonItem.title = aViewController.title; |
152 barButtonItem.title = aViewController.title; |
153 self.navigationItem.rightBarButtonItem = barButtonItem; |
153 self.navigationItem.rightBarButtonItem = barButtonItem; |
154 } |
154 } |
155 |
155 |
156 // Called when the master view controller is about to appear |
156 // Called when the master view controller is about to appear |
157 -(void) splitViewController: (UISplitViewController*)svc willShowViewController:(UIViewController *)aViewController |
157 -(void) splitViewController: (UISplitViewController*)svc willShowViewController:(UIViewController *)aViewController |
158 invalidatingBarButtonItem:(UIBarButtonItem *)barButtonItem { |
158 invalidatingBarButtonItem:(UIBarButtonItem *)barButtonItem { |
159 /*UIToolbar *toolbar = self.parentViewController.navigationController.toolbar; |
159 /*UIToolbar *toolbar = self.parentViewController.navigationController.toolbar; |
160 |
160 |
161 NSMutableArray *items = [[toolbar items] mutableCopy]; |
161 NSMutableArray *items = [[toolbar items] mutableCopy]; |
162 [items removeObjectAtIndex:0]; |
162 [items removeObjectAtIndex:0]; |