3 @implementation ITMTRemote
10 - (NSString *)remoteTitle
15 - (NSString *)remoteInformation
20 - (NSImage *)remoteIcon
35 - (NSString *)playerFullName
40 - (NSString *)playerSimpleName
45 - (NSDictionary *)capabilities
47 return [NSDictionary dictionaryWithObjectsAndKeys:
48 [NSNumber numberWithBool: NO], @"Remote", // Set this to YES for a valid remote, otherwise the remote will be unusable.
49 [NSNumber numberWithBool: NO], @"Basic Track Control",
50 [NSNumber numberWithBool: NO], @"Track Information",
51 [NSNumber numberWithBool: NO], @"Track Navigation",
52 [NSNumber numberWithBool: NO], @"Upcoming Songs",
53 [NSNumber numberWithBool: NO], @"Playlists",
54 [NSNumber numberWithBool: NO], @"Volume",
55 [NSNumber numberWithBool: NO], @"Shuffle",
56 [NSNumber numberWithBool: NO], @"Repeat Modes",
57 [NSNumber numberWithBool: NO], @"Equalizer",
58 [NSNumber numberWithBool: NO], @"Track Rating",
62 - (BOOL)showPrimaryInterface
67 - (BOOL)showExternalWindow
72 - (NSString*)externalWindowName
77 - (BOOL)setShuffle:(BOOL)toggle
82 - (BOOL)supportsVolume
87 - (BOOL)supportsShuffle
97 - (BOOL)setTrackProperty:(ITMTRemoteTrackProperty)property toValue:(id)value atIndex:(int)index
102 - (id)trackProperty:(ITMTRemoteTrackProperty)property atIndex:(int)index
107 - (BOOL)supportsTrackProperty:(ITMTRemoteTrackProperty)property
112 - (BOOL)supportsRepeatMode:(ITMTRemoteRepeatMode)repeatMode
117 - (BOOL)sendControlAction:(ITMTRemoteControlAction)action
122 - (BOOL)supportsControlAction:(ITMTRemoteControlAction)action
127 - (int)indexForTrack:(int)identifier inPlaylist:(int)playlistIndex
137 - (NSArray*)playlistNames
142 - (NSString*)informationString:(ITMTRemoteInformationString)string;
147 - (BOOL)switchToPlaylist:(int)playlistIndex
152 - (BOOL)switchToTrackAtIndex:(int)index
157 - (int)identifierForTrackAtIndex:(int)index inPlaylist:(int)playlistIndex
162 - (BOOL)supportsCustomEqualizer
167 - (BOOL)showEqualizerWindow
172 - (BOOL)supportsEqualizerPresets
177 - (BOOL)supportsExternalWindow
182 - (NSArray*)equalizerPresetNames
187 - (BOOL)switchToEqualizerPreset:(int)index
192 - (ITMTRemoteControlState)controlState
197 - (ITMTRemotePlaylistMode)playlistMode
202 - (NSArray *)playlists
207 - (int)numberOfSongsInPlaylistAtIndex:(int)index
212 - (int)currentPlaylistIndex
217 - (NSString *)songTitleAtIndex:(int)index
222 - (int)currentAlbumTrackCount
227 - (int)currentSongTrack
232 - (NSString *)currentSongUniqueIdentifier
237 - (int)currentSongIndex
242 - (NSString *)currentSongTitle
247 - (NSString *)currentSongArtist
252 - (NSString *)currentSongAlbum
257 - (NSString *)currentSongGenre
262 - (NSString *)currentSongLength
267 - (NSString *)currentSongRemaining
272 - (float)currentSongRating
277 - (BOOL)setCurrentSongRating:(float)rating
282 /* - (BOOL)equalizerEnabled
287 - (BOOL)setEqualizerEnabled:(BOOL)enabled
292 - (NSArray *)eqPresets
297 - (int)currentEQPresetIndex
307 - (BOOL)setVolume:(float)volume
312 - (BOOL)shuffleEnabled
317 - (BOOL)setShuffleEnabled:(BOOL)enabled
322 - (ITMTRemoteRepeatMode)repeatMode
324 return ITMTRemoteRepeatNone;
327 - (BOOL)setRepeatMode:(ITMTRemoteRepeatMode)repeatMode
347 - (BOOL)goToPreviousSong
362 - (BOOL)switchToPlaylistAtIndex:(int)index
367 - (BOOL)switchToSongAtIndex:(int)index
372 - (BOOL)switchToEQAtIndex:(int)index