Changeset 22680
- Timestamp:
- 02/24/2008 09:59:17 PM (9 months ago)
- Files:
-
- trunk/Source/ESAddressBookIntegrationPlugin.m (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/Source/ESAddressBookIntegrationPlugin.m
r22252 r22680 31 31 #import <AIUtilities/OWAddressBookAdditions.h> 32 32 #import <AIUtilities/AIFileManagerAdditions.h> 33 #import <AIUtilities/AIImageAdditions.h> 33 34 34 35 #import "AIAddressBookUserIconSource.h" … … 346 347 ABPerson *person = [[self class] personForListObject:inObject]; 347 348 348 if (person && (person != [sharedAddressBook me])) { 349 [person setImageData:[inObject userIconData]]; 350 351 [[sharedAddressBook class] cancelPreviousPerformRequestsWithTarget:sharedAddressBook 352 selector:@selector(save) 353 object:nil]; 354 [sharedAddressBook performSelector:@selector(save) 355 withObject:nil 356 afterDelay:5.0]; 349 if (person && (person != [sharedAddressBook me])) { 350 if (person) { 351 NSData *existingABImageData = [person imageData]; 352 NSImage *existingABImage = (existingABImageData ? [[NSImage alloc] initWithData:[person imageData]] : nil); 353 NSImage *objectUserIcon = [inObject userIcon]; 354 NSData *objectUserIconData = nil; 355 356 if (!existingABImage || 357 (objectUserIcon && [(objectUserIconData = [objectUserIcon PNGRepresentation]) isEqualToData:[existingABImage PNGRepresentation]])) { 358 [person setImageData:objectUserIconData]; 359 360 361 [[sharedAddressBook class] cancelPreviousPerformRequestsWithTarget:sharedAddressBook 362 selector:@selector(save) 363 object:nil]; 364 [sharedAddressBook performSelector:@selector(save) 365 withObject:nil 366 afterDelay:5.0]; 367 } 368 } 357 369 } 358 370 } … … 506 518 //Set an icon to the address book 507 519 ABPerson *person = [[self class] personForListObject:object]; 508 509 if (person) { 510 [person setImageData:[object userIconData]]; 520 if (person) { 521 NSData *existingABImageData = [person imageData]; 522 NSImage *existingABImage = (existingABImageData ? [[NSImage alloc] initWithData:[person imageData]] : nil); 523 NSImage *objectUserIcon = [object userIcon]; 524 NSData *objectUserIconData = nil; 525 526 if (!existingABImage || 527 (objectUserIcon && [(objectUserIconData = [objectUserIcon PNGRepresentation]) isEqualToData:[existingABImage PNGRepresentation]])) { 528 [person setImageData:objectUserIconData]; 529 } 511 530 } 512 531 } … … 1181 1200 [multiValue release]; 1182 1201 } 1183 1184 1202 1185 1203 //Set the image 1186 1204 [person setImageData:[contact userIconData]];