35 #ifndef __IGRAPHICSPORT__ 36 #define __IGRAPHICSPORT__ 38 #include "GraphicsID.h" 43 #include "GraphicTypes.h" 44 #include "BravoForwardDecl.h" 54 #define __PORTSUPPORTSFIXED__ // The graphics port is moving from Fixed numbers to floats - this is here until we force it 66 enum AuxInfoObjectType
77 inline GPortAuxInfoParam(): fObjType( kNone ), fOPIInfo(nil), fTextStart(0), fTextSpan(0), fTint(0.0) {}
79 fObjType(objType), fOPIInfo(nil), fTextStart(0), fTextSpan(0), fTint(0.0) {}
85 inline void SetObjectType(AuxInfoObjectType bObjType) {fObjType = bObjType;}
90 inline void GetObjectType(AuxInfoObjectType* bObjType) {*bObjType = fObjType;}
158 AuxInfoObjectType fObjType;
161 TextIndex fTextStart ;
178 enum { kDefaultIID = IID_IGRAPHICSPORT };
181 virtual void Setup() = 0;
265 virtual void gsave() = 0;
327 virtual void setdash(int32 numDash,
float* dashArray,
float offset) = 0;
354 virtual void starttransparencygroup(
const PMRect& bounds, AGMColorSpace *cs, bool16 isolationgroup = kTrue, bool16 knockoutgroup = kFalse) = 0;
373 virtual void BeginGroup(
const PMString name, const_AIMDictionaryContainer* attrib ) = 0;
436 virtual void setgray(
const PMReal& gray) = 0;
440 virtual void setcolorspace(AGMColorSpace* colorSpace) = 0;
441 virtual void setcolorvalues(
const float* colorVals) = 0;
443 virtual void setgradient(AGMGradient *agmGrad,
const PMMatrix& grMatrix,
509 virtual void fill() = 0;
522 virtual void eofill() = 0;
535 virtual void stroke() = 0;
539 virtual void image(AGMImage *image,
const PMMatrix& imMatrix, int32 flags) = 0;
549 virtual void show(
const PMReal &x,
const PMReal &y, uint32 numUTF16s,
const textchar* text,
550 TextGraphicsFlags graphicsflags = kFillText,
551 bool16 verticalGlyphs = kFalse, bool16 wmodePositioning = kFalse) = 0;
552 #ifdef __PORTSUPPORTSFIXED__ 553 virtual void xshow(
const PMReal &x,
const PMReal &y, uint32 numGlyphs,
const int32 *glyphArray,
554 const Fixed* widths,
const Fixed* yoffsets = nil,
555 TextGraphicsFlags graphicsflags = kFillText,
556 bool16 verticalGlyphs = kFalse, bool16 wmodePositioning = kFalse,
557 uint32 numChars = 0,
const textchar* text = nil,
560 virtual void xshow(
const PMReal &x,
const PMReal &y, uint32 numGlyphs,
const int32 *glyphArray,
561 const float* widths,
const float* yoffsets = nil,
562 TextGraphicsFlags graphicsflags = kFillText,
563 bool16 verticalGlyphs = kFalse, bool16 wmodePositioning = kFalse,
564 uint32 numChars = 0,
const textchar* text = nil,
569 TextGraphicsFlags graphicsflags = kFillText,
570 bool16 verticalGlyphs = kFalse) = 0;
587 virtual void selectfont(
IPMFont *font,
const PMReal& ptSize) = 0;
600 virtual void clip() = 0;
613 virtual void eoclip() = 0;
614 virtual void strokepath_clip() = 0;
616 virtual void rectclip(
const PMRect &r) = 0;
618 virtual void rectfill(
const PMRect &r) = 0;
620 virtual void rectstroke(
const PMRect &r) = 0;
622 virtual void rectpath(
const PMRect &r) = 0;
633 virtual void AddComment(int32 comment,
void *commentData, int32 length) = 0;
638 virtual IDrawMgr *PortDrawMgr() = 0;
650 virtual void show(
const CCTTextList& textList, int32 flags,
const PMMatrix* matrix = 0 )
const = 0;
687 virtual void FillPath(AGMPath *path) = 0;
707 virtual void ClipPath(AGMPath *path) = 0;