1 /************************************************************************/ 2 /* */ 3 /* Declarations for shapes. */ 4 /* */ 5 /* Distances are in EMU's. */ 6 /* 12700 EMU/Point. */ 7 /* 635 EMU/Twip. */ 8 /* 914400 EMU/Inch. */ 9 /* 360000 EMU/cm. */ 10 /* */ 11 /* With the exception of 'shplid', the ShapeProperties that come from */ 12 /* regular rtf only apply for the top level 'shp' or shpgrp'. */ 13 /* */ 14 /************************************************************************/ 15 16 # ifndef DOC_SHAPE_DRAWING_H 17 # define DOC_SHAPE_DRAWING_H 18 19 # include <utilColor.h> 20 # include <geo2DInteger.h> 21 22 # define EMUtoTWIPS(e) ((e+317)/635) 23 # define TWIPStoEMU(t) (635*(t)) 24 25 typedef struct ShapePath 26 { 27 const char * spName; 28 short int spXSize; 29 short int spYSize; 30 short int spClosed; 31 short int spVertexCount; 32 Point2DI * spVertices; 33 } ShapePath; 34 35 /************************************************************************/ 36 /* */ 37 /* A shape arrow description as it appears in the shape description. */ 38 /* */ 39 /************************************************************************/ 40 41 typedef struct ShapeArrow 42 { 43 unsigned char saArrowHead; 44 # define DSarrowNONE 0 45 # define DSarrowARROW 1 46 # define DSarrowSTEALTH_ARROW 2 47 # define DSarrowDIAMOND 3 48 # define DSarrowOVAL 4 49 # define DSarrowOPEN_ARROW 5 50 # define DSarrowCHEVRON_ARROW 7 51 # define DSarrow2CHEVRON_ARROW 8 52 unsigned char saArrowWidth; 53 # define DSarrowNARROW 0 54 # define DSarrowMEDIUM 1 55 # define DSarrowWIDE 2 56 unsigned char saArrowLength; 57 # define DSarrowSHORT 0 58 /* define DSarrowMEDIUM 1 */ 59 # define DSarrowLONG 2 60 } ShapeArrow; 61 62 typedef struct ShapeDrawing 63 { 64 /************************************************/ 65 /* Position. */ 66 /************************************************/ 67 unsigned char sdXPosition; 68 unsigned char sdXReference; 69 unsigned char sdYPosition; 70 unsigned char sdYReference; 71 72 unsigned char sd_fUseShapeAnchor; 73 unsigned char sd_fLayoutInCell; 74 unsigned char sd_fAllowOverlap; 75 unsigned char sd_fChangePage; 76 77 /************************************************/ 78 /* Object Type */ 79 /************************************************/ 80 int sdShapeType; 81 int sdRotation; 82 83 int sdWrapDistLeftEmu; 84 int sdWrapDistTopEmu; 85 int sdWrapDistRightEmu; 86 int sdWrapDistBottomEmu; 87 88 long sdMasterShape; 89 long sdNextShape; 90 91 int sdXLimo; 92 int sdYLimo; 93 94 unsigned int sd_fIsBullet:1; 95 unsigned int sd_fFlipH:1; 96 unsigned int sd_fFlipV:1; 97 unsigned int sd_fBehindDocument:1; 98 unsigned int sd_fIsButton:1; 99 unsigned int sd_fHidden:1; 100 unsigned int sd_fReallyHidden:1; 101 unsigned int sd_fArrowheadsOK:1; 102 unsigned int sd_fBackground:1; 103 unsigned int sd_fDeleteAttachedObject:1; 104 unsigned int sd_fEditedWrap:1; 105 unsigned int sd_fHitTestFill:1; 106 unsigned int sd_fHitTestLine:1; 107 unsigned int sd_fInitiator:1; 108 unsigned int sd_fNoFillHitTest:1; 109 unsigned int sd_fNoHitTestPicture:1; 110 unsigned int sd_fNoLineDrawDash:1; 111 unsigned int sd_fOleIcon:1; 112 unsigned int sd_fOnDblClickNotify:1; 113 unsigned int sd_fOneD:1; 114 unsigned int sd_fPreferRelativeSize:1; 115 unsigned int sd_fPrint:1; 116 117 unsigned int sd_fPseudoInline:1; 118 119 /************************************************/ 120 /* Text box. */ 121 /************************************************/ 122 int sd_dxTextLeft; 123 int sd_dyTextTop; 124 int sd_dxTextRight; 125 int sd_dyTextBottom; 126 127 int sd_scaleText; 128 int sd_lTxid; 129 130 /** 131 * Text wrapping: 132 */ 133 # define SHAPEtextWRAP_SQUARE 0 134 # define SHAPEtextWRAP_TIGHT 1 135 # define SHAPEtextWRAP_NONE 2 136 # define SHAPEtextWRAP_TOP_BOTTOM 3 137 # define SHAPEtextWRAP_THROUGH 4 138 unsigned char sd_WrapText; 139 unsigned char sd_anchorText; 140 unsigned char sd_txflTextFlow; 141 unsigned char sd_cdirFont; 142 143 unsigned int sd_fAutoTextMargin:1; 144 unsigned int sd_fRotateText:1; 145 unsigned int sd_fSelectText:1; 146 unsigned int sd_fFitShapeToText:1; 147 unsigned int sd_fFitTextToShape:1; 148 149 /************************************************/ 150 /* Lock. */ 151 /************************************************/ 152 unsigned int sd_fLockRotation:1; 153 unsigned int sd_fLockAspectRatio:1; 154 unsigned int sd_fLockAgainstSelect:1; 155 unsigned int sd_fLockCropping:1; 156 unsigned int sd_fLockVerticies:1; 157 unsigned int sd_fLockText:1; 158 unsigned int sd_fLockAdjustHandles:1; 159 unsigned int sd_fLockAgainstGrouping:1; 160 unsigned int sd_fLockShapeType:1; 161 162 unsigned int sd_fLockPosition:1; 163 164 /************************************************/ 165 /* Grouped Shapes */ 166 /* */ 167 /* Relative position of children. */ 168 /* */ 169 /* Position of groups. Actually the positions */ 170 /* are given by shpleft,shpright, */ 171 /* shptop,shpbottom in a root shape. */ 172 /************************************************/ 173 DocumentRectangle sdRelRect; 174 175 int sdRelRotation; 176 long sdRegroupID; 177 178 DocumentRectangle sdGroupRect; 179 180 unsigned int sd_fRelChangePage:1; 181 unsigned int sd_fRelFlipH:1; 182 unsigned int sd_fRelFlipV:1; 183 184 /********************************************/ 185 /* Geometry */ 186 /********************************************/ 187 DocumentRectangle sdGeoRect; 188 long sdAdjustValue; 189 long sdAdjust2Value; 190 long sdAdjust3Value; 191 long sdAdjust4Value; 192 long sdAdjust5Value; 193 long sdAdjust6Value; 194 long sdAdjust7Value; 195 long sdAdjust8Value; 196 long sdAdjust9Value; 197 long sdAdjust10Value; 198 199 Point2DI * sdVertices; 200 int sdVertexCount; 201 Point2DI * sdWrapPolygonVertices; 202 int sdWrapPolygonVertexCount; 203 int * sdSegmentInfos; 204 int sdSegmentInfoCount; 205 206 /* 207 DSHPprop_pFragments, 208 DSHPprop_pGuides, 209 DSHPprop_pInscribe, 210 DSHPprop_pAdjustHandles, 211 */ 212 213 /************************************************/ 214 /* Fill. */ 215 /************************************************/ 216 unsigned char sdFillType; 217 # define DSfillSOLID 0 218 # define DSfillPATTERN 1 219 # define DSfillTEXTURE 2 220 # define DSfillCENTERED_PICTURE 3 221 # define DSfillSHADE_START_TO_END 4 222 # define DSfillSHADE_BOUNDS_TO_END 5 223 # define DSfillSHADE_OUTLINE_TO_END 6 224 # define DSfillSHADE_ANGLE 7 225 unsigned char sdFillblipflags; 226 unsigned char sdFillFocus; 227 unsigned char sdFillDztype; 228 unsigned char sdFillShadeType; 229 230 int sdFillOpacity; 231 int sdFillBackOpacity; 232 233 int sdFillWidthEmu; 234 int sdFillHeightEmu; 235 int sdFillAngle; 236 237 int sdFillToLeft; 238 int sdFillToTop; 239 int sdFillToRight; 240 int sdFillToBottom; 241 242 int sdFillOriginX; 243 int sdFillOriginY; 244 int sdFillShapeOriginX; 245 int sdFillShapeOriginY; 246 247 int sdFillRectLeftEmu; 248 int sdFillRectTopEmu; 249 int sdFillRectRightEmu; 250 int sdFillRectBottomEmu; 251 252 long sdFillShadePreset; 253 254 RGB8Color sdFillColor; 255 RGB8Color sdFillBackColor; 256 RGB8Color sdFillCrModColor; 257 258 unsigned int sd_fFilled:1; 259 unsigned int sd_fillShape:1; 260 unsigned int sd_fillUseRect:1; 261 unsigned int sd_fFillOK:1; 262 unsigned int sd_fFillShadeShapeOK:1; 263 264 /********************************************/ 265 /* Number/Flag: Line. */ 266 /********************************************/ 267 unsigned char sdLineType; 268 # define DSlineSOLID 0 269 # define DSlinePATTERN 1 270 # define DSlineTEXTURE 2 271 # define DSlinePICTURE 3 272 273 unsigned char sdLineFillBlipFlags; 274 275 int sdLineFillWidthEmu; 276 int sdLineFillHeightEmu; 277 int sdLineWidthEmu; 278 279 unsigned char sdLineStyle; 280 unsigned char sdLineDashing; 281 # define DSdashSOLID 0 282 # define DSdashDASHED 1 283 # define DSdashDOT 2 284 # define DSdashDASHDOT 3 285 # define DSdashDASHDOTDOT 4 286 # define DSdashDOT_X 6 287 # define DSdashDASHED_X 7 288 # define DSdashDASHED_L 8 289 # define DSdashDASHDOT_X 9 290 # define DSdashDASHDOT_L 10 291 # define DSdashDASHDOTDOT_L 11 292 # define DSdashHOLLOW 12/*do*/ 293 ShapeArrow sdLineHeadArrow; 294 ShapeArrow sdLineTailArrow; 295 unsigned char sdLineEndCapStyle; 296 unsigned char sdLineFillDztype; 297 unsigned char sdLineJoinStyle; 298 299 int sdLineMiterLimit; 300 301 RGB8Color sdLineColor; 302 RGB8Color sdLineBackColor; 303 RGB8Color sdLineCrModColor; 304 305 unsigned int sd_fLine:1; 306 unsigned int sd_fLineOK:1; 307 308 unsigned int sd_fLineUseShapeAnchor:1; 309 unsigned int sd_fColumnLineOK:1; 310 unsigned int sd_fColumnLine:1; 311 unsigned int sd_fLeftLine:1; 312 unsigned int sd_fTopLine:1; 313 unsigned int sd_fRightLine:1; 314 unsigned int sd_fBottomLine:1; 315 316 unsigned int sd_fColumnHitTestLine:1; 317 unsigned int sd_fLeftHitTestLine:1; 318 unsigned int sd_fTopHitTestLine:1; 319 unsigned int sd_fRightHitTestLine:1; 320 unsigned int sd_fBottomHitTestLine:1; 321 322 unsigned int sd_lineFillShape:1; 323 unsigned int sd_lineColumnFillShape:1; 324 unsigned int sd_lineLeftFillShape:1; 325 unsigned int sd_lineTopFillShape:1; 326 unsigned int sd_lineRightFillShape:1; 327 unsigned int sd_lineBottomFillShape:1; 328 329 unsigned int sd_fInsetPen:1; 330 unsigned int sd_fLeftInsetPen:1; 331 unsigned int sd_fTopInsetPen:1; 332 unsigned int sd_fRightInsetPen:1; 333 unsigned int sd_fBottomInsetPen:1; 334 335 /************************************************/ 336 /* Shadow. */ 337 /************************************************/ 338 unsigned char sdShadowType; 339 int sdShadowOpacity; 340 int sdShadowOffsetXEmu; 341 int sdShadowOffsetYEmu; 342 int sdShadowOffset2XEmu; 343 int sdShadowOffset2YEmu; 344 int sdShadowScaleXToX; 345 int sdShadowScaleYToX; 346 int sdShadowScaleXToY; 347 int sdShadowScaleYToY; 348 int sdShadowPerspectiveX; 349 int sdShadowPerspectiveY; 350 int sdShadowWeight; 351 int sdShadowOriginX; 352 int sdShadowOriginY; 353 354 unsigned int sd_fShadow:1; 355 unsigned int sd_fshadowObscured:1; 356 unsigned int sd_fshadowOK:1; 357 358 RGB8Color sdShadowColor; 359 RGB8Color sdShadowHighlightColor; 360 RGB8Color sdShadowCrModColor; 361 RGB8Color sdShadowc3DExtrusionColor; 362 RGB8Color sdShadowc3DCrModColor; 363 /************************************************/ 364 /* Connectors. */ 365 /************************************************/ 366 unsigned char sdConnectionSite; 367 unsigned char sdConnectionStyle; 368 369 /****************************************/ 370 371 int sd_shapePath; 372 373 int sd_cropFromLeft; 374 int sd_cropFromRight; 375 int sd_cropFromTop; 376 int sd_cropFromBottom; 377 } ShapeDrawing; 378 379 /************************************************************************/ 380 /* */ 381 /* Kinds of shape. */ 382 /* */ 383 /************************************************************************/ 384 385 typedef enum ShapeType 386 { 387 SHPtyFREE= -1, 388 389 SHPtyFREEFORM_OR_NON_AUTOSHAPE= 0, 390 SHPtyRECTANGLE= 1, 391 SHPtyROUND_RECTANGLE= 2, 392 SHPtyELLIPSE= 3, 393 SHPtyDIAMOND= 4, 394 SHPtyISOSCELES_TRIANGLE= 5, 395 SHPtyRIGHT_TRIANGLE= 6, 396 SHPtyPARALLELOGRAM= 7, 397 SHPtyTRAPEZOID= 8, 398 SHPtyHEXAGON= 9, 399 SHPtyOCTAGON= 10, 400 SHPtyPLUS_SIGN= 11, 401 SHPtySTAR= 12, 402 SHPtyARROW= 13, 403 SHPtyTHICK_ARROW= 14, 404 SHPtyHOME_PLATE= 15, 405 SHPtyCUBE= 16, 406 SHPtyBALLOON= 17, 407 SHPtySEAL= 18, 408 SHPtyARC= 19, 409 SHPtyLINE= 20, 410 SHPtyPLAQUE= 21, 411 SHPtyCAN= 22, 412 SHPtyDONUT= 23, 413 SHPtyTEXT_SIMPLE= 24, 414 SHPtyTEXT_OCTAGON= 25, 415 SHPtyTEXT_HEXAGON= 26, 416 SHPtyTEXT_CURVE= 27, 417 SHPtyTEXT_WAVE= 28, 418 SHPtyTEXT_RING= 29, 419 SHPtyTEXT_ON_CURVE= 30, 420 SHPtyTEXT_ON_RING= 31, 421 SHPtyCALLOUT_1= 41, 422 SHPtyCALLOUT_2= 42, 423 SHPtyCALLOUT_3= 43, 424 SHPtyACCENT_CALLOUT_1= 44, 425 SHPtyACCENT_CALLOUT_2= 45, 426 SHPtyACCENT_CALLOUT_3= 46, 427 SHPtyBORDER_CALLOUT_1= 47, 428 SHPtyBORDER_CALLOUT_2= 48, 429 SHPtyBORDER_CALLOUT_3= 49, 430 SHPtyACCENT_BORDER_CALLOUT_1= 50, 431 SHPtyACCENT_BORDER_CALLOUT_2= 51, 432 SHPtyACCENT_BORDER_CALLOUT_3= 52, 433 SHPtyRIBBON= 53, 434 SHPtyRIBBON2= 54, 435 SHPtyCHEVRON= 55, 436 SHPtyPENTAGON= 56, 437 SHPtyNO_SMOKING= 57, 438 SHPtySEAL8= 58, 439 SHPtySEAL16= 59, 440 SHPtySEAL32= 60, 441 SHPtyWEDGE_RECT_CALLOUT= 61, 442 SHPtyWEDGE_RRECT_CALLOUT= 62, 443 SHPtyWEDGE_ELLIPSE_CALLOUT= 63, 444 SHPtyWAVE= 64, 445 SHPtyFOLDED_CORNER= 65, 446 SHPtyLEFT_ARROW= 66, 447 SHPtyDOWN_ARROW= 67, 448 SHPtyUP_ARROW= 68, 449 SHPtyLEFT_RIGHT_ARROW= 69, 450 SHPtyUP_DOWN_ARROW= 70, 451 SHPtyIRREGULARSEAL1= 71, 452 SHPtyIRREGULARSEAL2= 72, 453 SHPtyLIGHTNING_BOLT= 73, 454 SHPtyHEART= 74, 455 SHPtyPICTURE_FRAME= 75, 456 SHPtyQUAD_ARROW= 76, 457 SHPtyLEFT_ARROW_CALLOUT= 77, 458 SHPtyRIGHT_ARROW_CALLOUT= 78, 459 SHPtyUP_ARROW_CALLOUT= 79, 460 SHPtyDOWN_ARROW_CALLOUT= 80, 461 SHPtyLEFT_RIGHT_ARROW_CALLOUT= 81, 462 SHPtyUP_DOWN_ARROW_CALLOUT= 82, 463 SHPtyQUAD_ARROW_CALLOUT= 83, 464 SHPtyBEVEL= 84, 465 SHPtyLEFT_BRACKET= 85, 466 SHPtyRIGHT_BRACKET= 86, 467 SHPtyLEFT_BRACE= 87, 468 SHPtyRIGHT_BRACE= 88, 469 SHPtyLEFT_UP_ARROW= 89, 470 SHPtyBENT_UP_ARROW= 90, 471 SHPtyBENT_ARROW= 91, 472 SHPtySEAL24= 92, 473 SHPtySTRIPED_RIGHT_ARROW= 93, 474 SHPtyNOTCHED_RIGHT_ARROW= 94, 475 SHPtyBLOCK_ARC= 95, 476 SHPtySMILEY_FACE= 96, 477 SHPtyVERTICAL_SCROLL= 97, 478 SHPtyHORIZONTAL_SCROLL= 98, 479 SHPtyCIRCULAR_ARROW= 99, 480 SHPtyNOTCHED_CIRCULAR_ARROW= 100, 481 SHPtyUTURN_ARROW= 101, 482 SHPtyCURVED_RIGHT_ARROW= 102, 483 SHPtyCURVED_LEFT_ARROW= 103, 484 SHPtyCURVED_UP_ARROW= 104, 485 SHPtyCURVED_DOWN_ARROW= 105, 486 SHPtyCLOUD_CALLOUT= 106, 487 SHPtyELLIPSE_RIBBON= 107, 488 SHPtyELLIPSE_RIBBON_2= 108, 489 SHPtyFLOW_CHART_PROCESS= 109, 490 SHPtyFLOW_CHART_DECISION= 110, 491 SHPtyFLOW_CHART_INPUT_OUTPUT= 111, 492 SHPtyFLOW_CHART_PREDEFINED_PROCESS= 112, 493 SHPtyFLOW_CHART_INTERNAL_STORAGE= 113, 494 SHPtyFLOW_CHART_DOCUMENT= 114, 495 SHPtyFLOW_CHART_MULTIDOCUMENT= 115, 496 SHPtyFLOW_CHART_TERMINATOR= 116, 497 SHPtyFLOW_CHART_PREPARATION= 117, 498 SHPtyFLOW_CHART_MANUAL_INPUT= 118, 499 SHPtyFLOW_CHART_MANUAL_OPERATION= 119, 500 SHPtyFLOW_CHART_CONNECTOR= 120, 501 SHPtyFLOW_CHART_PUNCHED_CARD= 121, 502 SHPtyFLOW_CHART_PUNCHED_TAPE= 122, 503 SHPtyFLOW_CHART_SUMMING_JUNCTION= 123, 504 SHPtyFLOW_CHART_OR= 124, 505 SHPtyFLOW_CHART_COLLATE= 125, 506 SHPtyFLOW_CHART_SORT= 126, 507 SHPtyFLOW_CHART_EXTRACT= 127, 508 SHPtyFLOW_CHART_MERGE= 128, 509 SHPtyFLOW_CHART_OFFLINE_STORAGE= 129, 510 SHPtyFLOW_CHART_ONLINE_STORAGE= 130, 511 SHPtyFLOW_CHART_MAGNETIC_TAPE= 131, 512 SHPtyFLOW_CHART_MAGNETIC_DISK= 132, 513 SHPtyFLOW_CHART_MAGNETIC_DRUM= 133, 514 SHPtyFLOW_CHART_DISPLAY= 134, 515 SHPtyFLOW_CHART_DELAY= 135, 516 SHPtyTEXT_PLAIN_TEXT= 136, 517 SHPtyTEXT_STOP= 137, 518 SHPtyTEXT_TRIANGLE= 138, 519 SHPtyTEXT_TRIANGLE_INVERTED= 139, 520 SHPtyTEXT_CHEVRON= 140, 521 SHPtyTEXT_CHEVRON_INVERTED= 141, 522 SHPtyTEXT_RING_INSIDE= 142, 523 SHPtyTEXT_RING_OUTSIDE= 143, 524 SHPtyTEXT_ARCH_UP_CURVE= 144, 525 SHPtyTEXT_ARCH_DOWN_CURVE= 145, 526 SHPtyTEXT_CIRCLE_CURVE= 146, 527 SHPtyTEXT_BUTTON_CURVE= 147, 528 SHPtyTEXT_ARCH_UP_POUR= 148, 529 SHPtyTEXT_ARCH_DOWN_POUR= 149, 530 SHPtyTEXT_CIRCLE_POUR= 150, 531 SHPtyTEXT_BUTTON_POUR= 151, 532 SHPtyTEXT_CURVE_UP= 152, 533 SHPtyTEXT_CURVE_DOWN= 153, 534 SHPtyTEXT_CASCADE_UP= 154, 535 SHPtyTEXT_CASCADE_DOWN= 155, 536 SHPtyTEXT_WAVE1= 156, 537 SHPtyTEXT_WAVE2= 157, 538 SHPtyTEXT_WAVE3= 158, 539 SHPtyTEXT_WAVE4= 159, 540 SHPtyTEXT_INFLATE= 160, 541 SHPtyTEXT_DEFLATE= 161, 542 SHPtyTEXT_INFLATE_BOTTOM= 162, 543 SHPtyTEXT_DEFLATE_BOTTOM= 163, 544 SHPtyTEXT_INFLATE_TOP= 164, 545 SHPtyTEXT_DEFLATE_TOP= 165, 546 SHPtyTEXT_DEFLATE_INFLATE= 166, 547 SHPtyTEXT_DEFLATE_INFLATE_DEFLATE= 167, 548 SHPtyTEXT_FADE_RIGHT= 168, 549 SHPtyTEXT_FADE_LEFT= 169, 550 SHPtyTEXT_FADE_UP= 170, 551 SHPtyTEXT_FADE_DOWN= 171, 552 SHPtyTEXT_SLANT_UP= 172, 553 SHPtyTEXT_SLANT_DOWN= 173, 554 SHPtyTEXT_CAN_UP= 174, 555 SHPtyTEXT_CAN_DOWN= 175, 556 SHPtyFLOW_CHART_ALTERNATE_PROCESS= 176, 557 SHPtyFLOW_CHART_OFF_PAGE_CONNECTOR= 177, 558 SHPtyCALLOUT_90= 178, 559 SHPtyACCENT_CALLOUT_90= 179, 560 SHPtyBORDER_CALLOUT_90= 180, 561 SHPtyACCENT_BORDER_CALLOUT_90= 181, 562 SHPtyLEFT_RIGHT_UP_ARROW= 182, 563 SHPtySUN= 183, 564 SHPtyMOON= 184, 565 SHPtyBRACKET_PAIR= 185, 566 SHPtyBRACE_PAIR= 186, 567 SHPtySEAL4= 187, 568 SHPtyDOUBLE_WAVE= 188, 569 SHPtyHOST_CONTROL= 201, 570 SHPtyTEXT_BOX= 202, 571 572 SHPtyUNKNOWN, 573 SHPtyGROUP, 574 SHPtyPICPROP, 575 576 SHPty_COUNT 577 } ShapeType; 578 579 /************************************************************************/ 580 /* */ 581 /* Descriptions of shapes. */ 582 /* */ 583 /************************************************************************/ 584 585 extern const ShapePath SP_33; 586 extern const ShapePath SP_34; 587 extern const ShapePath SP_LINE; 588 extern const ShapePath SP_RECTANGLE; 589 extern const ShapePath SP_DIAMOND; 590 extern const ShapePath SP_ISOSCELES_TRIANGLE; 591 extern const ShapePath SP_RIGHT_TRIANGLE; 592 extern const ShapePath SP_PARALLELOGRAM; 593 extern const ShapePath SP_TRAPEZOID; 594 extern const ShapePath SP_HEXAGON; 595 extern const ShapePath SP_OCTAGON; 596 extern const ShapePath SP_PLUS_SIGN; 597 extern const ShapePath SP_ARROW; 598 extern const ShapePath SP_NOTCHED_RIGHT_ARROW; 599 extern const ShapePath SP_HOME_PLATE; 600 extern const ShapePath SP_CHEVRON; 601 extern const ShapePath SP_LEFT_ARROW; 602 extern const ShapePath SP_RIGHT_ARROW_CALLOUT; 603 extern const ShapePath SP_LEFT_ARROW_CALLOUT; 604 extern const ShapePath SP_UP_ARROW_CALLOUT; 605 extern const ShapePath SP_LEFT_RIGHT_ARROW_CALLOUT; 606 extern const ShapePath SP_UP_DOWN_ARROW_CALLOUT; 607 extern const ShapePath SP_DOWN_ARROW_CALLOUT; 608 extern const ShapePath SP_QUAD_ARROW_CALLOUT; 609 extern const ShapePath SP_LEFT_RIGHT_ARROW; 610 extern const ShapePath SP_UP_ARROW; 611 extern const ShapePath SP_DOWN_ARROW; 612 extern const ShapePath SP_UP_DOWN_ARROW; 613 extern const ShapePath SP_QUAD_ARROW; 614 extern const ShapePath SP_LEFT_RIGHT_UP_ARROW; 615 extern const ShapePath SP_LEFT_UP_ARROW; 616 extern const ShapePath SP_BENT_UP_ARROW; 617 extern const ShapePath SP_PENTAGON; 618 extern const ShapePath SP_FLOW_CHART_PUNCHED_CARD; 619 extern const ShapePath SP_FLOW_CHART_MANUAL_INPUT; 620 extern const ShapePath SP_FLOW_CHART_OFF_PAGE_CONNECTOR; 621 extern const ShapePath SP_WEDGE_RECT_CALLOUT; 622 extern const ShapePath SP_STAR; 623 extern const ShapePath SP_SEAL4; 624 extern const ShapePath SP_FLOW_CHART_MERGE; 625 626 /************************************************************************/ 627 /* */ 628 /* Routine declarations. */ 629 /* */ 630 /************************************************************************/ 631 632 extern void docInitShapeArrow( ShapeArrow * sa ); 633 634 extern void docInitShapeDrawing( ShapeDrawing * sd ); 635 636 extern const char * docShapeTypeString( int shapeType ); 637 638 extern void docInitShapeDrawingAllocated( ShapeDrawing * sd ); 639 640 extern int docCopyShapeDrawing( ShapeDrawing * to, 641 const ShapeDrawing * from ); 642 643 extern void docCleanShapeDrawing( ShapeDrawing * sd ); 644 645 extern int docSetShapeDrawingProperty( ShapeDrawing * sd, 646 int prop, 647 long arg ); 648 649 # endif /* DOC_SHAPE_DRAWING_H */ 650