project_files/HedgewarsMobile/Classes/InGameMenuViewController.m
changeset 5662 99083392cd4f
parent 5483 fc755bb8096d
child 5711 cba92708277b
equal deleted inserted replaced
5660:1647244b3ffe 5662:99083392cd4f
   160             [alert release];
   160             [alert release];
   161             shouldTakeScreenshot = YES;
   161             shouldTakeScreenshot = YES;
   162 
   162 
   163             break;
   163             break;
   164         case 3:
   164         case 3:
   165             // expand the view (and table) so that the actionsheet can be selected on the iPhone
       
   166             if (IS_IPAD() == NO) {
       
   167                 CGRect screen = [[UIScreen mainScreen] bounds];
       
   168                 [self.tableView deselectRowAtIndexPath:indexPath animated:NO];
       
   169                 [UIView beginAnimations:@"table width more" context:NULL];
       
   170                 [UIView setAnimationDuration:0.2];
       
   171                 self.view.frame = CGRectMake(0, 0, screen.size.height, screen.size.width);
       
   172                 [UIView commitAnimations];
       
   173             }
       
   174             actionSheet = [[UIActionSheet alloc] initWithTitle:NSLocalizedString(@"Are you reeeeeally sure?", @"")
   165             actionSheet = [[UIActionSheet alloc] initWithTitle:NSLocalizedString(@"Are you reeeeeally sure?", @"")
   175                                                       delegate:self
   166                                                       delegate:self
   176                                              cancelButtonTitle:NSLocalizedString(@"Well, maybe not...", @"")
   167                                              cancelButtonTitle:NSLocalizedString(@"Well, maybe not...", @"")
   177                                         destructiveButtonTitle:NSLocalizedString(@"Of course!", @"")
   168                                         destructiveButtonTitle:NSLocalizedString(@"Of course!", @"")
   178                                              otherButtonTitles:nil];
   169                                              otherButtonTitles:nil];
   179             [actionSheet showInView:self.view];
   170             [actionSheet showInView:(IS_IPAD() ? self.view : UIVIEW_HW_SDLVIEW)];
   180             [actionSheet release];
   171             [actionSheet release];
   181 
   172 
   182             break;
   173             break;
   183         default:
   174         default:
   184             DLog(@"Warning: unset case value in section!");
   175             DLog(@"Warning: unset case value in section!");
   189 }
   180 }
   190 
   181 
   191 #pragma mark -
   182 #pragma mark -
   192 #pragma mark actionSheet methods
   183 #pragma mark actionSheet methods
   193 -(void) actionSheet:(UIActionSheet *)actionSheet didDismissWithButtonIndex:(NSInteger) buttonIndex {
   184 -(void) actionSheet:(UIActionSheet *)actionSheet didDismissWithButtonIndex:(NSInteger) buttonIndex {
   194     if (IS_IPAD() == NO) {
       
   195         CGRect screen = [[UIScreen mainScreen] bounds];
       
   196         [UIView beginAnimations:@"table width less" context:NULL];
       
   197         [UIView setAnimationDuration:0.2];
       
   198         self.view.frame = CGRectMake(screen.size.height-200, 0, 200, VIEW_HEIGHT);
       
   199         [UIView commitAnimations];
       
   200     }
       
   201 
       
   202     if ([actionSheet cancelButtonIndex] != buttonIndex) {
   185     if ([actionSheet cancelButtonIndex] != buttonIndex) {
   203         SDL_iPhoneKeyboardHide((SDL_Window *)HW_getSDLWindow());
   186         SDL_iPhoneKeyboardHide((SDL_Window *)HW_getSDLWindow());
   204         HW_terminate(NO);
   187         HW_terminate(NO);
   205     }
   188     }
   206 }
   189 }
   207 
   190 
       
   191 //TODO: check this is still needed since we switched to SDL_GL_CreateContext()
   208 #pragma mark -
   192 #pragma mark -
   209 #pragma mark save screenshot
   193 #pragma mark save screenshot
   210 //by http://www.bit-101.com/blog/?p=1861
   194 //by http://www.bit-101.com/blog/?p=1861
   211 // callback for CGDataProviderCreateWithData
   195 // callback for CGDataProviderCreateWithData
   212 void releaseData(void *info, const void *data, size_t dataSize) {
   196 void releaseData(void *info, const void *data, size_t dataSize) {