The R Project SVN R-packages

Rev

Rev 573 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 573 Rev 585
Line 661... Line 661...
661
	[path setLineWidth: lwd]; 
661
	[path setLineWidth: lwd]; 
662
}
662
}
663
 
663
 
664
static void RQuartz_SetLineEnd(R_GE_lineend lend, NSBezierPath *path)
664
static void RQuartz_SetLineEnd(R_GE_lineend lend, NSBezierPath *path)
665
{
665
{
666
    NSLineCapStyle linecap;
666
    NSLineCapStyle linecap=nil;
667
    switch (lend) {
667
    switch (lend) {
668
    case GE_ROUND_CAP:
668
		case GE_ROUND_CAP:
669
      linecap = NSRoundLineCapStyle;
669
			linecap = NSRoundLineCapStyle;
670
      break;
670
			break;
671
    case GE_BUTT_CAP:
671
		case GE_BUTT_CAP:
672
      linecap = NSButtLineCapStyle;
672
			linecap = NSButtLineCapStyle;
673
      break;
673
			break;
674
    case GE_SQUARE_CAP:
674
		case GE_SQUARE_CAP:
675
      linecap = NSSquareLineCapStyle;
675
			linecap = NSSquareLineCapStyle;
676
      break;
676
			break;
677
    default:
677
		default:
678
      NSLog(@"RQuartz_SetLineEnd: Invalid line end");
678
			NSLog(@"RQuartz_SetLineEnd: Invalid line end");
679
	 break; 
679
			break; 
680
    }
680
    }
-
 
681
    if (linecap)
681
    [path setLineCapStyle:linecap];
682
		[path setLineCapStyle:linecap];
682
}
683
}
683
 
684
 
684
   
685
   
685
static void RQuartz_SetLineJoin(R_GE_linejoin ljoin, NSBezierPath *path)
686
static void RQuartz_SetLineJoin(R_GE_linejoin ljoin, NSBezierPath *path)
686
{
687
{
687
    NSLineJoinStyle linejoin;
688
    NSLineJoinStyle linejoin=nil;
688
    switch (ljoin) {
689
    switch (ljoin) {
689
    case GE_ROUND_JOIN:
690
		case GE_ROUND_JOIN:
690
      linejoin = NSRoundLineJoinStyle;
691
			linejoin = NSRoundLineJoinStyle;
691
      break;
692
			break;
692
    case GE_MITRE_JOIN:
693
		case GE_MITRE_JOIN:
693
      linejoin = NSMiterLineJoinStyle;
694
			linejoin = NSMiterLineJoinStyle;
694
      break;
695
			break;
695
    case GE_BEVEL_JOIN:
696
		case GE_BEVEL_JOIN:
696
      linejoin = NSBevelLineJoinStyle;
697
			linejoin = NSBevelLineJoinStyle;
697
      break;
698
			break;
698
    default:
699
		default:
699
      NSLog(@"RQuartz_SetLineJoin: Invalid line join");
700
			NSLog(@"RQuartz_SetLineJoin: Invalid line join");
700
	break;  
701
			break;  
701
    }
702
    }
702
   
703
	if (linejoin)
703
    [path setLineJoinStyle: linejoin];
704
		[path setLineJoinStyle: linejoin];
704
}
705
}
705
 
706
 
706
static void RQuartz_SetLineMitre(double lmitre, NSBezierPath *path)
707
static void RQuartz_SetLineMitre(double lmitre, NSBezierPath *path)
707
{
708
{
708
    if (lmitre < 1)
709
    if (lmitre < 1)
709
        NSLog(@"RQuartz_SetLineMitre:Invalid line mitre");
710
        NSLog(@"RQuartz_SetLineMitre:Invalid line mitre");
-
 
711
	else
710
    [path setMiterLimit: lmitre];
712
		[path setMiterLimit: lmitre];
711
}
713
}
712
 
714
 
713
 
715
 
714
 
716
 
715
NSFont *RQuartz_Font(R_GE_gcontext *gc,  NewDevDesc *dd)
717
NSFont *RQuartz_Font(R_GE_gcontext *gc,  NewDevDesc *dd)