2013-11-11 16:49:58 +01:00
|
|
|
/*
|
2015-03-24 15:44:50 +01:00
|
|
|
Copyright (C) 2007-2015 Inverse inc.
|
2013-11-11 16:49:58 +01:00
|
|
|
|
|
|
|
This file is part of SOGo.
|
|
|
|
|
|
|
|
SOGo is free software; you can redistribute it and/or modify it under
|
|
|
|
the terms of the GNU Lesser General Public License as published by the
|
|
|
|
Free Software Foundation; either version 2, or (at your option) any
|
|
|
|
later version.
|
|
|
|
|
|
|
|
SOGo is distributed in the hope that it will be useful, but WITHOUT ANY
|
|
|
|
WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
|
|
|
FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
|
|
|
|
License for more details.
|
|
|
|
|
|
|
|
You should have received a copy of the GNU Lesser General Public
|
|
|
|
License along with OGo; see the file COPYING. If not, write to the
|
|
|
|
Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
|
|
|
|
02111-1307, USA.
|
|
|
|
*/
|
|
|
|
|
|
|
|
#import "SOGoMailLabel.h"
|
|
|
|
|
|
|
|
#import <Foundation/NSDictionary.h>
|
|
|
|
|
|
|
|
@implementation SOGoMailLabel
|
|
|
|
|
|
|
|
- (id) initWithName: (NSString *) theName
|
|
|
|
label: (NSString *) theLabel
|
|
|
|
color: (NSString *) theColor
|
|
|
|
{
|
|
|
|
self = [super init];
|
|
|
|
|
|
|
|
if (self)
|
|
|
|
{
|
|
|
|
ASSIGN(_name, theName);
|
|
|
|
ASSIGN(_label, theLabel);
|
|
|
|
ASSIGN(_color, theColor);
|
|
|
|
}
|
|
|
|
return self;
|
|
|
|
}
|
|
|
|
|
|
|
|
- (void) dealloc
|
|
|
|
{
|
|
|
|
RELEASE(_name);
|
|
|
|
RELEASE(_label);
|
|
|
|
RELEASE(_color);
|
|
|
|
[super dealloc];
|
|
|
|
}
|
|
|
|
|
|
|
|
- (NSString *) name
|
|
|
|
{
|
|
|
|
return _name;
|
|
|
|
}
|
|
|
|
|
|
|
|
- (NSString *) label
|
|
|
|
{
|
|
|
|
return _label;
|
|
|
|
}
|
|
|
|
|
|
|
|
- (NSString *) color
|
|
|
|
{
|
|
|
|
return _color;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
+ (NSArray *) labelsFromDefaults: (NSDictionary *) theDefaults
|
2015-04-03 23:37:46 +02:00
|
|
|
component: (id) theComponent
|
2013-11-11 16:49:58 +01:00
|
|
|
{
|
|
|
|
NSMutableArray *allLabels, *allKeys;
|
|
|
|
NSString *key, *name;
|
|
|
|
SOGoMailLabel *label;
|
|
|
|
NSArray *values;
|
|
|
|
int i;
|
|
|
|
|
|
|
|
allLabels = [NSMutableArray array];
|
|
|
|
allKeys = [[theDefaults allKeys] sortedArrayUsingSelector: @selector (caseInsensitiveCompare:)];
|
|
|
|
|
|
|
|
for (i = 0; i < [allKeys count]; i++)
|
|
|
|
{
|
|
|
|
key = [allKeys objectAtIndex: i];
|
|
|
|
values = [theDefaults objectForKey: key];
|
2013-11-22 20:39:24 +01:00
|
|
|
name = [theComponent commonLabelForKey: [values objectAtIndex: 0]];
|
2013-11-11 16:49:58 +01:00
|
|
|
label = [[self alloc] initWithName: key
|
|
|
|
label: name
|
|
|
|
color: [values objectAtIndex: 1]];
|
|
|
|
[allLabels addObject: label];
|
|
|
|
RELEASE(label);
|
|
|
|
}
|
|
|
|
|
|
|
|
return allLabels;
|
|
|
|
}
|
|
|
|
|
|
|
|
@end
|