InDesign SDK  20.5
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
IParaRulesAdornmentData.h
1 //========================================================================================
2 //
3 // $File$
4 //
5 // Owner: Ric Kamicar
6 //
7 // $Author$
8 //
9 // $DateTime$
10 //
11 // $Revision$
12 //
13 // $Change$
14 //
15 // Copyright 1997-2010 Adobe Systems Incorporated. All rights reserved.
16 //
17 // NOTICE: Adobe permits you to use, modify, and distribute this file in accordance
18 // with the terms of the Adobe license agreement accompanying it. If you have received
19 // this file from a source other than Adobe, then your use, modification, or
20 // distribution of it requires the prior written permission of Adobe.
21 //
22 //========================================================================================
23 
24 #ifndef __IParaRulesAdornmentData__
25 #define __IParaRulesAdornmentData__
26 
27 #include "IPMUnknown.h"
28 #include "TextAttrID.h" // for IID_IPARARULESADORNMENTDATA
29 #include "ITextAttrStrokeType.h"
30 
31 class PMPoint;
32 class PMReal;
33 
34 
35 
40 {
41  public:
42  enum { kDefaultIID = IID_IPARARULESADORNMENTDATA };
43 
44 
56  virtual void SetLineCharacteristics(bool16 above, UID color, const PMReal& tint, const PMReal& weight,
57  bool16 overprint, const ICompositionStyle::StrokeType& strokeType,
58  UID gapColor, const PMReal& gapTint, bool16 gapOverprint) = 0;
59 
64  virtual void AddLineSegment( const PMPoint& position, const PMReal& length ) = 0 ;
65 
71  virtual void SetTransform( const PMMatrix& mat ) = 0 ;
72  virtual void SetNoLine() = 0;
73 
74  virtual int32 GetNumSegments() const = 0 ;
75  virtual const PMPoint& GetNthPosition( int32 n ) const = 0 ;
76  virtual const PMReal& GetNthLength( int32 n ) const = 0 ;
77 
78  virtual const PMReal& GetWeight() const = 0;
79  virtual bool16 GetOverprint() const = 0;
80  virtual const PMReal& GetTint() const = 0;
81  virtual UID GetColor() const = 0;
82  virtual ICompositionStyle::StrokeType GetStrokeType() const = 0;
83  virtual bool16 GetAbove() const = 0;
84  virtual bool16 GetGapOverprint() const = 0;
85  virtual const PMReal& GetGapTint() const = 0;
86  virtual UID GetGapColor() const = 0;
87 
88  virtual PMReal GetRuleOffset() const = 0;
89 
90  virtual const PMMatrix& GetTransform() const = 0 ;
91  //We're an adornment on the first leaf waxrun on the waxline (see QueryParagraphRulesData in HLAdornments.cpp).
92  //The port is in the waxrun's owner's coords at adornment draw time. We need to back out the matrix in the port
93  //to waxline coords, then restore it after we draw our rule (see TextAdornmentParagraphRules::Draw).
94 };
95 
96 #endif