InDesign SDK  20.5
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
ISwatchList.h
1 //========================================================================================
2 //
3 // $File$
4 //
5 // Owner: SusanCL, Jack Kirstein
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 // Purpose of Interface:
24 // This is a simple interface designed to hold a list of swatches
25 // or ui colors stored in the workspaces (documents or app).
26 // The swatches can be any rendering objects such as solid colors and gradients.
27 //
28 // Add more Find__ methods as more rendering objects are implmented.
29 //
30 //========================================================================================
31 
32 #ifndef __ISwatchList__
33 #define __ISwatchList__
34 
35 #include "IPMUnknown.h"
36 #include "ColorSystemID.h"
37 #include "IColorData.h"
38 #include "IGradientFill.h"
39 #include "PMString.h"
40 
41 class UIDList;
42 
63 class ISwatchList : public IPMUnknown
64 {
65  public:
66  enum {kDefaultIID = IID_ISWATCHLIST};
67 
70  virtual void Init() = 0;
71 
77  virtual UIDRef FindSwatch(const PMString& name) const = 0;
78 
85  virtual UIDRef FindSwatch(const int32& colorSpace, const ColorArray& colorArray ) const = 0;
86 
93  virtual UIDRef FindSwatch( IColorData* colorData ) const = 0;
94 
101  virtual UIDRef FindSwatch( IGradientFill* gradient ) const = 0;
102 
107  virtual int32 SwatchLocation (const UID& swatchUID ) const = 0;
108 
113  virtual int32 VisibleSwatchLocation (const UID& swatch) const = 0;
114 
119  virtual int32 GetNumSwatches() const = 0;
120 
124  virtual int32 GetNumVisibleSwatches() const = 0;
125 
129  virtual int32 GetNumNamedSwatches() const = 0;
130 
136  virtual UIDRef GetNthSwatch(int32 index) const = 0;
137 
145  virtual UIDRef GetNthVisibleSwatch(int32 index) const = 0;
146 
155  virtual UIDRef GetNthNamedSwatch(int32 index) const = 0;
156 
161  virtual void AddSwatch(const UID& swatch ) = 0;
162 
167  virtual void RemoveSwatch(const UID& swatch) = 0;
168 
173  virtual void RemoveSwatch(const UIDList* itemList) = 0;
174 
179  virtual void Move(int32 fromIndex, int32 toIndex ) = 0;
180 
184  virtual void SortVisibleSwatchesByName () = 0;
185 
189  virtual UID GetBlackSwatchUID () const = 0;
193  virtual UID GetPaperSwatchUID () const = 0;
197  virtual UID GetRegistrationSwatchUID () const = 0;
201  virtual UID GetNoneSwatchUID () const = 0;
202 
203  enum {kNotFound = -1};
204 };
205 
206 #endif