InDesign SDK  20.5
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
IObjectAttributeList.h
1 //========================================================================================
2 //
3 // $File$
4 //
5 // Owner: Yeming Liu
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 // Comments: This file is the same as ITextAttributes.h.
24 // TODO: We should clean them up and make it as a base interface.
25 //
26 //========================================================================================
27 
28 
29 #ifndef __IObjectAttributeList__
30 #define __IObjectAttributeList__
31 
32 // ----- Interface files -----
33 
34 #include "IPMUnknown.h"
35 
36 // ----- ID files -----
37 
38 #include "GenericID.h"
39 
40 class AttributeBossList;
41 
45 {
46  public:
47  enum { kDefaultIID = IID_IOBJECTATTRIBUTELIST };
48 
52  virtual int32 CountBosses() const = 0;
53 
58  virtual ClassID GetClassN(int32 n) const = 0;
59 
65  virtual const IPMUnknown* QueryBossN(int32 n, PMIID id) const = 0;
66 
72  virtual const IPMUnknown* QueryByClassID(ClassID c, PMIID prop) const = 0;
73 
78  virtual void ApplyAttribute(const IPMUnknown *newone, ClassID attrCls = kInvalidClass) = 0;
79 
83  virtual void ApplyAttributes(const AttributeBossList *other) = 0;
84 
88  virtual void ClearOverride(ClassID id) = 0;
89 
93  virtual void ClearOverrides(const AttributeBossList *list) = 0;
94 
97  virtual void ClearAllOverrides() = 0;
98 
103  virtual bool16 ContainsAttribute(ClassID classID) const = 0;
104 
108  virtual const AttributeBossList* GetBossList() const = 0;
109 };
110 
111 #endif // __IObjectAttributeList__