hi,
i'm writting a menu Plugin in order to update fields, i have difficulties with 2 fields :
1/
releaseDate : I can't read de value for the key : the value is always empty (not nil), and i got an error if a try to change it:
NSString *oldValueForKey = [[entries objectAtIndex:i] objectForKey:@"releaseDate"]; // is always empty
[[entries objectAtIndex:i] setValue:newValueForKey forKey:@"releaseDate]; // the program crash
2/
I don't understand how is it possible to change the image cover, of course i read your explanation
"setImagePath: sends the path location of images in case your menuCommand works with images. You must retain this value to use in your menuCommandFor: method.
The NSDictionaries contain a value called "Image" that contains the name of the image file located in this folder for that particular entry. This file may contain a blank gif image of 1x1."
but: the key "Image" doesn't existe for the NSMutableDictionary entries
and i don't really understand how i have to use setImagePath:
Could you provide me an example about how change the cover, it will be great !
Thanks for all !
Question about field modification with menucommandfor metho
Re: Question about field modification with menucommandfor metho
The "releaseDate" is a NSDate type object, when changing it be sure to set it as a NSDate object as well, you can use an NSDateFormatter dateFromString: if you need to translate from a string.
The image part is my fault I need to update those methods. But use the "uid" for the entry and look in the Covers folder to identify or change the image. (The image path function is actually not relevant any more. Use the following:)
Code: Select all
NSDate *oldValueForKey = [[entries objectAtIndex:i] objectForKey:@"releaseDate"];
NSLog(@"%@", oldValueForKey);
Code: Select all
NSString *imagePath = [@"~/Library/Application Support/Covers" stringByExpandingTildeInPath]; // This would be the default location
NSString *entryUID = [[entries objectAtIndex:i] objectForKey:@"uid"];
NSString *localImagePath = [NSString stringWithFormat:@"%@/Covers/%d.jpg", imagePath, [entryUID intValue]];
// Updating the cover from a NSImage called coverImage
[[[NSBitmapImageRep imageRepWithData:[coverImage TIFFRepresentation]] representationUsingType:NSJPEGFileType properties:[NSDictionary dictionaryWithObject:[NSDecimalNumber numberWithFloat:1.0] forKey:NSImageCompressionFactor]] writeToFile:localImagePath atomically:NO];