InDesign SDK  20.5
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
SLCInlineGraphicGlyphNode.h
1 //========================================================================================
2 //
3 // $File$
4 //
5 // Owner: Adobe Developer Technologies
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 __SLCInlineGraphicGlyphNode_h__
25 #define __SLCInlineGraphicGlyphNode_h__
26 
27 class IComposeScanner;
28 class IDrawingStyle;
29 class IWaxLine;
30 class IWaxRun;
31 class IFontInstance;
32 class PMRect;
33 
34 #include "SLCGlyphNode.h"
35 
45 {
46 public:
54  IDrawingStyle* drawingStyle,
55  TextIndex startingIndex,
56  const PMReal& xOffset);
57 
60  virtual ~SLCInlineGraphicGlyphNode(void);
61 
67  virtual SLComposerStatusCode GetGlyph(const UTF32TextChar& character,
68  Text::GlyphID& glyphID,
69  PMReal& glyphWidth);
70 
74  virtual SLComposerStatusCode BufferGlyph(const UTF32TextChar& character,
75  const Text::GlyphID& glyphID,
76  const PMReal& glyphWidth);
77 
80  virtual PMReal GetWidth(void) const
81  {
82  return fInlineBoundingBox.Width();
83  }
84 
89  {
90  return kCompSuccess;
91  }
92 
96  virtual bool16 GetTrailingWhiteSpaceWidth(PMReal& width) const
97  {
98  width = PMReal(0.0); return kFalse;
99  }
100 
104  virtual bool16 FitTrailingWhiteSpace(const PMReal& widthScaleFactor)
105  {
106  return kFalse;
107  }
108 
111  virtual SLComposerStatusCode CreateWax(const IWaxLine* waxLine) const;
112 
115  virtual IWaxRun* CreateWaxRun(void) const;
116 
117 private:
123  SLComposerStatusCode GetInlineGraphic(PMReal& glyphWidth);
124 
129  void SetHeight(const PMReal& height);
130 
133  UIDRef fInlineUIDRef;
134 
137  PMRect fInlineBoundingBox;
138 };
139 
140 #endif // __SLCInlineGraphicGlyphNode_h__
141 
142 // End, SLCInlineGraphicGlyphNode.h
143