QTKitの関数(2)

・ファイルを開く(NSOpenPanel使用)

  • (IBAction)open:(id)sender

{
// オープンパネルを開く
NSOpenPanel* openPanel = [NSOpenPanel openPanel];
int result = [openPanel runModalForDirectory:nil file:nil types:nil];
if (result == NSOKButton) {
// QTMovieを作る
QTMovie* movie = [QTMovie movieWithFile:[openPanel filename] error:nil];

// QTMovieViewにQTMovieを設定する
[movieView setMovie:movie];
}
}


・ファイルを保存する(NSSavePanel使用)

  • (IBAction)save:(id)sender

{
// ムービーを更新する
QTMovie* movie = [movieView movie];
[movie updateMovieFile];
}

  • (IBAction)saveAs:(id)sender

{
// セーブパネルを開く
NSSavePanel* savePanel = [NSSavePanel savePanel];
int result = [savePanel runModalForDirectory:nil file:nil];
if (result == NSOKButton) {
QTMovie* movie = [movieView movie];

// ムービーを保存する
NSMutableDictionary* attr = [NSMutableDictionary dictionary];
[attr setObject:[NSNumber numberWithBool:YES] forKey:QTMovieFlatten];
[movie writeToFile:[savePanel filename] withAttributes:attr];
}
}