cocoaTouch/OverlayViewController.m
changeset 3513 f589230fa21b
parent 3490 016b3172b645
equal deleted inserted replaced
3512:6a8b5f313190 3513:f589230fa21b
    57             self.view.transform = CGAffineTransformMakeRotation(degreesToRadian(-90));
    57             self.view.transform = CGAffineTransformMakeRotation(degreesToRadian(-90));
    58             [self chatDisappear];
    58             [self chatDisappear];
    59             HW_setLandscape(YES);
    59             HW_setLandscape(YES);
    60             break;
    60             break;
    61         case UIDeviceOrientationPortrait:
    61         case UIDeviceOrientationPortrait:
    62             sdlView.transform = CGAffineTransformMakeRotation(degreesToRadian(270));
    62             if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) {
    63             self.view.transform = CGAffineTransformMakeRotation(degreesToRadian(0));
    63                 sdlView.transform = CGAffineTransformMakeRotation(degreesToRadian(270));
    64             [self chatAppear];
    64                 self.view.transform = CGAffineTransformMakeRotation(degreesToRadian(0));
    65             HW_setLandscape(NO);
    65                 [self chatAppear];
       
    66                 HW_setLandscape(NO);
       
    67             }
    66             break;
    68             break;
    67         case UIDeviceOrientationPortraitUpsideDown:
    69         case UIDeviceOrientationPortraitUpsideDown:
    68             sdlView.transform = CGAffineTransformMakeRotation(degreesToRadian(90));
    70             if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) {
    69             self.view.transform = CGAffineTransformMakeRotation(degreesToRadian(180));
    71                 sdlView.transform = CGAffineTransformMakeRotation(degreesToRadian(90));
    70             [self chatAppear];
    72                 self.view.transform = CGAffineTransformMakeRotation(degreesToRadian(180));
    71             HW_setLandscape(NO);
    73                 [self chatAppear];
       
    74                 HW_setLandscape(NO);
       
    75             }
    72             break;
    76             break;
    73         default:
    77         default:
    74             NSLog(@"warning - Unknown rotation status");
    78             DLog(@"Unknown rotation status");
    75             break;
    79             break;
    76     }
    80     }
    77     self.view.frame = usefulRect;
    81     self.view.frame = usefulRect;
    78     //sdlView.frame = usefulRect;
    82     //sdlView.frame = usefulRect;
    79     [UIView commitAnimations];
    83     [UIView commitAnimations];
   124     [[NSNotificationCenter defaultCenter] addObserver:self
   128     [[NSNotificationCenter defaultCenter] addObserver:self
   125                                              selector:@selector(dismissPopover)
   129                                              selector:@selector(dismissPopover)
   126                                                  name:@"dismissPopover"
   130                                                  name:@"dismissPopover"
   127                                                object:nil];
   131                                                object:nil];
   128     
   132     
   129     // need to split paths because iphone doesn't rotate (so we don't need to subscribe to any notification
   133     [[UIDevice currentDevice] beginGeneratingDeviceOrientationNotifications];	
   130     // nor perform engine actions when rotating
   134     [[NSNotificationCenter defaultCenter] addObserver:self
   131     if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) {
   135                                              selector:@selector(didRotate:)
   132         [[UIDevice currentDevice] beginGeneratingDeviceOrientationNotifications];	
   136                                                  name:@"UIDeviceOrientationDidChangeNotification"
   133         [[NSNotificationCenter defaultCenter] addObserver:self
   137                                                object:nil];
   134                                                  selector:@selector(didRotate:)
   138 
   135                                                      name:@"UIDeviceOrientationDidChangeNotification"
   139     //self.view.transform = CGAffineTransformRotate(self.view.transform, (M_PI/2.0)); 
   136                                                    object:nil];
       
   137         
       
   138         [self didRotate:nil];
       
   139     } else 
       
   140         self.view.transform = CGAffineTransformRotate(self.view.transform, (M_PI/2.0));
       
   141     
       
   142 	[UIView beginAnimations:@"showing overlay" context:NULL];
   140 	[UIView beginAnimations:@"showing overlay" context:NULL];
   143 	[UIView setAnimationDuration:1];
   141 	[UIView setAnimationDuration:1];
   144 	self.view.alpha = 1;
   142 	self.view.alpha = 1;
   145 	[UIView commitAnimations];
   143 	[UIView commitAnimations];
   146 }
   144 }
   237 -(IBAction) showPopover{
   235 -(IBAction) showPopover{
   238     isPopoverVisible = YES;
   236     isPopoverVisible = YES;
   239     CGRect anchorForPopover;
   237     CGRect anchorForPopover;
   240     Class popoverControllerClass = NSClassFromString(@"UIPopoverController");
   238     Class popoverControllerClass = NSClassFromString(@"UIPopoverController");
   241     if (popoverControllerClass) {
   239     if (popoverControllerClass) {
   242 #if __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_3_2
   240 #if __IPHONE_3_2
   243         if (popupMenu == nil) 
   241         if (popupMenu == nil) 
   244             popupMenu = [[PopoverMenuViewController alloc] initWithStyle:UITableViewStylePlain];
   242             popupMenu = [[PopoverMenuViewController alloc] initWithStyle:UITableViewStylePlain];
   245         popoverController = [[popoverControllerClass alloc] initWithContentViewController:popupMenu];
   243         popoverController = [[popoverControllerClass alloc] initWithContentViewController:popupMenu];
   246         [popoverController setPopoverContentSize:CGSizeMake(220, 170) animated:YES];
   244         [popoverController setPopoverContentSize:CGSizeMake(220, 170) animated:YES];
   247         [popoverController setPassthroughViews:[NSArray arrayWithObject:self.view]];
   245         [popoverController setPassthroughViews:[NSArray arrayWithObject:self.view]];