@implementation VLCEyeTVController
+@synthesize eyeTVRunning = b_eyeTVactive, deviceConnected = b_deviceConnected;
+
static VLCEyeTVController *_o_sharedInstance = nil;
+ (VLCEyeTVController *)sharedInstance
return _o_sharedInstance ? _o_sharedInstance : [[self alloc] init];
}
-- (id)init
+- (id)init
{
- if (_o_sharedInstance) {
+ if (_o_sharedInstance)
[self dealloc];
- } else {
+ else {
_o_sharedInstance = [super init];
[[NSDistributedNotificationCenter defaultCenter]
object: @"VLCEyeTVSupport"
suspensionBehavior: NSNotificationSuspensionBehaviorDeliverImmediately];
}
-
+
return _o_sharedInstance;
}
- (void)globalNotificationReceived: (NSNotification *)theNotification
{
/* update our info on the used device */
- if( [[theNotification name] isEqualToString: @"DeviceAdded"] )
+ if ([[theNotification name] isEqualToString: @"DeviceAdded"])
b_deviceConnected = YES;
- if( [[theNotification name] isEqualToString: @"DeviceRemoved"] )
+ if ([[theNotification name] isEqualToString: @"DeviceRemoved"])
b_deviceConnected = NO;
/* is eyetv running? */
- if( [[theNotification name] isEqualToString: @"PluginInit"] )
+ if ([[theNotification name] isEqualToString: @"PluginInit"])
b_eyeTVactive = YES;
- if( [[theNotification name] isEqualToString: @"PluginQuit"] )
+ if ([[theNotification name] isEqualToString: @"PluginQuit"])
b_eyeTVactive = NO;
}
-- (BOOL)isEyeTVrunning
-{
- return b_eyeTVactive;
-}
-
-- (BOOL)isDeviceConnected
-{
- return b_deviceConnected;
-}
-
-
- (void)launchEyeTV
{
NSAppleScript *script = [[NSAppleScript alloc] initWithSource:
"end tell"];
NSDictionary *errorDict;
NSAppleEventDescriptor *descriptor = [script executeAndReturnError:&errorDict];
- if( nil == descriptor )
- {
+ if (nil == descriptor) {
NSString *errorString = [errorDict objectForKey:NSAppleScriptErrorMessage];
- NSLog( @"opening EyeTV failed with error status '%@'", errorString );
+ NSLog(@"opening EyeTV failed with error status '%@'", errorString);
}
[script release];
}
-- (int)currentChannel
+- (int)channel
{
int currentChannel = 0;
NSAppleScript *script = [[NSAppleScript alloc] initWithSource:
@"tell application \"EyeTV\" to get current channel"];
NSDictionary *errorDict;
NSAppleEventDescriptor *descriptor = [script executeAndReturnError:&errorDict];
- if( nil == descriptor )
- {
+ if (nil == descriptor) {
NSString *errorString = [errorDict objectForKey:NSAppleScriptErrorMessage];
- NSLog( @"EyeTV channel inventory failed with error status '%@'", errorString );
- }
- else
- {
+ NSLog(@"EyeTV channel inventory failed with error status '%@'", errorString);
+ } else
currentChannel = (int)[descriptor int32Value];
- }
[script release];
return currentChannel;
}
NSDictionary *errorDict;
NSAppleEventDescriptor *descriptor;
- if( b_yesOrNo == YES )
- {
+ if (b_yesOrNo == YES) {
script = [[NSAppleScript alloc] initWithSource:
@"tell application \"EyeTV\"\n"
"channel_up\n"
"get current channel\n"
"end tell"];
- NSLog( @"telling eyetv to switch 1 channel up" );
- }
- else
- {
+ NSLog(@"telling eyetv to switch 1 channel up");
+ } else {
script = [[NSAppleScript alloc] initWithSource:
@"tell application \"EyeTV\"\n"
"channel_down\n"
"get current channel\n"
"end tell"];
- NSLog( @"telling eyetv to switch 1 channel down" );
+ NSLog(@"telling eyetv to switch 1 channel down");
}
-
+
descriptor = [script executeAndReturnError:&errorDict];
- if( nil == descriptor )
- {
+ if (nil == descriptor) {
NSString *errorString = [errorDict objectForKey:NSAppleScriptErrorMessage];
- NSLog( @"EyeTV channel change failed with error status '%@'", errorString );
- }
- else
- {
+ NSLog(@"EyeTV channel change failed with error status '%@'", errorString);
+ } else
currentChannel = (int)[descriptor int32Value];
- }
+
[script release];
return currentChannel;
}
-- (void)selectChannel: (int)theChannelNum
+- (void)setChannel: (int)theChannelNum
{
NSAppleScript *script;
- switch( theChannelNum )
- {
+ switch(theChannelNum) {
case -2: // Composite
script = [[NSAppleScript alloc] initWithSource:
@"tell application \"EyeTV\"\n"
"end tell"];
break;
default:
- if( theChannelNum > 0 )
- {
+ if (theChannelNum > 0) {
NSString *channel_change = [NSString stringWithFormat:
@"tell application \"EyeTV\"\n"
" channel_change channel number %d\n"
}
NSDictionary *errorDict;
NSAppleEventDescriptor *descriptor = [script executeAndReturnError:&errorDict];
- if( nil == descriptor )
- {
+ if (nil == descriptor) {
NSString *errorString = [errorDict objectForKey:NSAppleScriptErrorMessage];
- NSLog( @"EyeTV source change failed with error status '%@'", errorString );
+ NSLog(@"EyeTV source change failed with error status '%@'", errorString);
}
[script release];
}
@"tell application \"EyeTV\" to get name of every channel"];
NSDictionary *errorDict;
NSAppleEventDescriptor *descriptor = [script executeAndReturnError:&errorDict];
- if( nil == descriptor )
- {
+ if (nil == descriptor) {
NSString *errorString = [errorDict objectForKey:NSAppleScriptErrorMessage];
- NSLog( @"EyeTV channel inventory failed with error status '%@'", errorString );
- }
- else
- {
+ NSLog(@"EyeTV channel inventory failed with error status '%@'", errorString);
+ } else {
int count = [descriptor numberOfItems];
- int x=0;
+ int x=0;
NSMutableArray *channelArray = [NSMutableArray arrayWithCapacity:count];
- while( x++ < count ) {
+ while(x++ < count)
[channelArray addObject:[[descriptor descriptorAtIndex:x] stringValue]];
- }
+
channels = [channelArray objectEnumerator];
}
[script release];