Clean up |-[BSLineNumberRulerView drawBreakpointInRect:]| to use constants
authorRobert Sesek <rsesek@bluestatic.org>
Mon, 17 Jan 2011 01:31:17 +0000 (20:31 -0500)
committerRobert Sesek <rsesek@bluestatic.org>
Mon, 17 Jan 2011 01:31:17 +0000 (20:31 -0500)
Source/BSLineNumberRulerView.mm

index 66647d65d8e238e828f9a53775b96a5dcc0ae077..73bfc5e6cc84e74d7c78c9d847f7af99592863b3 100644 (file)
@@ -252,17 +252,23 @@ const CGFloat kRulerRightPadding = 2.5;
   [[NSGraphicsContext currentContext] saveGraphicsState];
 
   NSBezierPath* path = [NSBezierPath bezierPath];
-  
-  [path moveToPoint:NSMakePoint(rect.origin.x + 2, rect.origin.y + 2)]; // initial origin
-  [path lineToPoint:NSMakePoint(rect.size.width - 7, rect.origin.y + 2)]; // upper right
-  [path lineToPoint:NSMakePoint(rect.size.width - 2, rect.origin.y + (rect.size.height / 2))]; // point
-  [path lineToPoint:NSMakePoint(rect.size.width - 7, rect.origin.y + rect.size.height - 2)]; // lower right
-  [path lineToPoint:NSMakePoint(rect.origin.x + 2, rect.origin.y + rect.size.height - 2)]; // lower left
-  [path lineToPoint:NSMakePoint(rect.origin.x + 2, rect.origin.y + 1)]; // upper left
-  
+
+  const CGFloat kPadding = 2.0;
+  const CGFloat kArrowWidth = 7.0;
+  const CGFloat minX = NSMinX(rect) + kPadding;
+  const CGFloat maxX = NSMaxX(rect);
+  const CGFloat minY = NSMinY(rect) + kPadding;
+
+  [path moveToPoint:NSMakePoint(minX, minY)]; // initial origin
+  [path lineToPoint:NSMakePoint(maxX - kArrowWidth, minY)]; // upper right
+  [path lineToPoint:NSMakePoint(maxX - kPadding, NSMidY(rect))]; // point
+  [path lineToPoint:NSMakePoint(maxX - kArrowWidth, NSMaxY(rect) - kPadding)]; // lower right
+  [path lineToPoint:NSMakePoint(minX, NSMaxY(rect) - kPadding)]; // lower left
+  [path lineToPoint:NSMakePoint(minX, minY - 1)]; // upper left
+
   [[NSColor colorWithDeviceRed:0.004 green:0.557 blue:0.851 alpha:1.0] set];
   [path fill];
-  
+
   [[NSColor colorWithDeviceRed:0.0 green:0.404 blue:0.804 alpha:1.0] set];
   [path setLineWidth:2];
   [path stroke];