InDesign SDK  20.5
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
IGraphicStateData.h
1 //========================================================================================
2 //
3 // $File$
4 //
5 // Owner: SusanCL
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 _IGraphicStateData_
25 #define _IGraphicStateData_
26 //========================================================================================
27 //________________________________________________________________________________________
28 // INCLUDES
29 //________________________________________________________________________________________
30  #include "GraphicStylesID.h"
31  #include "ShuksanID.h"
32 
33 //========================================================================================
34  #include "IGraphicAttributeSuite.h"
35 
36 //________________________________________________________________________________________
37 // Interface CLASS DECLARATIONS
38 //________________________________________________________________________________________
39 class GraphicTarget;
40 class IWorkspace;
41 
43  {
44  //____________________________________________________________________________________
45  // Data Types
46  //____________________________________________________________________________________
47  public:
48  enum { kDefaultIID = IID_IGRAPHICSTATE_DATA };
49 
50  enum TargetType
51  {
52  kCurrentTarget = -1,
53  kDefaultTarget = 0,
54  kEyedropperTarget
55  };
56 
57  public:
58  //____________________________________________________________________________________
59  // Initialization
60  //____________________________________________________________________________________
67  virtual ErrorCode Initialize (IWorkspace*) = 0;
68 
77  virtual ErrorCode Initialize (IWorkspace*, ClassID) = 0;
78 
86  virtual void InitializeDefaultFillRenderData (ClassID, UID) = 0;
87 
95  virtual void InitializeDefaultStrokeRenderData (ClassID, UID) = 0;
96 
100  virtual void InitializeDefaultAttributes (void) = 0;
101 
102  //____________________________________________________________________________________
103  // Defaults
104  //____________________________________________________________________________________
110  virtual ErrorCode AddGraphicDefaults (const UIDList*) = 0;
116  virtual ErrorCode AddTextFrameDefaults (const UIDList*) = 0;
122  virtual ErrorCode AddGraphicFrameDefaults (const UIDList*) = 0;
128  virtual ErrorCode AddGroupDefaults (const UIDList*) = 0;
129 
130  //____________________________________________________________________________________
131  // Attribute Utilities.
132  //____________________________________________________________________________________
141  virtual IPMUnknown* QueryAttribute (ClassID, const PMIID&, TargetType) = 0;
148  virtual ErrorCode AddAttribute (IPMUnknown*, TargetType) = 0;
156  virtual ErrorCode CopyIntoAttribute (IPMUnknown*, TargetType) = 0;
165  virtual ErrorCode RemoveAttribute (ClassID, TargetType) = 0;
166 
175  virtual ErrorCode RemoveAllAttributes (ClassID*, uint16, TargetType) = 0;
182  virtual ErrorCode AddMultAttributes (IGraphicStyleAttributeBossList*, TargetType) = 0;
188  virtual ErrorCode SwapStrokeAndFill (TargetType) = 0;
195  virtual ErrorCode SetAttributeList (IGraphicStyleAttributeBossList*, TargetType) = 0;
203 
204  //____________________________________________________________________________________
205  // Stroke/Fill utiltites
206  //____________________________________________________________________________________
214  virtual void SetFillClass (ClassID, TargetType) = 0;
222  virtual ClassID GetFillClass (TargetType) = 0;
230  virtual void SetStrokeClass (ClassID, TargetType) = 0;
238  virtual ClassID GetStrokeClass (TargetType) = 0;
239 
249  virtual ErrorCode UpdateFillRenderObjectUID (ClassID, UID, TargetType) = 0;
259  virtual ErrorCode UpdateStrokeRenderObjectUID (ClassID, UID, TargetType) = 0;
268  virtual UID GetFillRenderObjectUID (ClassID, TargetType) = 0;
277  virtual UID GetStrokeRenderObjectUID (ClassID, TargetType) = 0;
278 
279  //____________________________________________________________________________________
280  // The following two calls are used internally.
281  //____________________________________________________________________________________
287  virtual GraphicTarget* GetTarget (TargetType) = 0;
288 
292  virtual void MarkPreDirty (void) = 0;
293 
294  };
295 #endif // _IGraphicStateData_
296 
297