* Source/GSThemeDrawing.m (-drawTableViewRect:inView:): Use

correct imp type.
        * Source/NSButtonCell.m (-setBackgroundColor:): Update the
        control view.
        * Source/NSSegmentedCell.m (-drawSegment:inFrame:withView:):
        * Draw
        image if available.
        * Source/NSPopUpButtonCell.m (-initWithCoder:): Add work around
        for NSClassSwapper cell replacement.
        Patches based on changes by Josh Freeman
        <pikopixel@twilightedge.com>


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@39006 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
Fred Kiefer 2015-09-20 21:16:33 +00:00
parent 1d2c5d5ebd
commit be98a77769
5 changed files with 80 additions and 14 deletions

View file

@ -1243,8 +1243,27 @@ static NSImage *_pbc_image[5];
{
/* First decode menu, menu items must be available to set the selection */
menu = [aDecoder decodeObjectForKey: @"NSMenu"];
[self setMenu: nil];
[self setMenu: menu];
if (menu)
{
NSEnumerator *menuItemEnumerator;
NSMenuItem *menuItem;
[self setMenu: nil];
[self setMenu: menu];
// FIXME: This special handling is needed bacause the NSClassSwapper
// might have replaced the cell, but the items still refere to it.
menuItemEnumerator = [[menu itemArray] objectEnumerator];
while ((menuItem = [menuItemEnumerator nextObject]) != nil)
{
if (sel_isEqual([menuItem action], @selector(_popUpItemAction:))
&& ([menuItem target] != self))
{
[menuItem setTarget: self];
}
}
}
if ([aDecoder containsValueForKey: @"NSAltersState"])
{