X-Git-Url: https://git.yukkurigames.com/?p=enjoyable.git;a=blobdiff_plain;f=Categories%2FNSMenu%2BRepresentedObjectAccessors.m;h=6d1c9694ad6c94ba8c2bb176d8e278f805a5ca70;hp=a63f083aa1eac1715e7ea4c2f7ded23c72cdb9c8;hb=71c958acabb545ef231ad100ef6410834cac3c23;hpb=0064c1fbff36795885a9724081af2a17d83c20a3 diff --git a/Categories/NSMenu+RepresentedObjectAccessors.m b/Categories/NSMenu+RepresentedObjectAccessors.m index a63f083..6d1c969 100644 --- a/Categories/NSMenu+RepresentedObjectAccessors.m +++ b/Categories/NSMenu+RepresentedObjectAccessors.m @@ -17,10 +17,11 @@ return nil; } -- (void)removeItemWithRepresentedObject:(id)object { - NSInteger idx = [self indexOfItemWithRepresentedObject:object]; - if (idx != -1) - [self removeItemAtIndex:idx]; +- (NSMenuItem *)itemWithIdenticalRepresentedObject:(id)object { + for (NSMenuItem *item in self.itemArray) + if (item.representedObject == object) + return item; + return nil; } - (NSMenuItem *)lastItem { @@ -40,9 +41,18 @@ return [self.menu itemWithRepresentedObject:object]; } +- (NSMenuItem *)itemWithIdenticalRepresentedObject:(id)object { + return [self.menu itemWithIdenticalRepresentedObject:object]; +} + - (void)selectItemWithRepresentedObject:(id)object { [self selectItemAtIndex:[self indexOfItemWithRepresentedObject:object]]; } +- (void)selectItemWithIdenticalRepresentedObject:(id)object { + NSMenuItem *item = [self.menu itemWithIdenticalRepresentedObject:object]; + [self selectItem:item]; +} + @end