• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /macosx-10.9.5/tcl-102/tk84/tk/generic/

Lines Matching defs:polyPtr

166 			    PolygonItem *polyPtr));
267 PolygonItem *polyPtr = (PolygonItem *) itemPtr;
279 Tk_CreateOutline(&(polyPtr->outline));
280 polyPtr->numPoints = 0;
281 polyPtr->pointsAllocated = 0;
282 polyPtr->coordPtr = NULL;
283 polyPtr->joinStyle = JoinRound;
284 polyPtr->tsoffset.flags = 0;
285 polyPtr->tsoffset.xoffset = 0;
286 polyPtr->tsoffset.yoffset = 0;
287 polyPtr->fillColor = NULL;
288 polyPtr->activeFillColor = NULL;
289 polyPtr->disabledFillColor = NULL;
290 polyPtr->fillStipple = None;
291 polyPtr->activeFillStipple = None;
292 polyPtr->disabledFillStipple = None;
293 polyPtr->fillGC = None;
294 polyPtr->smooth = (Tk_SmoothMethod *) NULL;
295 polyPtr->splineSteps = 12;
296 polyPtr->autoClosed = 0;
354 PolygonItem *polyPtr = (PolygonItem *) itemPtr;
363 for (i = 0; i < 2*(polyPtr->numPoints - polyPtr->autoClosed); i++) {
364 subobj = Tcl_NewDoubleObj(polyPtr->coordPtr[i]);
384 if (polyPtr->pointsAllocated <= numPoints) {
385 if (polyPtr->coordPtr != NULL) {
386 ckfree((char *) polyPtr->coordPtr);
394 polyPtr->coordPtr = (double *) ckalloc((unsigned)
396 polyPtr->pointsAllocated = numPoints+1;
400 &polyPtr->coordPtr[i]) != TCL_OK) {
404 polyPtr->numPoints = numPoints;
405 polyPtr->autoClosed = 0;
411 if (objc>2 && ((polyPtr->coordPtr[objc-2] != polyPtr->coordPtr[0])
412 || (polyPtr->coordPtr[objc-1] != polyPtr->coordPtr[1]))) {
413 polyPtr->autoClosed = 1;
414 polyPtr->numPoints++;
415 polyPtr->coordPtr[objc] = polyPtr->coordPtr[0];
416 polyPtr->coordPtr[objc+1] = polyPtr->coordPtr[1];
418 ComputePolygonBbox(canvas, polyPtr);
452 PolygonItem *polyPtr = (PolygonItem *) itemPtr;
463 (CONST char **) objv, (char *) polyPtr, flags|TK_CONFIG_OBJS)) {
474 if (polyPtr->outline.activeWidth > polyPtr->outline.width ||
475 polyPtr->outline.activeDash.number != 0 ||
476 polyPtr->outline.activeColor != NULL ||
477 polyPtr->outline.activeStipple != None ||
478 polyPtr->activeFillColor != NULL ||
479 polyPtr->activeFillStipple != None) {
489 ComputePolygonBbox(canvas, polyPtr);
493 mask = Tk_ConfigOutlineGC(&gcValues, canvas, itemPtr, &(polyPtr->outline));
496 gcValues.join_style = polyPtr->joinStyle;
502 if (polyPtr->outline.gc != None) {
503 Tk_FreeGC(Tk_Display(tkwin), polyPtr->outline.gc);
505 polyPtr->outline.gc = newGC;
507 color = polyPtr->fillColor;
508 stipple = polyPtr->fillStipple;
510 if (polyPtr->activeFillColor!=NULL) {
511 color = polyPtr->activeFillColor;
513 if (polyPtr->activeFillStipple!=None) {
514 stipple = polyPtr->activeFillStipple;
517 if (polyPtr->disabledFillColor!=NULL) {
518 color = polyPtr->disabledFillColor;
520 if (polyPtr->disabledFillStipple!=None) {
521 stipple = polyPtr->disabledFillStipple;
540 gcValues.line_width = polyPtr->outline.gc != None ?
541 polyPtr->outline.gc->line_width : 0;
546 if (polyPtr->fillGC != None) {
547 Tk_FreeGC(Tk_Display(tkwin), polyPtr->fillGC);
549 polyPtr->fillGC = newGC;
555 if (polyPtr->splineSteps < 1) {
556 polyPtr->splineSteps = 1;
557 } else if (polyPtr->splineSteps > 100) {
558 polyPtr->splineSteps = 100;
561 ComputePolygonBbox(canvas, polyPtr);
590 PolygonItem *polyPtr = (PolygonItem *) itemPtr;
592 Tk_DeleteOutline(display,&(polyPtr->outline));
593 if (polyPtr->coordPtr != NULL) {
594 ckfree((char *) polyPtr->coordPtr);
596 if (polyPtr->fillColor != NULL) {
597 Tk_FreeColor(polyPtr->fillColor);
599 if (polyPtr->activeFillColor != NULL) {
600 Tk_FreeColor(polyPtr->activeFillColor);
602 if (polyPtr->disabledFillColor != NULL) {
603 Tk_FreeColor(polyPtr->disabledFillColor);
605 if (polyPtr->fillStipple != None) {
606 Tk_FreeBitmap(display, polyPtr->fillStipple);
608 if (polyPtr->activeFillStipple != None) {
609 Tk_FreeBitmap(display, polyPtr->activeFillStipple);
611 if (polyPtr->disabledFillStipple != None) {
612 Tk_FreeBitmap(display, polyPtr->disabledFillStipple);
614 if (polyPtr->fillGC != None) {
615 Tk_FreeGC(display, polyPtr->fillGC);
639 ComputePolygonBbox(canvas, polyPtr)
641 PolygonItem *polyPtr; /* Item whose bbox is to be
647 Tk_State state = polyPtr->header.state;
653 width = polyPtr->outline.width;
654 if (polyPtr->coordPtr == NULL || (polyPtr->numPoints < 1) || (state==TK_STATE_HIDDEN)) {
655 polyPtr->header.x1 = polyPtr->header.x2 =
656 polyPtr->header.y1 = polyPtr->header.y2 = -1;
659 if (((TkCanvas *)canvas)->currentItemPtr == (Tk_Item *)polyPtr) {
660 if (polyPtr->outline.activeWidth>width) {
661 width = polyPtr->outline.activeWidth;
664 if (polyPtr->outline.disabledWidth>0.0) {
665 width = polyPtr->outline.disabledWidth;
669 coordPtr = polyPtr->coordPtr;
670 polyPtr->header.x1 = polyPtr->header.x2 = (int) *coordPtr;
671 polyPtr->header.y1 = polyPtr->header.y2 = (int) coordPtr[1];
683 for (i = 1, coordPtr = polyPtr->coordPtr+2; i < polyPtr->numPoints-1;
685 TkIncludePoint((Tk_Item *) polyPtr, coordPtr);
688 tsoffset = &polyPtr->tsoffset;
692 index = (polyPtr->numPoints - polyPtr->autoClosed) * 2;
697 index %= (polyPtr->numPoints - polyPtr->autoClosed) * 2;
699 index += (polyPtr->numPoints - polyPtr->autoClosed) * 2;
701 tsoffset->xoffset = (int) (polyPtr->coordPtr[index] + 0.5);
702 tsoffset->yoffset = (int) (polyPtr->coordPtr[index+1] + 0.5);
705 tsoffset->xoffset = polyPtr->header.x1;
707 tsoffset->xoffset = (polyPtr->header.x1 + polyPtr->header.x2)/2;
709 tsoffset->xoffset = polyPtr->header.x2;
712 tsoffset->yoffset = polyPtr->header.y1;
714 tsoffset->yoffset = (polyPtr->header.y1 + polyPtr->header.y2)/2;
716 tsoffset->yoffset = polyPtr->header.y2;
720 if (polyPtr->outline.gc != None) {
721 tsoffset = &polyPtr->outline.tsoffset;
726 index = (polyPtr->numPoints - 1) * 2;
728 index %= (polyPtr->numPoints - 1) * 2;
730 index += (polyPtr->numPoints - 1) * 2;
732 tsoffset->xoffset = (int) (polyPtr->coordPtr[index] + 0.5);
733 tsoffset->yoffset = (int) (polyPtr->coordPtr[index+1] + 0.5);
736 tsoffset->xoffset = polyPtr->header.x1;
738 tsoffset->xoffset = (polyPtr->header.x1 + polyPtr->header.x2)/2;
740 tsoffset->xoffset = polyPtr->header.x2;
743 tsoffset->yoffset = polyPtr->header.y1;
745 tsoffset->yoffset = (polyPtr->header.y1 + polyPtr->header.y2)/2;
747 tsoffset->yoffset = polyPtr->header.y2;
753 polyPtr->header.x1 -= i;
754 polyPtr->header.x2 += i;
755 polyPtr->header.y1 -= i;
756 polyPtr->header.y2 += i;
764 if (polyPtr->joinStyle == JoinMiter) {
767 coordPtr = polyPtr->coordPtr;
768 if (polyPtr->numPoints>3) {
769 if (TkGetMiterPoints(coordPtr+2*(polyPtr->numPoints-2),
773 TkIncludePoint((Tk_Item *) polyPtr, miter+j);
777 for (i = polyPtr->numPoints ; i >= 3;
783 TkIncludePoint((Tk_Item *) polyPtr, miter+j);
795 polyPtr->header.x1 -= 1;
796 polyPtr->header.x2 += 1;
797 polyPtr->header.y1 -= 1;
798 polyPtr->header.y2 += 1;
905 PolygonItem *polyPtr = (PolygonItem *) itemPtr;
907 Pixmap stipple = polyPtr->fillStipple;
908 double linewidth = polyPtr->outline.width;
910 if (((polyPtr->fillGC == None) && (polyPtr->outline.gc == None)) ||
911 (polyPtr->numPoints < 1) ||
912 (polyPtr->numPoints < 3 && polyPtr->outline.gc == None)) {
920 if (polyPtr->outline.activeWidth>linewidth) {
921 linewidth = polyPtr->outline.activeWidth;
923 if (polyPtr->activeFillStipple != None) {
924 stipple = polyPtr->activeFillStipple;
927 if (polyPtr->outline.disabledWidth>0.0) {
928 linewidth = polyPtr->outline.disabledWidth;
930 if (polyPtr->disabledFillStipple != None) {
931 stipple = polyPtr->disabledFillStipple;
940 if ((stipple != None) && (polyPtr->fillGC != None)) {
941 Tk_TSOffset *tsoffset = &polyPtr->tsoffset;
959 Tk_CanvasSetOffset(canvas, polyPtr->fillGC, tsoffset);
963 Tk_ChangeOutlineGC(canvas, itemPtr, &(polyPtr->outline));
965 if(polyPtr->numPoints < 3) {
971 Tk_CanvasDrawableCoords(canvas, polyPtr->coordPtr[0],
972 polyPtr->coordPtr[1], &x,&y);
973 XFillArc(display, drawable, polyPtr->outline.gc,
977 } else if (!polyPtr->smooth || polyPtr->numPoints < 4) {
978 TkFillPolygon(canvas, polyPtr->coordPtr, polyPtr->numPoints,
979 display, drawable, polyPtr->fillGC, polyPtr->outline.gc);
990 numPoints = polyPtr->smooth->coordProc(canvas, (double *) NULL,
991 polyPtr->numPoints, polyPtr->splineSteps, (XPoint *) NULL,
999 numPoints = polyPtr->smooth->coordProc(canvas, polyPtr->coordPtr,
1000 polyPtr->numPoints, polyPtr->splineSteps, pointPtr,
1002 if (polyPtr->fillGC != None) {
1003 XFillPolygon(display, drawable, polyPtr->fillGC, pointPtr,
1006 if (polyPtr->outline.gc != None) {
1007 XDrawLines(display, drawable, polyPtr->outline.gc, pointPtr,
1014 Tk_ResetOutlineGC(canvas, itemPtr, &(polyPtr->outline));
1015 if ((stipple != None) && (polyPtr->fillGC != None)) {
1016 XSetTSOrigin(display, polyPtr->fillGC, 0, 0);
1045 PolygonItem *polyPtr = (PolygonItem *) itemPtr;
1059 length = 2*(polyPtr->numPoints - polyPtr->autoClosed);
1064 new[i] = polyPtr->coordPtr[i];
1075 new[i+objc] = polyPtr->coordPtr[i];
1077 if(polyPtr->coordPtr) ckfree((char *) polyPtr->coordPtr);
1079 polyPtr->coordPtr = new;
1080 polyPtr->numPoints = (length/2) + polyPtr->autoClosed;
1087 if (polyPtr->autoClosed) {
1089 polyPtr->autoClosed = 0;
1090 polyPtr->numPoints--;
1095 polyPtr->autoClosed = 1;
1096 polyPtr->numPoints++;
1123 itemPtr->x1 = itemPtr->x2 = (int) polyPtr->coordPtr[beforeThis];
1124 itemPtr->y1 = itemPtr->y2 = (int) polyPtr->coordPtr[beforeThis+1];
1126 if(polyPtr->smooth) {
1133 TkIncludePoint(itemPtr, polyPtr->coordPtr+j);
1135 width = polyPtr->outline.width;
1137 if (polyPtr->outline.activeWidth>width) {
1138 width = polyPtr->outline.activeWidth;
1141 if (polyPtr->outline.disabledWidth>0.0) {
1142 width = polyPtr->outline.disabledWidth;
1152 ComputePolygonBbox(canvas, polyPtr);
1180 PolygonItem *polyPtr = (PolygonItem *) itemPtr;
1182 int length = 2*(polyPtr->numPoints - polyPtr->autoClosed);
1196 polyPtr->numPoints = 0;
1197 if(polyPtr->coordPtr != NULL) {
1198 ckfree((char *) polyPtr->coordPtr);
1200 ComputePolygonBbox(canvas, polyPtr);
1206 polyPtr->coordPtr[i-count] = polyPtr->coordPtr[i];
1210 polyPtr->coordPtr[i-last] = polyPtr->coordPtr[i];
1213 polyPtr->coordPtr[length-count] = polyPtr->coordPtr[0];
1214 polyPtr->coordPtr[length-count+1] = polyPtr->coordPtr[1];
1215 polyPtr->numPoints -= count/2;
1216 ComputePolygonBbox(canvas, polyPtr);
1247 PolygonItem *polyPtr = (PolygonItem *) itemPtr;
1265 width = polyPtr->outline.width;
1267 if (polyPtr->outline.activeWidth>width) {
1268 width = polyPtr->outline.activeWidth;
1271 if (polyPtr->outline.disabledWidth>0.0) {
1272 width = polyPtr->outline.disabledWidth;
1282 if ((polyPtr->smooth) && (polyPtr->numPoints>2)) {
1283 numPoints = polyPtr->smooth->coordProc(canvas, (double *) NULL,
1284 polyPtr->numPoints, polyPtr->splineSteps, (XPoint *) NULL,
1292 numPoints = polyPtr->smooth->coordProc(canvas, polyPtr->coordPtr,
1293 polyPtr->numPoints, polyPtr->splineSteps, (XPoint *) NULL,
1296 numPoints = polyPtr->numPoints;
1297 polyPoints = polyPtr->coordPtr;
1304 if ((polyPtr->outline.gc != None) && (polyPtr->joinStyle == JoinRound)) {
1314 if ((polyPtr->outline.gc == None) || (width <= 1)) goto donepoint;
1332 if (polyPtr->joinStyle == JoinRound) {
1352 } else if ((polyPtr->joinStyle == JoinMiter) && !changedMiterToBevel) {
1368 if ((polyPtr->joinStyle == JoinBevel) || changedMiterToBevel) {
1384 } else if (polyPtr->joinStyle == JoinMiter) {
1407 if ((polyPoints != staticSpace) && polyPoints != polyPtr->coordPtr) {
1443 PolygonItem *polyPtr = (PolygonItem *) itemPtr;
1465 width = polyPtr->outline.width;
1467 if (polyPtr->outline.activeWidth>width) {
1468 width = polyPtr->outline.activeWidth;
1471 if (polyPtr->outline.disabledWidth>0.0) {
1472 width = polyPtr->outline.disabledWidth;
1479 if ((state==TK_STATE_HIDDEN) || polyPtr->numPoints<2) {
1481 } else if (polyPtr->numPoints <3) {
1483 oval[0] = polyPtr->coordPtr[0]-radius;
1484 oval[1] = polyPtr->coordPtr[1]-radius;
1485 oval[2] = polyPtr->coordPtr[0]+radius;
1486 oval[3] = polyPtr->coordPtr[1]+radius;
1494 if (polyPtr->smooth) {
1495 numPoints = polyPtr->smooth->coordProc(canvas, (double *) NULL,
1496 polyPtr->numPoints, polyPtr->splineSteps, (XPoint *) NULL,
1504 numPoints = polyPtr->smooth->coordProc(canvas, polyPtr->coordPtr,
1505 polyPtr->numPoints, polyPtr->splineSteps, (XPoint *) NULL,
1508 numPoints = polyPtr->numPoints;
1509 polyPoints = polyPtr->coordPtr;
1520 if (polyPtr->outline.gc == None) goto donearea ;
1539 if (polyPtr->joinStyle == JoinRound) {
1559 } else if ((polyPtr->joinStyle == JoinMiter) && !changedMiterToBevel) {
1575 if ((polyPtr->joinStyle == JoinBevel) || changedMiterToBevel) {
1588 } else if (polyPtr->joinStyle == JoinMiter) {
1608 if ((polyPoints != staticSpace) && (polyPoints != polyPtr->coordPtr)) {
1643 PolygonItem *polyPtr = (PolygonItem *) itemPtr;
1647 for (i = 0, coordPtr = polyPtr->coordPtr; i < polyPtr->numPoints;
1652 ComputePolygonBbox(canvas, polyPtr);
1686 PolygonItem *polyPtr = (PolygonItem *) itemPtr;
1692 *indexPtr = 2*(polyPtr->numPoints - polyPtr->autoClosed);
1722 coordPtr = polyPtr->coordPtr;
1724 for(i=0; i<(polyPtr->numPoints-1); i++) {
1733 int count = 2*(polyPtr->numPoints - polyPtr->autoClosed);
1778 PolygonItem *polyPtr = (PolygonItem *) itemPtr;
1782 for (i = 0, coordPtr = polyPtr->coordPtr; i < polyPtr->numPoints;
1787 ComputePolygonBbox(canvas, polyPtr);
1823 PolygonItem *polyPtr = (PolygonItem *) itemPtr;
1832 if (polyPtr->numPoints<2 || polyPtr->coordPtr==NULL) {
1839 width = polyPtr->outline.width;
1840 color = polyPtr->outline.color;
1841 stipple = polyPtr->fillStipple;
1842 fillColor = polyPtr->fillColor;
1843 fillStipple = polyPtr->fillStipple;
1845 if (polyPtr->outline.activeWidth>width) {
1846 width = polyPtr->outline.activeWidth;
1848 if (polyPtr->outline.activeColor!=NULL) {
1849 color = polyPtr->outline.activeColor;
1851 if (polyPtr->outline.activeStipple!=None) {
1852 stipple = polyPtr->outline.activeStipple;
1854 if (polyPtr->activeFillColor!=NULL) {
1855 fillColor = polyPtr->activeFillColor;
1857 if (polyPtr->activeFillStipple!=None) {
1858 fillStipple = polyPtr->activeFillStipple;
1861 if (polyPtr->outline.disabledWidth>0.0) {
1862 width = polyPtr->outline.disabledWidth;
1864 if (polyPtr->outline.disabledColor!=NULL) {
1865 color = polyPtr->outline.disabledColor;
1867 if (polyPtr->outline.disabledStipple!=None) {
1868 stipple = polyPtr->outline.disabledStipple;
1870 if (polyPtr->disabledFillColor!=NULL) {
1871 fillColor = polyPtr->disabledFillColor;
1873 if (polyPtr->disabledFillStipple!=None) {
1874 fillStipple = polyPtr->disabledFillStipple;
1877 if (polyPtr->numPoints==2) {
1884 polyPtr->coordPtr[0], Tk_CanvasPsY(canvas, polyPtr->coordPtr[1]),
1906 if (fillColor != NULL && polyPtr->numPoints>3) {
1907 if (!polyPtr->smooth || !polyPtr->smooth->postscriptProc) {
1908 Tk_CanvasPsPath(interp, canvas, polyPtr->coordPtr,
1909 polyPtr->numPoints);
1911 polyPtr->smooth->postscriptProc(interp, canvas, polyPtr->coordPtr,
1912 polyPtr->numPoints, polyPtr->splineSteps);
1937 if (!polyPtr->smooth || !polyPtr->smooth->postscriptProc) {
1938 Tk_CanvasPsPath(interp, canvas, polyPtr->coordPtr,
1939 polyPtr->numPoints);
1941 polyPtr->smooth->postscriptProc(interp, canvas, polyPtr->coordPtr,
1942 polyPtr->numPoints, polyPtr->splineSteps);
1945 if (polyPtr->joinStyle == JoinRound) {
1947 } else if (polyPtr->joinStyle == JoinBevel) {
1955 &(polyPtr->outline)) != TCL_OK) {