X-Git-Url: http://git.ithinksw.org/MenuTunes.git/blobdiff_plain/97a58d16b59657d99b396a9d7e3ef2eadb357fa8..refs/heads/master:/StatusWindowController.h diff --git a/StatusWindowController.h b/StatusWindowController.h index 804c090..a3d85d3 100755 --- a/StatusWindowController.h +++ b/StatusWindowController.h @@ -1,55 +1,76 @@ /* * MenuTunes - * StatusWindowController - * Abstraction layer between MainController and StatusWindow + * StatusWindowController.h * - * Original Author : Matthew Judy - * Responsibility : Matthew Judy + * Abstraction layer between MainController and StatusWindow. * - * Copyright (c) 2003 iThink Software. - * All Rights Reserved + * Copyright (c) 2003 iThink Software * */ - #import #import "ITMTRemote.h" - - -@class StatusWindow; +#import "StatusWindow.h" typedef enum { - MTStatusWindowLoopModeLoopNone, - MTStatusWindowLoopModeLoopOne, - MTStatusWindowLoopModeLoopAll -} MTStatusWindowLoopMode; + StatusWindowRepeatNone = -1, + StatusWindowRepeatGroup, + StatusWindowRepeatTrack +} StatusWindowRepeatMode; typedef enum { - MTStatusWindowShuffleModeOn, - MTStatusWindowShuffleModeOff -} MTStatusWindowShuffleMode; - + StatusWindowNoType = -1, + StatusWindowTrackInfoType, + StatusWindowAlbumArtType, + StatusWindowUpcomingSongsType, + StatusWindowVolumeType, + StatusWindowRatingType, + StatusWindowRepeatType, + StatusWindowShuffleType, + StatusWindowShufflabilityType, + StatusWindowSetupType, + StatusWindowNetworkType, + StatusWindowPreferencesType, + StatusWindowDebugType +} StatusWindowType; @interface StatusWindowController : NSObject { - StatusWindow *_window; + StatusWindow *_window; NSUserDefaults *df; + NSRange _timeRange; + StatusWindowType _currentType; } -- (void)showSongWindowWithTitle: (NSString *)title - album: (NSString *)album - artist: (NSString *)artist - time: (NSString *)time // FLOW: Should probably be NSDate or something. - trackNumber: (int)trackNumber - trackTotal: (int)trackTotal - rating: (int)rating - source:(ITMTRemotePlayerSource)source; - -- (void)showUpcomingSongsWithTitles:(NSArray *)titleStrings; - -- (void)showVolumeWindowWithLevel:(int)level; -- (void)showRatingWindowWithLevel:(int)level; -- (void)showShuffleWindowWithMode:(MTStatusWindowShuffleMode)mode; -- (void)showLoopWindowWithMode:(MTStatusWindowLoopMode)mode; ++ (StatusWindowController *)sharedController; + +- (void)showUpcomingSongsWindowWithTitles:(NSArray *)titleStrings; + +- (void)showVolumeWindowWithLevel:(float)level; +- (void)showRatingWindowWithRating:(float)rating; +- (void)showShuffleWindow:(BOOL)shuffle; +- (void)showRepeatWindowWithMode:(StatusWindowRepeatMode)mode; +- (void)showSongShufflabilityWindow:(BOOL)shufflable; +- (void)showSetupQueryWindow; +- (void)showReconnectQueryWindow; +- (void)showNetworkErrorQueryWindow; +- (void)showPreferencesUpdateWindow; +- (void)showDebugModeEnabledWindow; + +- (void)showAlbumArtWindowWithImage:(NSImage *)image; +- (void)showAlbumArtWindowWithErrorText:(NSString *)string; +- (void)showSongInfoWindowWithSource:(ITMTRemotePlayerSource)source + title: (NSString *)title + album: (NSString *)album + artist: (NSString *)artist + composer: (NSString *)composer + time: (NSString *)time // FLOW: Should probably be NSDate or something. + track: (NSString *)track + rating: (int)rating + playCount: (int)playCount + image: (NSImage *)art; + +- (StatusWindowType)currentStatusWindowType; +- (void)updateTime:(NSString *)time; @end