X-Git-Url: http://git.ithinksw.org/MenuTunes.git/blobdiff_plain/b936ca5ffb6320a3febce6a7d0c2875b072ac6bc..refs/heads/master:/StatusWindowController.h diff --git a/StatusWindowController.h b/StatusWindowController.h index 9f474b5..a3d85d3 100755 --- a/StatusWindowController.h +++ b/StatusWindowController.h @@ -1,52 +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 - - -@class StatusWindow; +#import "ITMTRemote.h" +#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; ++ (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)showUpcomingSongsWithTitles:(NSArray *)titleStrings; +- (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; -- (void)showVolumeWindowWithLevel:(int)level; -- (void)showRatingWindowWithLevel:(int)level; -- (void)showShuffleWindowWithMode:(MTStatusWindowShuffleMode)mode; -- (void)showLoopWindowWithMode:(MTStatusWindowLoopMode)mode; +- (StatusWindowType)currentStatusWindowType; +- (void)updateTime:(NSString *)time; @end