| | 381 | // Allow cover art change for all formats except for DVD, .mkv, and .flv |
| | 382 | // QTMovie is broken on the ATV, don't do it there |
| | 383 | if ( [SapphireFrontRowCompat usingFrontRow] && ![SapphireFrontRowCompat usingTakeTwo] && allowCoverArtChange( [meta path] ) ) |
| | 384 | { |
| | 385 | [marks addObject: |
| | 386 | [NSDictionary dictionaryWithObjectsAndKeys: |
| | 387 | BRLocalizedString(@"Change artwork", @"Change artwork"), MARK_NAME, |
| | 388 | BRLocalizedString(@"Select displayed artwork", @""), MARK_DESCRIPTION, |
| | 389 | [NSNumber numberWithInt:COMMAND_CHANGE_ARTWORK], MARK_COMMAND, |
| | 390 | nil]]; |
| | 391 | } |
| 386 | | - (NSController *)doJoin:(SapphireWaitDisplay *)wait |
| | 411 | - (BRLayerController *)loadArtwork:(SapphireFileMetaData *)fileMeta |
| | 412 | { |
| | 413 | NSInvocation *invoke = [NSInvocation invocationWithMethodSignature: [self methodSignatureForSelector: @selector(doChangeArtwork:)]]; |
| | 414 | [invoke setSelector: @selector(doChangeArtwork:)]; |
| | 415 | [invoke setTarget: self]; |
| | 416 | |
| | 417 | SapphireWaitDisplay *wait = [[SapphireWaitDisplay alloc] initWithScene: [self scene] |
| | 418 | title: BRLocalizedString(@"Getting artwork selection", @"Getting artwork selection") |
| | 419 | invokation: invoke]; |
| | 420 | |
| | 421 | [invoke setArgument: &fileMeta atIndex: 2]; |
| | 422 | return [wait autorelease]; |
| | 423 | } |
| | 424 | |
| | 425 | - (BRLayerController *)doChangeArtwork:(SapphireFileMetaData *)fileMeta |
| | 426 | { |
| | 427 | SapphirePosterChooser *controller = [[SapphirePosterChooser alloc] initWithScene:[self scene]]; |
| | 428 | |
| | 429 | [controller setListTitle:BRLocalizedString(@"Select cover art", @"Select cover art")]; |
| | 430 | [controller setMovieTitle:@" "]; |
| | 431 | [controller setFile:fileMeta]; |
| | 432 | [controller setPosterImages:[NSImage imagesFromMovie:[fileMeta path] forArraySize:10]]; |
| | 433 | |
| | 434 | NSInvocation *invoke = [NSInvocation invocationWithMethodSignature: [self methodSignatureForSelector:@selector(loadArtwork:)]]; |
| | 435 | [invoke setSelector:@selector(loadArtwork:)]; |
| | 436 | [invoke setTarget: self]; |
| | 437 | [invoke setArgument:&fileMeta atIndex:2]; |
| | 438 | [controller setRefreshInvokation:invoke]; |
| | 439 | |
| | 440 | return [controller autorelease]; |
| | 441 | } |
| | 442 | |
| | 443 | - (BRLayerController *)doJoin:(SapphireWaitDisplay *)wait |