From: Matthew Judy Date: Wed, 23 Apr 2003 13:42:20 +0000 (+0000) Subject: Tweaks to the bevel view. It sucks right now for a couple reasons... If it's not... X-Git-Tag: v0.1~43 X-Git-Url: http://git.ithinksw.org/ITKit.git/commitdiff_plain/5a59c92a7f8bed6880e809b8aec7858bc0e30cd5 Tweaks to the bevel view. It sucks right now for a couple reasons... If it's not in a tab view, it glitches. No fucking clue why. I may have actually just fixed that with something i just did, but I found a way to put it in a tab view in AG and have it look fscking sweet. The other thing about the bevel view is that when you use it in IB, you have to make sure that its subview is NOT sized to fill it completely. Otherwise drawRect: doesn't get called. --- diff --git a/ITBevelView.m b/ITBevelView.m index de94f3b..985e313 100755 --- a/ITBevelView.m +++ b/ITBevelView.m @@ -54,11 +54,11 @@ - (void)drawRect:(NSRect)aRect { - // Draw special bezel, with a thickness of _bevelDepth. - NSRect innerRect = NSMakeRect( (aRect.origin.x + _bevelDepth), - (aRect.origin.y + _bevelDepth), - (aRect.size.width - (_bevelDepth * 2)), - (aRect.size.height - (_bevelDepth * 2)) ); + NSRect frameRect = [self frame]; + NSRect innerRect = NSMakeRect( (frameRect.origin.x + _bevelDepth), + (frameRect.origin.y + _bevelDepth), + (frameRect.size.width - (_bevelDepth * 2)), + (frameRect.size.height - (_bevelDepth * 2)) ); NSBezierPath *leftEdge = [NSBezierPath bezierPath]; NSBezierPath *topEdge = [NSBezierPath bezierPath]; @@ -66,26 +66,26 @@ NSBezierPath *bottomEdge = [NSBezierPath bezierPath]; [[[self subviews] objectAtIndex:0] setFrame:innerRect]; - - [leftEdge moveToPoint:aRect.origin]; - [leftEdge lineToPoint:NSMakePoint(aRect.origin.x, aRect.size.height)]; - [leftEdge lineToPoint:NSMakePoint( (aRect.origin.x + _bevelDepth), (aRect.size.height - _bevelDepth) )]; - [leftEdge lineToPoint:NSMakePoint( (aRect.origin.x + _bevelDepth), (aRect.origin.y + _bevelDepth) )]; - - [topEdge moveToPoint:NSMakePoint(aRect.origin.x, aRect.size.height)]; - [topEdge lineToPoint:NSMakePoint(aRect.size.width, aRect.size.height)]; - [topEdge lineToPoint:NSMakePoint( (aRect.size.width - _bevelDepth), (aRect.size.height - _bevelDepth) )]; - [topEdge lineToPoint:NSMakePoint( (aRect.origin.x + _bevelDepth), (aRect.size.height - _bevelDepth) )]; - - [rightEdge moveToPoint:NSMakePoint(aRect.size.width, aRect.origin.y)]; - [rightEdge lineToPoint:NSMakePoint(aRect.size.width, aRect.size.height)]; - [rightEdge lineToPoint:NSMakePoint( (aRect.size.width - _bevelDepth), (aRect.size.height - _bevelDepth) )]; - [rightEdge lineToPoint:NSMakePoint( (aRect.size.width - _bevelDepth), (_bevelDepth) )]; - - [bottomEdge moveToPoint:aRect.origin]; - [bottomEdge lineToPoint:NSMakePoint(aRect.size.width, aRect.origin.y)]; - [bottomEdge lineToPoint:NSMakePoint( (aRect.size.width - _bevelDepth), (_bevelDepth) )]; - [bottomEdge lineToPoint:NSMakePoint( (aRect.origin.x + _bevelDepth), (aRect.origin.y + _bevelDepth) )]; + + [leftEdge moveToPoint:frameRect.origin]; + [leftEdge lineToPoint:NSMakePoint(frameRect.origin.x, frameRect.size.height)]; + [leftEdge lineToPoint:NSMakePoint( (frameRect.origin.x + _bevelDepth), (frameRect.size.height - _bevelDepth) )]; + [leftEdge lineToPoint:NSMakePoint( (frameRect.origin.x + _bevelDepth), (frameRect.origin.y + _bevelDepth) )]; + + [topEdge moveToPoint:NSMakePoint(frameRect.origin.x, frameRect.size.height)]; + [topEdge lineToPoint:NSMakePoint(frameRect.size.width, frameRect.size.height)]; + [topEdge lineToPoint:NSMakePoint( (frameRect.size.width - _bevelDepth), (frameRect.size.height - _bevelDepth) )]; + [topEdge lineToPoint:NSMakePoint( (frameRect.origin.x + _bevelDepth), (frameRect.size.height - _bevelDepth) )]; + + [rightEdge moveToPoint:NSMakePoint(frameRect.size.width, frameRect.origin.y)]; + [rightEdge lineToPoint:NSMakePoint(frameRect.size.width, frameRect.size.height)]; + [rightEdge lineToPoint:NSMakePoint( (frameRect.size.width - _bevelDepth), (frameRect.size.height - _bevelDepth) )]; + [rightEdge lineToPoint:NSMakePoint( (frameRect.size.width - _bevelDepth), (_bevelDepth) )]; + + [bottomEdge moveToPoint:frameRect.origin]; + [bottomEdge lineToPoint:NSMakePoint(frameRect.size.width, frameRect.origin.y)]; + [bottomEdge lineToPoint:NSMakePoint( (frameRect.size.width - _bevelDepth), (_bevelDepth) )]; + [bottomEdge lineToPoint:NSMakePoint( (frameRect.origin.x + _bevelDepth), (frameRect.origin.y + _bevelDepth) )]; [[NSColor colorWithCalibratedWhite:0.5 alpha:0.5] set]; [leftEdge fill]; @@ -95,6 +95,8 @@ [rightEdge fill]; [[NSColor colorWithCalibratedWhite:1.0 alpha:0.6] set]; [bottomEdge fill]; + + [[[self subviews] objectAtIndex:0] setNeedsDisplay:YES]; } diff --git a/Showcase/English.lproj/MainMenu.nib/keyedobjects.nib b/Showcase/English.lproj/MainMenu.nib/keyedobjects.nib index 343c2c0..70ac257 100755 Binary files a/Showcase/English.lproj/MainMenu.nib/keyedobjects.nib and b/Showcase/English.lproj/MainMenu.nib/keyedobjects.nib differ