InDesign SDK  20.5
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
IStrokeFillControlData.h
1 //========================================================================================
2 //
3 // $File$
4 //
5 // Owner: Michael_Martz
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 _IStrokeFillControlData_
25 #define _IStrokeFillControlData_
26 //========================================================================================
27 //________________________________________________________________________________________
28 // INCLUDES
29 //________________________________________________________________________________________
30  #include "IPMUnknown.h"
31  #include "ToolboxProxyTypes.h"
32  #include "ColorSystemID.h"
33 //========================================================================================
34 //________________________________________________________________________________________
35 // CLASS DECLARATION
36 //________________________________________________________________________________________
37 
44  {
45  //________________________________________________________________________________
46  // Widget Layout
47  //________________________________________________________________________________
48  public:
49  enum { kDefaultIID = IID_ISTROKEFILLCONTROLDATA };
50 
53  virtual int16 GetStrokeFillWidth (void) = 0;
57  virtual void SetStrokeFillWidth (int16 width) = 0;
58 
61  virtual int16 GetStrokeFillHeight (void) = 0;
65  virtual void SetStrokeFillHeight (int16 height) = 0;
66 
69  virtual int16 GetStrokeFillOverlap (void) = 0;
74  virtual void SetStrokeFillOverlap (int16 overlapAmount) = 0;
75 
80  virtual int16 GetStrokeFillHiliteBorder(void) = 0;
84  virtual void SetStrokeFillHiliteBorder(int16 border) = 0;
85 
88  virtual int16 GetStrokeWidth (void) = 0;
92  virtual void SetStrokeWidth (int16 strokeWidth) = 0;
93 
96  virtual bool16 GetDraggable (void) = 0;
100  virtual void SetDraggable (bool16 isDraggable) = 0;
101 
104  typedef enum
105  {
116 
124  virtual void SetDisplayOption (IStrokeFillControlData::DisplayOptionType displayOption) = 0;
125 
129  virtual bool16 GetSwitchable (void) = 0;
130 
134  virtual void SetSwitchable (bool16 isSwitchable) = 0;
135 
136  //________________________________________________________________________________
137  // Active Item
138  //________________________________________________________________________________
139  public:
144  virtual ToolboxProxy::ActiveProxyType GetActive (void) = 0;
148  virtual void SetActive (ToolboxProxy::ActiveProxyType activeProxy) = 0;
149 
150  //________________________________________________________________________________
151  // Format of Data (either UID or meta data)
152  //________________________________________________________________________________
153  public:
158  virtual bool16 UseMetaData (void) = 0;
163  virtual void SetUseMetaData (bool16 usingMetaData) = 0;
164 
169  virtual bool16 UseFillMetaData (void) = 0;
174  virtual void SetFillUseMetaData (bool16 usingMetaData) = 0;
175 
180  virtual bool16 UseStrokeMetaData (void) = 0;
185  virtual void SetStrokeUseMetaData (bool16) = 0;
186  //________________________________________________________________________________
187  // Meta Data format
188  //________________________________________________________________________________
189  public:
193  virtual IPMUnknown* GetFillMetaData (void) = 0;
197  virtual void SetFillMetaData (IPMUnknown* fillMetaData) = 0;
198 
202  virtual IPMUnknown* GetStrokeMetaData (void) = 0;
206  virtual void SetStrokeMetaData (IPMUnknown* strokeMetaData) = 0;
207 
208  //________________________________________________________________________________
209  // UID format
210  //________________________________________________________________________________
211  public:
215  virtual UID GetFillUID (void) = 0;
219  virtual void SetFillUID (UID fillUID) = 0;
220 
224  virtual UID GetStrokeUID (void) = 0;
228  virtual void SetStrokeUID (UID strokeUID) = 0;
229 
233  virtual IDataBase* GetDataBase (void) = 0;
237  virtual void SetDataBase (IDataBase* iDataBase) = 0;
238 
241  virtual bool16 IsFillIndeterminate (void) = 0;
245  virtual void SetFillIndeterminate (bool16 setInderminant) = 0;
246 
249  virtual bool16 IsStrokeIndeterminate (void) = 0;
253  virtual void SetStrokeIndeterminate (bool16 setInderminant) = 0;
254 
257  virtual PMReal GetFillTint (void) = 0;
262  virtual void SetFillUIDAndTint (UID fillUID, const PMReal& fillTint = kInvalidTintPercent) = 0;
263 
264 
267  virtual PMReal GetStrokeTint (void) = 0;
272  virtual void SetStrokeUIDAndTint (UID strokeUID, const PMReal& strokeTint = kInvalidTintPercent) = 0;
273 
274  //________________________________________________________________________________
275  // Updating
276  //________________________________________________________________________________
277  public:
280  virtual void InvalidateView (void) = 0;
283  virtual void InvalidateStroke (void) = 0;
286  virtual void InvalidateFill (void) = 0;
287 
288  typedef enum
289  {
292  kNone = -1,
299  } PartCode;
300 
305  virtual IStrokeFillControlData::PartCode GetPartCode (const PMPoint& localPoint) const = 0;
306  };
307 
308 #endif // _IStrokeFillControlData_