Thursday 22 May 2008

///////////////// load quartz file to parent view

quartzView = [[QCView alloc] init];

        [quartzView setAutostartsRendering:YES];

[quartzView loadCompositionFromFile:[@"~/monstrositylogo.qtz" stringByExpandingTildeInPath]];

        [quartzView setFrame:[self bounds]];

        [self addSubview:quartzView];

////////////////////
I found debugging my screen saver to initially be a pain in the ass. Eventually the method I found to work was..

You can download a basic .saver as a stating block here... http://cocoadevcentral.com/downloads/000088-MyScreenSaver-Finished.zip

1) Download SaverLab.

2) In xcode bring up the Project Info window and change "Per-Configuration Build Products Path" to "$(HOME)/Library/Screen Savers/".
This puts the screen saver into the correct folder when built.

3) Add a line such as NSLog( @"Hello" ); to your initWithFrame method so you can check it works.

4) Crete a new custom executable (Project>New Custom Executable) bring up the "Executable Info" page click Path>Choose and locate SaverLab.

5) SaverLab>Preferences>General uncheck "show module list on startup"

Make sure you quit SaverLab after every build, and reselect you saver in the savers list on startup.

Build and go....!