bug-gnustep
[Top][All Lists]
Advanced

[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 <address@hidden> 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 <address@hidden> 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 <address@hidden> 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
> > > address@hidden
> > > 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
> > address@hidden
> > 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
> address@hidden
> 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

JPEG image


reply via email to

[Prev in Thread] Current Thread [Next in Thread]