InDesign SDK  20.5
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
CPageItemAdaptiveTransform.h
1 //========================================================================================
2 //
3 // $File$
4 //
5 // Owner: Sachin Singhal
6 //
7 // $Author$
8 //
9 // $DateTime$
10 //
11 // $Revision$
12 //
13 // $Change$
14 //
15 // ADOBE CONFIDENTIAL
16 //
17 // Copyright 1997-2018 Adobe Systems Incorporated. All rights reserved.
18 //
19 // NOTICE: All information contained herein is, and remains
20 // the property of Adobe Systems Incorporated and its suppliers,
21 // if any. The intellectual and technical concepts contained
22 // herein are proprietary to Adobe Systems Incorporated and its
23 // suppliers and may be covered by U.S. and Foreign Patents,
24 // patents in process, and are protected by trade secret or copyright law.
25 // Dissemination of this information or reproduction of this material
26 // is strictly forbidden unless prior written permission is obtained
27 // from Adobe Systems Incorporated.
28 //
29 //========================================================================================
30 #ifndef __CPAGEITEMADAPTIVETRANSFORM__
31 #define __CPAGEITEMADAPTIVETRANSFORM__
32 
33 #include "IAdaptiveTransform.h"
34 #include "IAdaptiveTransientData.h"
35 #include "IGeometryFacade.h"
36 
37 class CPageItemAdaptiveTransform : public CPMUnknown<IAdaptiveTransform>
38 {
39  enum STAGE
40  {
41  PREPROCESS,
42  PROCESS,
43  POSTPROCESS,
44  FINISH
45  };
46 public:
48  virtual ~CPageItemAdaptiveTransform();
49 
55  virtual ErrorCode PreProcess();
56 
61  virtual ErrorCode Process();
62 
67  virtual ErrorCode PostProcess();
68 
72  virtual void Finish();
73 
74 protected:
85  virtual ErrorCode PreProcessThis();
86 
90  virtual ErrorCode ProcessThis();
91 
95  virtual ErrorCode PostProcessThis();
96 
99  virtual void FinishThis();
100 
104  virtual ErrorCode ProcessDependents(CPageItemAdaptiveTransform::STAGE stage);
105 
109  virtual UIDList CollectDependents();
110 
115  virtual ErrorCode Resize();
116 
121  virtual ErrorCode Reposition();
122 
125  virtual void MaintainAspectRatioIfNeeded();
126 
130  virtual bool16 ShouldHandleHidden();
131 
135  virtual bool16 ShouldHandleLocked();
136 
140  virtual bool16 ShouldHandleText();
141 
146 
150  virtual bool16 ShouldMaintainAspectRatioForThis();
151 
156  virtual bool16 ShouldProcessThis();
157 
158  virtual std::set<PMReal> GetAllFontsSizes() { return std::set<PMReal>(); }
159  virtual ErrorCode ResizeXPEffects();
160  virtual void AdaptTextOnPath();
161 
162  AdapativePageItemData * fData;
163 private:
167  ErrorCode UnlockIfNeeded();
168 
172  ErrorCode LockIfNeeded();
173 
177  bool16 IsCurrentItemHidden();
178 
182  bool16 IsCurrentItemLocked();
183 };
184 
185 #endif