title: Displaying NSAlert sheet modals one after the other
body: <p>I want to display a Sheet and when user clicks "OK", show another sheet.</p>
  
  <p>However, the moment "OK" is clicked the whole design becomes a mess, as if the first alert sheet hadn't had enough time to disappear.</p>
  
  <p>This is the code I'm using for the sheets:</p>
  
  <pre><code>#define CONFIRM_ALERT(X,Y,Z,W,V) \
  NSAlert* confirmAlert = [NSAlert alertWithMessageText:X \
  defaultButton:@"OK" \
  alternateButton:@"Cancel" \
  otherButton:nil \
  informativeTextWithFormat:Y]; \
  [confirmAlert beginSheetModalForWindow:Z \
  modalDelegate:self \
  didEndSelector:W \
  contextInfo:V];
  
  #define INFO_ALERT(X,Y,Z) \
  NSAlert *infoAlert = [[NSAlert alloc] init]; \
  [infoAlert addButtonWithTitle:@"OK"]; \
  [infoAlert setMessageText:X]; \
  [infoAlert setInformativeText:Y];\
  [infoAlert setAlertStyle:NSInformationalAlertStyle]; \
  [infoAlert beginSheetModalForWindow:Z modalDelegate:self didEndSelector:nil contextInfo:nil];
  </code></pre>
  
  <p><strong>And how I'm using it:</strong></p>
  
  <pre><code>- (void)doSth
  {
         CONFIRM_ALERT(@"New Action", 
                 @"Are you sure you want to proceed?", 
                 [self window], 
                 @selector(confirm:code:context:),
                 nil);
  }
  
  - (void)confirm:(NSAlert*)alert code:(int)choice context:(void *)filename
  {
      if (choice == NSAlertDefaultReturn)
      {
           INFO_ALERT(@"Success :-)",
           @"The Action has been successfully completed.", 
           [self window]);
      }
  }
  </code></pre>
  
  <p>Any ideas? What am I doing wrong?</p>