If you handle the modal session yourself, it's easy to let the connection do some processing while the modal window is open: Replace -[NSApp runModalForWindow:[self window]] by this and it should do the trick.

    /* Create a modal session, and in each loop,
we process the default runloop event sources (url download, network connections, etc.) */ NSModalSession session = [NSApp beginModalSessionForWindow:[self window]];
    for (;;) {
if ((result = [NSApp runModalSession:session]) != NSRunContinuesResponse)
        break;
/* Note: Do not use a 0 timeout, else this loop will never block and will consume a lots of CPU. In fact, the Cocoa UI event port is scheduled in the default runloop, so each Cocoa event will wakeup the runloop. */ [[NSRunLoop currentRunLoop] runUntilDate:[NSDate distantFuture]];
    }
    [NSApp endModalSession:session];

So that basically means I create my own run loop and call out into the non-modal one from time to time, right?
Just wondering about the "from time to time" part.

cheers
--
Torsten
_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to [EMAIL PROTECTED]

Reply via email to