File: PcsxrDiscHandler.m

package info (click to toggle)
pcsxr 1.9.94-2
  • links: PTS, VCS
  • area: main
  • in suites: stretch
  • size: 10,500 kB
  • ctags: 16,110
  • sloc: ansic: 117,276; objc: 8,159; cpp: 1,140; makefile: 316; asm: 145; pascal: 30; sh: 20
file content (55 lines) | stat: -rw-r--r-- 1,274 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
//
//  PcsxrDiscHandler.m
//  Pcsxr
//
//  Created by Charles Betts on 12/11/11.
//  Copyright (c) 2011 __MyCompanyName__. All rights reserved.
//

#import "PcsxrDiscHandler.h"
#import "EmuThread.h"
#include "psxcommon.h"
#include "plugins.h"
#include "cdrom.h"
#import "RecentItemsMenu.h"
#import "PcsxrController.h"

@interface PcsxrDiscHandler ()
@property (nonatomic, strong) NSURL *discURL;
@property (weak) NSString *discPath;
@end

@implementation PcsxrDiscHandler
@synthesize discURL = _discURL;
- (NSURL*)discURL
{
	if (!_discURL) {
		self.discURL = [NSURL fileURLWithPath:discPath isDirectory:NO];
	}
	return _discURL;
}

@synthesize discPath;

+ (NSArray *)supportedUTIs
{
	static NSArray *utisupport = nil;
	if (utisupport == nil) {
		utisupport = @[@"com.alcohol-soft.mdfdisc", @"com.goldenhawk.cdrwin-cuesheet", @"com.apple.disk-image-ndif", @"public.iso-image", @"com.sony.psp.firmware", @"com.codeplex.pcsxr.compressed-bin-image"];
	}
	return utisupport;
}

- (BOOL)handleFile:(NSString *)theFile
{
	self.discPath = theFile;
	PcsxrController *appDelegate = [NSApp delegate];
	if ([EmuThread active] == YES && !UsingIso()) {
		return NO;
	}
	[appDelegate runURL:[self discURL]];
	[[appDelegate recentItems] addRecentItem:[self discURL]];
	return YES;
}

@end