[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH] NSButtonCell
From: |
Gregory John Casamento |
Subject: |
Re: [PATCH] NSButtonCell |
Date: |
Mon, 23 Feb 2004 22:05:05 -0800 (PST) |
Attached as a jpg, so it can be viewed in the convenience of your browser.
GJC
--- Gregory John Casamento <greg_casamento@yahoo.com> wrote:
> Adam,
>
> This change is still broken... see the attached snapshot of Gorm.
> Normall
> all of the buttons in the matrix are showing. As you can see, with this
> change
> it isn't.
>
> I recommend that this patch be fixed prior to commision as this will effect
> all
> applications using NSMatrix to display a set of buttons or images.
>
> Thanks, GJC
>
> --- Gregory John Casamento <greg_casamento@yahoo.com> wrote:
> > Adam,
> >
> > I need to test this as this looks to me like the same portion of the
> > NSToolbar
> > patch which I requested Quentin to fix before committing.
> >
> > I will post my determination in a few minutes.
> >
> > GJC
> >
> > --- Adam Fedor <fedor@doc.com> wrote:
> > > On Thu, 2004-02-05 at 08:00, Quentin Mathé wrote:
> > > > Hi all,
> > > >
> > > > Here is a patch for NSButtonCell.m which permits to the class to be
> > > > drawn transparent when it is not bordered.
> > > >
> > > > I also removed few lines about the focus dotted rect in order to have
> > > > it always drawn with the same size than the button. It looks
> > > > inconsistent to me to have the dotted rect not drawn with the same size
>
> > > > when the button has a title, IMHO it should indicate the last focused
> > > > area which in this case is not just the title area, but like always the
>
> > > > button area. And I think also the focus dotted rect must be drawn even
> > > > when the button is not bezeled (nor bordered).
> > > > What do you think ?
> > > >
> > >
> > > Looks reasonable to me. Any other comments on this?
> > > > *** /home/qmathe/myCVS/gnustep/core/gui/Source/NSButtonCell.m Thu Feb
> 5
> > > 13:07:38 2004
> > > --- NSButtonCell.m Thu Feb 5 15:22:07 2004
> > > ***************
> > > *** 669,683 ****
> > > cellFrame = NSOffsetRect(cellFrame, 1., flippedView ? 1. : -1.);
> > > }
> > >
> > > - /* Determine the background color. */
> > > - if (mask & (NSChangeGrayCellMask | NSChangeBackgroundCellMask))
> > > - {
> > > - backgroundColor = [NSColor selectedControlColor];
> > > - }
> > > -
> > > - if (backgroundColor == nil)
> > > - backgroundColor = [NSColor controlBackgroundColor];
> > > -
> > > /* Draw the cell's background color.
> > > We draw when there is a border or when highlightsByMask
> > > is NSChangeBackgroundCellMask or NSChangeGrayCellMask,
> > > --- 669,674 ----
> > > ***************
> > > *** 686,693 ****
> > > || (_highlightsByMask & NSChangeBackgroundCellMask)
> > > || (_highlightsByMask & NSChangeGrayCellMask))
> > > {
> > > ! [backgroundColor set];
> > > ! NSRectFill (cellFrame);
> > > }
> > >
> > > /*
> > > --- 677,713 ----
> > > || (_highlightsByMask & NSChangeBackgroundCellMask)
> > > || (_highlightsByMask & NSChangeGrayCellMask))
> > > {
> > > ! /* Determine the background color. */
> > > ! if (mask & (NSChangeGrayCellMask | NSChangeBackgroundCellMask))
> > > ! {
> > > ! backgroundColor = [NSColor selectedControlColor];
> > > ! }
> > > ! else if (_cell.is_bordered)
> > > ! {
> > > ! backgroundColor = [NSColor controlBackgroundColor];
> > > ! }
> > > ! else
> > > ! {
> > > ! NSView *opaqueAncestor;
> > > !
> > > ! /*
> > > ! * we cannot use backgroundColor = [NSColor clearColor]
> > > because
> > > ! * there is no alpha support at the code writing time
> > > ! */
> > > !
> > > ! // we must call superview because opaqueAncestor can return
> > > the
> caller
> > > ! opaqueAncestor = [[_control_view superview] opaqueAncestor];
> > > ! [opaqueAncestor lockFocus];
> > > ! [opaqueAncestor drawRect:[_control_view frame]];
> > > ! [opaqueAncestor unlockFocus];
> > > ! }
> > > !
> > > ! if (backgroundColor != nil)
> > > ! {
> > > ! [backgroundColor set];
> > > ! NSRectFill (cellFrame);
> > > ! }
> > > !
> > > }
> > >
> > > /*
> > > ***************
> > > *** 882,893 ****
> > > if (_cell.shows_first_responder
> > > && [[controlView window] firstResponder] == controlView)
> > > {
> > > - if (_cell.is_bordered || _cell.is_bezeled)
> > > - NSDottedFrameRect(cellFrame);
> > > - else if (ipos == NSImageOnly)
> > > NSDottedFrameRect(cellFrame);
> > > - else
> > > - NSDottedFrameRect(titleRect);
> > > }
> > > }
> > >
> > > --- 902,908 ----
> > > > _______________________________________________
> > > Bug-gnustep mailing list
> > > Bug-gnustep@gnu.org
> > > http://mail.gnu.org/mailman/listinfo/bug-gnustep
> > >
> >
> >
> > =====
> > Gregory John Casamento -- CEO/President Open Logic Corp.
> >
> > __________________________________
> > Do you Yahoo!?
> > Yahoo! Mail SpamGuard - Read only the mail you want.
> > http://antispam.yahoo.com/tools
> >
> >
> > _______________________________________________
> > Bug-gnustep mailing list
> > Bug-gnustep@gnu.org
> > http://mail.gnu.org/mailman/listinfo/bug-gnustep
>
> =====
> Gregory John Casamento -- CEO/President Open Logic Corp.
>
> __________________________________
> Do you Yahoo!?
> Yahoo! Mail SpamGuard - Read only the mail you want.
> http://antispam.yahoo.com/tools
> ATTACHMENT part 2 image/png name=buttonbug.png
> _______________________________________________
> Bug-gnustep mailing list
> Bug-gnustep@gnu.org
> http://mail.gnu.org/mailman/listinfo/bug-gnustep
>
=====
Gregory John Casamento -- CEO/President Open Logic Corp.
__________________________________
Do you Yahoo!?
Yahoo! Mail SpamGuard - Read only the mail you want.
http://antispam.yahoo.com/tools