Thanks Nick,

I tried creating a RunLoop, that runs for 10 seconds, but I still had no
joy. I guess I'm still making beginner mistakes. Any ideas from the code
below, which now has a RunLoop?

#import <Foundation/Foundation.h>
#import <Cocoa/Cocoa.h>

void MyScreenRefreshCallback (CGRectCount count, const CGRect * rectArray,
void * userParameter){
    NSLog(@"Refreshed");
}

void MyScreenUpdateMoveCallback (CGScreenUpdateMoveDelta delta, size_t
count, const CGRect * rectArray, void * userParameter) {
    NSLog(@"Updated");
}

int main (int argc, const char * argv[]) {
    NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];

    NSLog(@"Started");

    CGRegisterScreenRefreshCallback(MyScreenRefreshCallback, NULL);
    CGScreenRegisterMoveCallback(MyScreenUpdateMoveCallback, NULL);

    NSRunLoop *runLoop = [NSRunLoop currentRunLoop];
    [runLoop runUntilDate:[NSDate dateWithTimeIntervalSinceNow: 10]];

    NSLog(@"Finished");

    [pool drain];
    return 0;
}



2008/10/29 Nick Zitzmann <[EMAIL PROTECTED]>

>
> On Oct 29, 2008, at 12:00 PM, Steve McLeod wrote:
>
>  I am trying to detect whether any window moves on the screen. As far as I
>> can tell CGScreenRegisterMoveCallback should let me do this. But in the
>> little test code below, which registers callbacks then waits 20 seconds, I
>> never see the message "Updated" or "Refreshed". The code builds and runs
>> without warnings.
>>
>> Any ideas?
>>
>
>
> You need to create and run a run loop.
>
> Nick Zitzmann
> <http://www.chronosnet.com/>
>
>
_______________________________________________

Cocoa-dev mailing list ([email protected])

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