Plugins/Displays/MusicVideo/GrowlMusicVideoPrefs.m
author Rudy Richter
Sat Aug 01 20:43:39 2009 -0400 (2009-08-01)
changeset 4259 0e9b6b0b1e25
parent 4246 4f52d1d98978
child 4858 ec71a469e0b8
permissions -rw-r--r--
Plugins: clang warnings
boredzo@2402
     1
//
boredzo@2402
     2
//  GrowlMusicVideoPrefs.m
boredzo@2402
     3
//  Display Plugins
boredzo@2402
     4
//
boredzo@2402
     5
//  Created by Jorge Salvador Caffarena on 14/09/04.
boredzo@2402
     6
//  Copyright 2004 Jorge Salvador Caffarena. All rights reserved.
boredzo@2402
     7
//
boredzo@2402
     8
boredzo@2402
     9
#import "GrowlMusicVideoPrefs.h"
boredzo@2402
    10
#import "GrowlDefinesInternal.h"
boredzo@2402
    11
boredzo@2402
    12
@implementation GrowlMusicVideoPrefs
boredzo@2402
    13
boredzo@2402
    14
- (NSString *) mainNibName {
boredzo@2402
    15
	return @"GrowlMusicVideoPrefs";
boredzo@2402
    16
}
boredzo@2402
    17
boredzo@2402
    18
- (void) mainViewDidLoad {
boredzo@2402
    19
	[slider_opacity setAltIncrementValue:5.0];
boredzo@2402
    20
}
boredzo@2402
    21
boredzo@2402
    22
- (void) didSelect {
boredzo@2402
    23
	SYNCHRONIZE_GROWL_PREFS();
boredzo@2402
    24
}
boredzo@2402
    25
boredzo@2402
    26
#pragma mark -
boredzo@2402
    27
boredzo@2402
    28
+ (NSColor *) loadColor:(NSString *)key defaultColor:(NSColor *)defaultColor {
boredzo@2402
    29
	NSData *data = nil;
boredzo@2402
    30
	NSColor *color;
rudy@2814
    31
	READ_GROWL_PREF_VALUE(key, GrowlMusicVideoPrefDomain, NSData *, &data);
Rudy@4259
    32
	if(data)
Rudy@4259
    33
		CFMakeCollectable(data);
Rudy@4259
    34
	
boredzo@2402
    35
	if (data && [data isKindOfClass:[NSData class]]) {
boredzo@2402
    36
		color = [NSUnarchiver unarchiveObjectWithData:data];
boredzo@2402
    37
	} else {
boredzo@2402
    38
		color = defaultColor;
boredzo@2402
    39
	}
boredzo@2402
    40
	[data release];
boredzo@2402
    41
boredzo@2402
    42
	return color;
boredzo@2402
    43
}
boredzo@2402
    44
boredzo@2402
    45
#pragma mark Accessors
boredzo@2402
    46
Rudy@4246
    47
- (CGFloat) duration {
Rudy@4246
    48
	CGFloat value = GrowlMusicVideoDurationPrefDefault;
rudy@2814
    49
	READ_GROWL_PREF_FLOAT(MUSICVIDEO_DURATION_PREF, GrowlMusicVideoPrefDomain, &value);
boredzo@2402
    50
	return value;
boredzo@2402
    51
}
Rudy@4246
    52
- (void) setDuration:(CGFloat)value {
rudy@2814
    53
	WRITE_GROWL_PREF_FLOAT(MUSICVIDEO_DURATION_PREF, value, GrowlMusicVideoPrefDomain);
boredzo@2402
    54
	UPDATE_GROWL_PREFS();
boredzo@2402
    55
}
boredzo@2402
    56
boredzo@2402
    57
- (unsigned) effect {
boredzo@2402
    58
	int effect = 0;
rudy@2814
    59
	READ_GROWL_PREF_INT(MUSICVIDEO_EFFECT_PREF, GrowlMusicVideoPrefDomain, &effect);
boredzo@2402
    60
	switch (effect) {
boredzo@2402
    61
		default:
boredzo@2402
    62
			effect = MUSICVIDEO_EFFECT_SLIDE;
rudy@3282
    63
			
boredzo@2402
    64
		case MUSICVIDEO_EFFECT_SLIDE:
boredzo@2402
    65
		case MUSICVIDEO_EFFECT_WIPE:
rudy@3282
    66
		case MUSICVIDEO_EFFECT_FADING:
boredzo@2402
    67
			;
rudy@3282
    68
		
boredzo@2402
    69
	}
boredzo@2402
    70
	return (unsigned)effect;
boredzo@2402
    71
}
boredzo@2402
    72
- (void) setEffect:(unsigned)newEffect {
boredzo@2402
    73
	switch (newEffect) {
boredzo@2402
    74
		default:
boredzo@2402
    75
			NSLog(@"(Music Video) Invalid effect number %u (slide is %u; wipe is %u)", newEffect, MUSICVIDEO_EFFECT_SLIDE, MUSICVIDEO_EFFECT_WIPE);
boredzo@2402
    76
			break;
boredzo@2402
    77
boredzo@2402
    78
		case MUSICVIDEO_EFFECT_SLIDE:
boredzo@2402
    79
		case MUSICVIDEO_EFFECT_WIPE:
rudy@3282
    80
		case MUSICVIDEO_EFFECT_FADING:
rudy@2814
    81
			WRITE_GROWL_PREF_INT(MUSICVIDEO_EFFECT_PREF, newEffect, GrowlMusicVideoPrefDomain);
boredzo@2402
    82
			UPDATE_GROWL_PREFS();
boredzo@2402
    83
	}
boredzo@2402
    84
}
boredzo@2402
    85
Rudy@4246
    86
- (CGFloat) opacity {
Rudy@4246
    87
	CGFloat value = MUSICVIDEO_DEFAULT_OPACITY;
rudy@2814
    88
	READ_GROWL_PREF_FLOAT(MUSICVIDEO_OPACITY_PREF, GrowlMusicVideoPrefDomain, &value);
boredzo@2402
    89
	return value;
boredzo@2402
    90
}
Rudy@4246
    91
- (void) setOpacity:(CGFloat)value {
rudy@2814
    92
	WRITE_GROWL_PREF_FLOAT(MUSICVIDEO_OPACITY_PREF, value, GrowlMusicVideoPrefDomain);
boredzo@2402
    93
	UPDATE_GROWL_PREFS();
boredzo@2402
    94
}
boredzo@2402
    95
boredzo@2402
    96
- (int) size {
boredzo@2402
    97
	int value = 0;
rudy@2814
    98
	READ_GROWL_PREF_INT(MUSICVIDEO_SIZE_PREF, GrowlMusicVideoPrefDomain, &value);
boredzo@2402
    99
	return value;
boredzo@2402
   100
}
boredzo@2402
   101
- (void) setSize:(int)value {
rudy@2814
   102
	WRITE_GROWL_PREF_INT(MUSICVIDEO_SIZE_PREF, value, GrowlMusicVideoPrefDomain);
boredzo@2402
   103
	UPDATE_GROWL_PREFS();
boredzo@2402
   104
}
boredzo@2402
   105
boredzo@2402
   106
#pragma mark Combo box support
boredzo@2402
   107
Rudy@4246
   108
- (NSInteger) numberOfItemsInComboBox:(NSComboBox *)aComboBox {
boredzo@2402
   109
#pragma unused(aComboBox)
boredzo@2402
   110
	return [[NSScreen screens] count];
boredzo@2402
   111
}
boredzo@2402
   112
Rudy@4246
   113
- (id) comboBox:(NSComboBox *)aComboBox objectValueForItemAtIndex:(NSInteger)idx {
boredzo@2402
   114
#pragma unused(aComboBox)
Rudy@4246
   115
#ifdef __LP64__
Rudy@4246
   116
	return [NSNumber numberWithInteger:idx];
Rudy@4246
   117
#else
boredzo@2402
   118
	return [NSNumber numberWithInt:idx];
Rudy@4246
   119
#endif
boredzo@2402
   120
}
boredzo@2402
   121
boredzo@2402
   122
- (int) screen {
boredzo@2402
   123
	int value = 0;
rudy@2814
   124
	READ_GROWL_PREF_INT(MUSICVIDEO_SCREEN_PREF, GrowlMusicVideoPrefDomain, &value);
boredzo@2402
   125
	return value;
boredzo@2402
   126
}
boredzo@2402
   127
- (void) setScreen:(int)value {
rudy@2814
   128
	WRITE_GROWL_PREF_INT(MUSICVIDEO_SCREEN_PREF, value, GrowlMusicVideoPrefDomain);
boredzo@2402
   129
	UPDATE_GROWL_PREFS();
boredzo@2402
   130
}
boredzo@2402
   131
boredzo@2402
   132
- (NSColor *) textColorVeryLow {
boredzo@2402
   133
	return [GrowlMusicVideoPrefs loadColor:GrowlMusicVideoVeryLowTextColor
boredzo@2402
   134
							  defaultColor:[NSColor whiteColor]];
boredzo@2402
   135
}
boredzo@2402
   136
boredzo@2402
   137
- (void) setTextColorVeryLow:(NSColor *)value {
boredzo@2402
   138
	NSData *theData = [NSArchiver archivedDataWithRootObject:value];
rudy@2814
   139
    WRITE_GROWL_PREF_VALUE(GrowlMusicVideoVeryLowTextColor, theData, GrowlMusicVideoPrefDomain);
boredzo@2402
   140
    UPDATE_GROWL_PREFS();
boredzo@2402
   141
}
boredzo@2402
   142
boredzo@2402
   143
- (NSColor *) textColorModerate {
boredzo@2402
   144
	return [GrowlMusicVideoPrefs loadColor:GrowlMusicVideoModerateTextColor
boredzo@2402
   145
							  defaultColor:[NSColor whiteColor]];
boredzo@2402
   146
}
boredzo@2402
   147
boredzo@2402
   148
- (void) setTextColorModerate:(NSColor *)value {
boredzo@2402
   149
	NSData *theData = [NSArchiver archivedDataWithRootObject:value];
rudy@2814
   150
    WRITE_GROWL_PREF_VALUE(GrowlMusicVideoModerateTextColor, theData, GrowlMusicVideoPrefDomain);
boredzo@2402
   151
    UPDATE_GROWL_PREFS();
boredzo@2402
   152
}
boredzo@2402
   153
boredzo@2402
   154
- (NSColor *) textColorNormal {
boredzo@2402
   155
	return [GrowlMusicVideoPrefs loadColor:GrowlMusicVideoNormalTextColor
boredzo@2402
   156
							  defaultColor:[NSColor whiteColor]];
boredzo@2402
   157
}
boredzo@2402
   158
boredzo@2402
   159
- (void) setTextColorNormal:(NSColor *)value {
boredzo@2402
   160
	NSData *theData = [NSArchiver archivedDataWithRootObject:value];
rudy@2814
   161
    WRITE_GROWL_PREF_VALUE(GrowlMusicVideoNormalTextColor, theData, GrowlMusicVideoPrefDomain);
boredzo@2402
   162
    UPDATE_GROWL_PREFS();
boredzo@2402
   163
}
boredzo@2402
   164
boredzo@2402
   165
- (NSColor *) textColorHigh {
boredzo@2402
   166
	return [GrowlMusicVideoPrefs loadColor:GrowlMusicVideoHighTextColor
boredzo@2402
   167
							  defaultColor:[NSColor whiteColor]];
boredzo@2402
   168
}
boredzo@2402
   169
boredzo@2402
   170
- (void) setTextColorHigh:(NSColor *)value {
boredzo@2402
   171
	NSData *theData = [NSArchiver archivedDataWithRootObject:value];
rudy@2814
   172
    WRITE_GROWL_PREF_VALUE(GrowlMusicVideoHighTextColor, theData, GrowlMusicVideoPrefDomain);
boredzo@2402
   173
    UPDATE_GROWL_PREFS();
boredzo@2402
   174
}
boredzo@2402
   175
boredzo@2402
   176
- (NSColor *) textColorEmergency {
boredzo@2402
   177
	return [GrowlMusicVideoPrefs loadColor:GrowlMusicVideoEmergencyTextColor
boredzo@2402
   178
							  defaultColor:[NSColor whiteColor]];
boredzo@2402
   179
}
boredzo@2402
   180
boredzo@2402
   181
- (void) setTextColorEmergency:(NSColor *)value {
boredzo@2402
   182
	NSData *theData = [NSArchiver archivedDataWithRootObject:value];
rudy@2814
   183
    WRITE_GROWL_PREF_VALUE(GrowlMusicVideoEmergencyTextColor, theData, GrowlMusicVideoPrefDomain);
boredzo@2402
   184
    UPDATE_GROWL_PREFS();
boredzo@2402
   185
}
boredzo@2402
   186
boredzo@2402
   187
- (NSColor *) backgroundColorVeryLow {
boredzo@2402
   188
	return [GrowlMusicVideoPrefs loadColor:GrowlMusicVideoVeryLowBackgroundColor
boredzo@2402
   189
							  defaultColor:[NSColor blackColor]];
boredzo@2402
   190
}
boredzo@2402
   191
boredzo@2402
   192
- (void) setBackgroundColorVeryLow:(NSColor *)value {
boredzo@2402
   193
	NSData *theData = [NSArchiver archivedDataWithRootObject:value];
rudy@2814
   194
    WRITE_GROWL_PREF_VALUE(GrowlMusicVideoVeryLowBackgroundColor, theData, GrowlMusicVideoPrefDomain);
boredzo@2402
   195
    UPDATE_GROWL_PREFS();
boredzo@2402
   196
}
boredzo@2402
   197
boredzo@2402
   198
- (NSColor *) backgroundColorModerate {
boredzo@2402
   199
	return [GrowlMusicVideoPrefs loadColor:GrowlMusicVideoModerateBackgroundColor
boredzo@2402
   200
							  defaultColor:[NSColor blackColor]];
boredzo@2402
   201
}
boredzo@2402
   202
boredzo@2402
   203
- (void) setBackgroundColorModerate:(NSColor *)value {
boredzo@2402
   204
	NSData *theData = [NSArchiver archivedDataWithRootObject:value];
rudy@2814
   205
    WRITE_GROWL_PREF_VALUE(GrowlMusicVideoModerateBackgroundColor, theData, GrowlMusicVideoPrefDomain);
boredzo@2402
   206
    UPDATE_GROWL_PREFS();
boredzo@2402
   207
}
boredzo@2402
   208
boredzo@2402
   209
- (NSColor *) backgroundColorNormal {
boredzo@2402
   210
	return [GrowlMusicVideoPrefs loadColor:GrowlMusicVideoNormalBackgroundColor
boredzo@2402
   211
						 defaultColor:[NSColor blackColor]];
boredzo@2402
   212
}
boredzo@2402
   213
boredzo@2402
   214
- (void) setBackgroundColorNormal:(NSColor *)value {
boredzo@2402
   215
	NSData *theData = [NSArchiver archivedDataWithRootObject:value];
rudy@2814
   216
    WRITE_GROWL_PREF_VALUE(GrowlMusicVideoNormalBackgroundColor, theData, GrowlMusicVideoPrefDomain);
boredzo@2402
   217
    UPDATE_GROWL_PREFS();
boredzo@2402
   218
}
boredzo@2402
   219
boredzo@2402
   220
- (NSColor *) backgroundColorHigh {
boredzo@2402
   221
	return [GrowlMusicVideoPrefs loadColor:GrowlMusicVideoHighBackgroundColor
boredzo@2402
   222
							  defaultColor:[NSColor blackColor]];
boredzo@2402
   223
}
boredzo@2402
   224
boredzo@2402
   225
- (void) setBackgroundColorHigh:(NSColor *)value {
boredzo@2402
   226
	NSData *theData = [NSArchiver archivedDataWithRootObject:value];
rudy@2814
   227
    WRITE_GROWL_PREF_VALUE(GrowlMusicVideoHighBackgroundColor, theData, GrowlMusicVideoPrefDomain);
boredzo@2402
   228
    UPDATE_GROWL_PREFS();
boredzo@2402
   229
}
boredzo@2402
   230
boredzo@2402
   231
- (NSColor *) backgroundColorEmergency {
boredzo@2402
   232
	return [GrowlMusicVideoPrefs loadColor:GrowlMusicVideoEmergencyBackgroundColor
boredzo@2402
   233
							  defaultColor:[NSColor blackColor]];
boredzo@2402
   234
}
boredzo@2402
   235
boredzo@2402
   236
- (void) setBackgroundColorEmergency:(NSColor *)value {
boredzo@2402
   237
	NSData *theData = [NSArchiver archivedDataWithRootObject:value];
rudy@2814
   238
    WRITE_GROWL_PREF_VALUE(GrowlMusicVideoEmergencyBackgroundColor, theData, GrowlMusicVideoPrefDomain);
boredzo@2402
   239
    UPDATE_GROWL_PREFS();
boredzo@2402
   240
}
boredzo@2402
   241
@end