Plugins/Displays/Bezel/GrowlBezelPrefs.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
     1 //
     2 //  GrowlBezelPrefs.m
     3 //  Display Plugins
     4 //
     5 //  Created by Jorge Salvador Caffarena on 14/09/04.
     6 //  Copyright 2004 Jorge Salvador Caffarena. All rights reserved.
     7 //
     8 
     9 #import "GrowlBezelPrefs.h"
    10 #import "GrowlDefinesInternal.h"
    11 
    12 @implementation GrowlBezelPrefs
    13 
    14 - (NSString *) mainNibName {
    15 	return @"GrowlBezelPrefs";
    16 }
    17 
    18 - (void) mainViewDidLoad {
    19 	[slider_opacity setAltIncrementValue:5.0];
    20 }
    21 
    22 - (void) didSelect {
    23 	SYNCHRONIZE_GROWL_PREFS();
    24 }
    25 
    26 #pragma mark -
    27 
    28 + (NSColor *) loadColor:(NSString *)key defaultColor:(NSColor *)defaultColor {
    29 	NSData *data = nil;
    30 	NSColor *color;
    31 	READ_GROWL_PREF_VALUE(key, GrowlBezelPrefDomain, NSData *, &data);
    32 	if(data)
    33 		CFMakeCollectable(data);		
    34 	if (data && [data isKindOfClass:[NSData class]]) {
    35 			color = [NSUnarchiver unarchiveObjectWithData:data];
    36 	} else {
    37 		color = defaultColor;
    38 	}
    39 	[data release];
    40 	data = nil;
    41 	
    42 	return color;
    43 }
    44 
    45 #pragma mark -
    46 
    47 - (CGFloat) opacity {
    48 	CGFloat value = BEZEL_OPACITY_DEFAULT;
    49 	READ_GROWL_PREF_FLOAT(BEZEL_OPACITY_PREF, GrowlBezelPrefDomain, &value);
    50 	return value;
    51 }
    52 
    53 - (void) setOpacity:(CGFloat)value {
    54 	WRITE_GROWL_PREF_FLOAT(BEZEL_OPACITY_PREF, value, GrowlBezelPrefDomain);
    55 	UPDATE_GROWL_PREFS();
    56 }
    57 
    58 #pragma mark -
    59 
    60 - (CGFloat) duration {
    61 	CGFloat value = 3.0;
    62 	READ_GROWL_PREF_FLOAT(GrowlBezelDuration, GrowlBezelPrefDomain, &value);
    63 	return value;
    64 }
    65 
    66 - (void) setDuration:(CGFloat)value {
    67 	WRITE_GROWL_PREF_FLOAT(GrowlBezelDuration, value, GrowlBezelPrefDomain);
    68 	UPDATE_GROWL_PREFS();
    69 }
    70 
    71 #pragma mark -
    72 
    73 - (int) size {
    74 	int value = 0;
    75 	READ_GROWL_PREF_INT(BEZEL_SIZE_PREF, GrowlBezelPrefDomain, &value);
    76 	return value;
    77 }
    78 
    79 - (void) setSize:(int)value {
    80 	WRITE_GROWL_PREF_INT(BEZEL_SIZE_PREF, value, GrowlBezelPrefDomain);
    81 	UPDATE_GROWL_PREFS();
    82 }
    83 
    84 #pragma mark -
    85 
    86 - (NSInteger) numberOfItemsInComboBox:(NSComboBox *)aComboBox {
    87 #pragma unused(aComboBox)
    88 	return [[NSScreen screens] count];
    89 }
    90 
    91 - (id) comboBox:(NSComboBox *)aComboBox objectValueForItemAtIndex:(NSInteger)idx {
    92 #pragma unused(aComboBox)
    93 #ifdef __LP64__
    94 	return [NSNumber numberWithInteger:idx];
    95 #else
    96 	return [NSNumber numberWithInt:idx];
    97 #endif
    98 }
    99 
   100 - (int) screen {
   101 	int value = 0;
   102 	READ_GROWL_PREF_INT(BEZEL_SCREEN_PREF, GrowlBezelPrefDomain, &value);
   103 	return value;
   104 }
   105 
   106 - (void) setScreen:(int)value {
   107 	WRITE_GROWL_PREF_INT(BEZEL_SCREEN_PREF, value, GrowlBezelPrefDomain);
   108 	UPDATE_GROWL_PREFS();
   109 }
   110 
   111 #pragma mark -
   112 
   113 - (int) style {
   114 	int value = 0;
   115 	READ_GROWL_PREF_INT(BEZEL_STYLE_PREF, GrowlBezelPrefDomain, &value);
   116 	return value;
   117 }
   118 
   119 - (void) setStyle:(int)value {
   120 	WRITE_GROWL_PREF_INT(BEZEL_STYLE_PREF, value, GrowlBezelPrefDomain);
   121 	UPDATE_GROWL_PREFS();
   122 }
   123 
   124 #pragma mark -
   125 
   126 - (int) position {
   127 	int value = BEZEL_POSITION_DEFAULT;
   128 	READ_GROWL_PREF_INT(BEZEL_POSITION_PREF, GrowlBezelPrefDomain, &value);
   129 	return value;
   130 }
   131 
   132 - (void) setPosition:(int)value {
   133 	WRITE_GROWL_PREF_INT(BEZEL_POSITION_PREF, value, GrowlBezelPrefDomain);
   134 	UPDATE_GROWL_PREFS();
   135 }
   136 
   137 #pragma mark -
   138 
   139 - (BOOL) shrink {
   140 	BOOL shrink = YES;
   141 	READ_GROWL_PREF_BOOL(BEZEL_SHRINK_PREF, GrowlBezelPrefDomain, &shrink);
   142 	return shrink;
   143 }
   144 
   145 - (void) setShrink:(BOOL)flag {
   146 	WRITE_GROWL_PREF_BOOL(BEZEL_SHRINK_PREF, flag, GrowlBezelPrefDomain);
   147 	UPDATE_GROWL_PREFS();
   148 }
   149 
   150 #pragma mark -
   151 
   152 - (BOOL) flip {
   153 	BOOL flip = YES;
   154 	READ_GROWL_PREF_BOOL(BEZEL_FLIP_PREF, GrowlBezelPrefDomain, &flip);
   155 	return flip;
   156 }
   157 
   158 - (void) setFlip:(BOOL)flag {
   159 	WRITE_GROWL_PREF_BOOL(BEZEL_FLIP_PREF, flag, GrowlBezelPrefDomain);
   160 	UPDATE_GROWL_PREFS();
   161 }
   162 
   163 #pragma mark -
   164 
   165 - (NSColor *) textColorVeryLow {
   166 	return [GrowlBezelPrefs loadColor:GrowlBezelVeryLowTextColor
   167 						 defaultColor:[NSColor whiteColor]];
   168 }
   169 
   170 - (void) setTextColorVeryLow:(NSColor *)value {
   171 	NSData *theData = [NSArchiver archivedDataWithRootObject:value];
   172     WRITE_GROWL_PREF_VALUE(GrowlBezelVeryLowTextColor, theData, GrowlBezelPrefDomain);
   173     UPDATE_GROWL_PREFS();
   174 }
   175 
   176 - (NSColor *) textColorModerate {
   177 	return [GrowlBezelPrefs loadColor:GrowlBezelModerateTextColor
   178 						 defaultColor:[NSColor whiteColor]];
   179 }
   180 
   181 - (void) setTextColorModerate:(NSColor *)value {
   182 	NSData *theData = [NSArchiver archivedDataWithRootObject:value];
   183     WRITE_GROWL_PREF_VALUE(GrowlBezelModerateTextColor, theData, GrowlBezelPrefDomain);
   184     UPDATE_GROWL_PREFS();
   185 }
   186 
   187 - (NSColor *) textColorNormal {
   188 	return [GrowlBezelPrefs loadColor:GrowlBezelNormalTextColor
   189 						 defaultColor:[NSColor whiteColor]];
   190 }
   191 
   192 - (void) setTextColorNormal:(NSColor *)value {
   193 	NSData *theData = [NSArchiver archivedDataWithRootObject:value];
   194     WRITE_GROWL_PREF_VALUE(GrowlBezelNormalTextColor, theData, GrowlBezelPrefDomain);
   195     UPDATE_GROWL_PREFS();
   196 }
   197 
   198 - (NSColor *) textColorHigh {
   199 	return [GrowlBezelPrefs loadColor:GrowlBezelHighTextColor
   200 						 defaultColor:[NSColor whiteColor]];
   201 }
   202 
   203 - (void) setTextColorHigh:(NSColor *)value {
   204 	NSData *theData = [NSArchiver archivedDataWithRootObject:value];
   205     WRITE_GROWL_PREF_VALUE(GrowlBezelHighTextColor, theData, GrowlBezelPrefDomain);
   206     UPDATE_GROWL_PREFS();
   207 }
   208 
   209 - (NSColor *) textColorEmergency {
   210 	return [GrowlBezelPrefs loadColor:GrowlBezelEmergencyTextColor
   211 						 defaultColor:[NSColor whiteColor]];
   212 }
   213 
   214 - (void) setTextColorEmergency:(NSColor *)value {
   215 	NSData *theData = [NSArchiver archivedDataWithRootObject:value];
   216     WRITE_GROWL_PREF_VALUE(GrowlBezelEmergencyTextColor, theData, GrowlBezelPrefDomain);
   217     UPDATE_GROWL_PREFS();
   218 }
   219 
   220 #pragma mark -
   221 
   222 - (NSColor *) backgroundColorVeryLow {
   223 	return [GrowlBezelPrefs loadColor:GrowlBezelVeryLowBackgroundColor
   224 						 defaultColor:[NSColor blackColor]];
   225 }
   226 
   227 - (void) setBackgroundColorVeryLow:(NSColor *)value {
   228 	NSData *theData = [NSArchiver archivedDataWithRootObject:value];
   229     WRITE_GROWL_PREF_VALUE(GrowlBezelVeryLowBackgroundColor, theData, GrowlBezelPrefDomain);
   230     UPDATE_GROWL_PREFS();
   231 }
   232 
   233 - (NSColor *) backgroundColorModerate {
   234 	return [GrowlBezelPrefs loadColor:GrowlBezelModerateBackgroundColor
   235 						 defaultColor:[NSColor blackColor]];
   236 }
   237 
   238 - (void) setBackgroundColorModerate:(NSColor *)value {
   239 	NSData *theData = [NSArchiver archivedDataWithRootObject:value];
   240     WRITE_GROWL_PREF_VALUE(GrowlBezelModerateBackgroundColor, theData, GrowlBezelPrefDomain);
   241     UPDATE_GROWL_PREFS();
   242 }
   243 
   244 - (NSColor *) backgroundColorNormal {
   245 	return [GrowlBezelPrefs loadColor:GrowlBezelNormalBackgroundColor
   246 						 defaultColor:[NSColor blackColor]];
   247 }
   248 
   249 - (void) setBackgroundColorNormal:(NSColor *)value {
   250 	NSData *theData = [NSArchiver archivedDataWithRootObject:value];
   251     WRITE_GROWL_PREF_VALUE(GrowlBezelNormalBackgroundColor, theData, GrowlBezelPrefDomain);
   252     UPDATE_GROWL_PREFS();
   253 }
   254 
   255 - (NSColor *) backgroundColorHigh {
   256 	return [GrowlBezelPrefs loadColor:GrowlBezelHighBackgroundColor
   257 						 defaultColor:[NSColor blackColor]];
   258 }
   259 
   260 - (void) setBackgroundColorHigh:(NSColor *)value {
   261 	NSData *theData = [NSArchiver archivedDataWithRootObject:value];
   262     WRITE_GROWL_PREF_VALUE(GrowlBezelHighBackgroundColor, theData, GrowlBezelPrefDomain);
   263     UPDATE_GROWL_PREFS();
   264 }
   265 
   266 - (NSColor *) backgroundColorEmergency {
   267 	return [GrowlBezelPrefs loadColor:GrowlBezelEmergencyBackgroundColor
   268 						 defaultColor:[NSColor blackColor]];
   269 }
   270 
   271 - (void) setBackgroundColorEmergency:(NSColor *)value {
   272 	NSData *theData = [NSArchiver archivedDataWithRootObject:value];
   273     WRITE_GROWL_PREF_VALUE(GrowlBezelEmergencyBackgroundColor, theData, GrowlBezelPrefDomain);
   274     UPDATE_GROWL_PREFS();
   275 }
   276 @end