aboutsummaryrefslogtreecommitdiffstats
path: root/Source/SPGroupNode.m
diff options
context:
space:
mode:
Diffstat (limited to 'Source/SPGroupNode.m')
-rw-r--r--Source/SPGroupNode.m15
1 files changed, 15 insertions, 0 deletions
diff --git a/Source/SPGroupNode.m b/Source/SPGroupNode.m
index 4d90c0c1..e1a0dfb3 100644
--- a/Source/SPGroupNode.m
+++ b/Source/SPGroupNode.m
@@ -61,11 +61,25 @@ static NSString *SPGroupNodeIsExpandedKey = @"SPGroupNodeIsExpanded";
return self;
}
+- (id)initWithDictionary:(NSDictionary *)dict
+{
+ if ((self = [self initWithName:[dict objectForKey:SPFavoritesGroupNameKey]])) {
+ [self setNodeIsExpanded:[(NSNumber *)[dict objectForKey:SPFavoritesGroupIsExpandedKey] boolValue]];
+ }
+
+ return self;
+}
+
+ (SPGroupNode *)groupNodeWithName:(NSString *)name
{
return [[[self alloc] initWithName:name] autorelease];
}
++ (SPGroupNode *)groupNodeWithDictionary:(NSDictionary *)dict
+{
+ return [[[self alloc] initWithDictionary:dict] autorelease];
+}
+
#pragma mark -
#pragma mark Copying protocol methods
@@ -84,6 +98,7 @@ static NSString *SPGroupNodeIsExpandedKey = @"SPGroupNodeIsExpanded";
- (id)initWithCoder:(NSCoder *)coder
{
+#warning This is not a valid initializer.
[self setNodeName:[coder decodeObjectForKey:SPGroupNodeNameKey]];
[self setNodeIsExpanded:[[coder decodeObjectForKey:SPGroupNodeIsExpandedKey] boolValue]];