mirror of
https://github.com/gnustep/libs-gui.git
synced 2025-05-30 19:20:37 +00:00
Various small fixes for windows menu support.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@5369 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
parent
d5d19ed0e7
commit
2243389ba2
4 changed files with 29 additions and 30 deletions
|
@ -1884,49 +1884,39 @@ NSAssert([event retainCount] > 0, NSInternalInconsistencyException);
|
|||
NSMenuItemCell *cell;
|
||||
NSCellImagePosition oldPos;
|
||||
NSImage *oldImage;
|
||||
NSImage *newImage;
|
||||
BOOL changed;
|
||||
|
||||
found = YES;
|
||||
cell = [view menuItemCellForItemAtIndex: i];
|
||||
oldPos = [cell imagePosition];
|
||||
oldImage = [cell image];
|
||||
newImage = oldImage;
|
||||
changed = NO;
|
||||
|
||||
if ([aWindow representedFilename] == nil)
|
||||
if (oldPos != NSImageLeft)
|
||||
{
|
||||
if (oldPos != NSNoImage)
|
||||
{
|
||||
[cell setImagePosition: NSNoImage];
|
||||
changed = YES;
|
||||
}
|
||||
[cell setImagePosition: NSImageLeft];
|
||||
changed = YES;
|
||||
}
|
||||
if ([aWindow isDocumentEdited])
|
||||
{
|
||||
newImage = [NSImage imageNamed: @"common_WMCloseBroken"];
|
||||
}
|
||||
else
|
||||
{
|
||||
NSImage *newImage = oldImage;
|
||||
|
||||
if (oldPos != NSImageLeft)
|
||||
{
|
||||
[cell setImagePosition: NSImageLeft];
|
||||
changed = YES;
|
||||
}
|
||||
if ([aWindow isDocumentEdited])
|
||||
{
|
||||
newImage = [NSImage imageNamed: @"common_WMCloseBroken"];
|
||||
}
|
||||
else
|
||||
{
|
||||
newImage = [NSImage imageNamed: @"common_WMClose"];
|
||||
}
|
||||
if (newImage != oldImage)
|
||||
{
|
||||
[cell setImage: newImage];
|
||||
changed = YES;
|
||||
}
|
||||
newImage = [NSImage imageNamed: @"common_WMClose"];
|
||||
}
|
||||
if (newImage != oldImage)
|
||||
{
|
||||
[item setImage: newImage];
|
||||
[cell setImage: newImage];
|
||||
changed = YES;
|
||||
}
|
||||
if (changed)
|
||||
{
|
||||
[menu sizeToFit];
|
||||
[menu update];
|
||||
[view setNeedsDisplayForItemAtIndex: i];
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
|
|
@ -559,7 +559,7 @@
|
|||
|
||||
if (mcell_imageToDisplay)
|
||||
{
|
||||
mcell_imageSize = [mcell_imageToDisplay size];
|
||||
mcell_imageWidth = [mcell_imageToDisplay size].width;
|
||||
[mcell_imageToDisplay setBackgroundColor: backgroundColor];
|
||||
}
|
||||
|
||||
|
|
|
@ -580,9 +580,11 @@ static float GSMenuBarHeight = 25.0; // A wild guess.
|
|||
(frame.size.height - point.y) / cellSize.height;
|
||||
}
|
||||
|
||||
- (void)setNeedsDisplayForItemAtIndex: (int)index
|
||||
- (void) setNeedsDisplayForItemAtIndex: (int)index
|
||||
{
|
||||
[[menuv_itemCells objectAtIndex: index] setNeedsDisplay: YES];
|
||||
NSRect aRect = [self rectOfItemAtIndex: index];
|
||||
|
||||
[self setNeedsDisplayInRect: aRect];
|
||||
}
|
||||
|
||||
- (NSPoint)locationForSubmenu: (NSMenu *)aSubmenu
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue