InDesign SDK  20.5
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
ITextVariable.h
1 //========================================================================================
2 //
3 // $File$
4 //
5 // Owner: rkamicar
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 // The ITextVariable interface allows installable text variables.
24 //
25 //========================================================================================
26 
27 #ifndef __ITEXTVARIABLE__
28 #define __ITEXTVARIABLE__
29 
30 #include "IPMUnknown.h"
31 #include "TextID.h"
32 #include "RequestContext.h"
33 #include "TextVariableInfo.h"
34 
35 class PMString;
36 class IDataBase;
37 
64 class ITextVariable : public IPMUnknown
65 {
66 public:
67  enum { kDefaultIID = IID_ITEXTVARIABLE };
68 
72  {
73  kSection = 0,
74  kDocument
75  };
76 
79  enum UseStyles
80  {
81  kFirstInPage = 0,
82  kLastInPage,
83  };
84 
88  virtual const WideString& GetName() const =0;
89 
92  virtual void SetName(const WideString &s) =0;
93 
97  virtual const WideString& GetContents() = 0;
98 
102  virtual void SetContents(const WideString &s) = 0;
103 
106  virtual const ClassID GetBaseTypeID() const = 0;
107 
110  virtual void SetBaseTypeID(ClassID id) = 0;
111 
114  virtual const ClassID GetFormatterID() = 0;
115 
118  virtual void SetFormatterID(ClassID id)= 0;
119 
122  virtual const UID GetUID() const = 0;
123 
126  virtual void SetUID(UID uid) =0;
127 
130  virtual const WideString& GetTextBefore() = 0;
131 
134  virtual void SetTextBefore(const WideString &s) = 0;
135 
138  virtual const WideString& GetTextAfter() = 0;
139 
142  virtual void SetTextAfter(const WideString &s) = 0;
143 
146  virtual ScopeStyles GetScope() const = 0;
147 
150  virtual void SetScope(ScopeStyles scope) = 0;
151 
154  virtual UseStyles GetUse() const = 0;
155 
158  virtual void SetUse(UseStyles use) = 0;
159 
160  /* Get Delete End Punctuation
161  */
162  virtual bool16 GetDeleteEndPunctuation() const = 0;
163 
164  /* Set Delete End Punctuation
165  */
166  virtual void SetDeleteEndPunctuation(bool16 b) = 0;
167 
170  virtual bool16 GetIncludeExtension() const = 0;
171 
174  virtual void SetIncludePath(bool16 b) = 0;
175 
178  virtual bool16 GetIncludePath() const = 0;
179 
182  virtual void SetIncludeExtension(bool16 b) = 0;
183 
186  virtual bool16 GetEmperorDate() const = 0;
187 
190  virtual void SetEmperorDate(bool16 b) = 0;
191 
195  virtual int32 GetFlags() const = 0;
196 
200  virtual void SetFlags(int32 flags) = 0;
201 
208  virtual void VariableToString(const UIDRef& target, WideString& s, bool16 uniformApproximateWidth = kFalse) = 0;
209 
213  virtual void GetVariableTypeName(WideString &typeName) const = 0;
214 
218  virtual ScriptID GetTextVariableTypeScriptID( const ScriptInfo::RequestContext& context ) const = 0;
219 
223  virtual ScriptID GetTextVariableOptionsScriptID( const ScriptInfo::RequestContext& context ) const = 0;
224 
230  virtual ServiceID GetFormatterServiceProviderID() const = 0;
231 
236  virtual bool16 IsEquivalent(const ITextVariable *other) const = 0;
237 
244  virtual bool16 IsPrivate() const = 0;
245 
250  virtual void Get(AddVariableInfo& info) const = 0;
251 
256  virtual void Set(const AddVariableInfo& info) = 0;
257 
258 };
259 
260 #endif // __ITEXTVARIABLE__