fix some small bugs

This commit is contained in:
Antoine Mercadal committed 2010-11-05 11:32:18 +01:00
1 parent 67a41534bd
commit 6824e42c69
1 file changed
+17 -9
+17 -9
View File
@@ -370,7 +370,9 @@ var StandardUserDefaults;
- (BOOL)boolForKey:(CPString)aKey
{
var value = [self objectForKey:aKey];
if ([value respondsToSelector:@selector(boolValue)])
if (typeof(value) == "boolean")
return value;
else if ([value respondsToSelector:@selector(boolValue)])
return [value boolValue];
return NO;
@@ -407,7 +409,9 @@ var StandardUserDefaults;
- (float)floatForKey:(CPString)aKey
{
var value = [self objectForKey:aKey];
if ([value respondsToSelector:@selector(floatValue)])
if (typeof(value) == "number")
return parseFloat(value);
else if ([value respondsToSelector:@selector(floatValue)])
return [value floatValue];
return 0.0;
@@ -419,7 +423,9 @@ var StandardUserDefaults;
- (int)integerForKey:(CPString)aKey
{
var value = [self objectForKey:aKey];
if ([value respondsToSelector:@selector(intValue)])
if (typeof(value) == "number")
return parseInt(value);
else if ([value respondsToSelector:@selector(intValue)])
return [value intValue];
return 0;
@@ -431,7 +437,9 @@ var StandardUserDefaults;
- (double)doubleForKey:(CPString)aKey
{
var value = [self objectForKey:aKey];
if ([value respondsToSelector:@selector(doubleValue)])
if (typeof(value) == "number")
return parseFloat(value);
else if ([value respondsToSelector:@selector(doubleValue)])
return [value doubleValue];
return 0.0;
@@ -442,8 +450,11 @@ var StandardUserDefaults;
*/
- (CPString)stringForKey:(CPString)aKey
{
var value = [self objectForKey:aKey];
if ([value respondsToSelector:@selector(stringValue)])
var value = [self objectForKey:aKey];
if ([value class] === CPString)
return value;
else if ([value respondsToSelector:@selector(stringValue)])
return [value stringValue];
return nil;
@@ -463,9 +474,6 @@ var StandardUserDefaults;
case CPString:
return [CPURL URLWithString:value];
break;
case CPData:
return [CPURL URLWithString:value];
break;
default:
return nil;
}