InDesign SDK  20.5
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
IFootnoteSettings.h
1 //========================================================================================
2 //
3 // $File$
4 //
5 // Owner:
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 __IFootnoteSettings__
25 #define __IFootnoteSettings__
26 
28 #define kMinStartingFootnoteNumber 1
29 
31 #define kMaxStartingFootnoteNumber 100000
32 
33 #ifndef __ODFRC__ // when used for core resource compilation, provide just the parameter range constants
34 
35 #include "IPMUnknown.h"
36 #include "TextID.h"
37 #include "CTextEnum.h"
38 #include "ITextAttrStrokeType.h"
39 
40 class PMString;
41 
46 {
47 public:
48  enum { kDefaultIID = IID_IFOOTNOTESETTINGS };
49 
52  typedef enum { kDontRestart, kPageRestart, kSpreadRestart, kSectionRestart, kUnknown } RestartNumberingOptions;
53 
57  typedef enum { kNew, kContinuing } FootnoteRuleKind;
58 
63  typedef enum { kPrefixSuffixNone, kPrefixSuffixReference, kPrefixSuffixMarker, kPrefixSuffixBoth } SuffixPrefixUsageOptions;
64 
68  typedef enum { kPositionNormal, kPositionSuperscript, kPositionSubscript, kPositionRuby } MarkerPositionOptions;
69 
72  virtual RestartNumberingOptions GetRestartOption() const = 0;
75  virtual void SetRestartOption(RestartNumberingOptions option) = 0;
76 
79  virtual int32 GetStartingNumber() const = 0;
82  virtual void SetStartingNumber(int32 n) = 0;
83 
86  virtual ClassID GetNumberingMethod() const = 0;
89  virtual void SetNumberingMethod(ClassID whichMethod) = 0;
90 
93  virtual const WideString& GetMarkerPrefix() const = 0;
96  virtual void SetMarkerPrefix(const WideString& pre) = 0;
97 
100  virtual const WideString& GetMarkerSuffix() const = 0;
103  virtual void SetMarkerSuffix(const WideString& suf) = 0;
104 
110  virtual void SetPrefixSuffixUsage(SuffixPrefixUsageOptions options) = 0;
111 
115  virtual UID GetFootnoteMarkerStyle() const = 0;
119  virtual void SetFootnoteMarkerStyle(UID s) = 0;
120 
123  virtual MarkerPositionOptions GetMarkerPositioning() const = 0;
126  virtual void SetMarkerPositioning(MarkerPositionOptions positioning) = 0;
127 
130  virtual UID GetFootnoteParagraphStyle() const = 0;
133  virtual void SetFootnoteParagraphStyle(UID s) = 0;
134 
137  virtual const WideString& GetFootnoteSeparator() const = 0;
140  virtual void SetFootnoteSeparator(const WideString& sep) = 0;
141 
144  virtual PMReal GetSpaceBetween() const = 0;
147  virtual void SetSpaceBetween(PMReal g) = 0;
148 
151  virtual PMReal GetSpacerHeight() const = 0;
154  virtual void SetSpacerHeight(PMReal g) = 0;
155 
158  virtual Text::FirstLineOffsetMetric GetFirstLineOffset() const = 0;
161  virtual void SetFirstLineOffset(Text::FirstLineOffsetMetric flo) = 0;
162 
165  virtual PMReal GetMinFirstLineOffset() const = 0;
168  virtual void SetMinFirstLineOffset(PMReal g) = 0;
169 
172  virtual bool16 GetEndOfStoryPlacement() const = 0;
175  virtual void SetEndOfStoryPlacement(bool16 b) = 0;
176 
179  virtual bool16 GetNoSplitting() const = 0;
182  virtual void SetNoSplitting(bool16 b) = 0;
183 
186  virtual bool16 GetStraddlingInfo() const = 0;
189  virtual void SetStraddlingInfo(bool16 b) = 0;
190 
193  virtual bool16 GetSeparatorLineOn(FootnoteRuleKind k) const = 0;
196  virtual void SetSeparatorLineOn(FootnoteRuleKind k, bool16 b) = 0;
197 
200  virtual PMReal GetWeightStroke(FootnoteRuleKind k) const = 0;
203  virtual void SetWeightStroke(FootnoteRuleKind k, PMReal g) = 0;
204 
213 
216  virtual PMReal GetIndentLeft(FootnoteRuleKind k) const = 0;
219  virtual void SetIndentLeft(FootnoteRuleKind k, PMReal g) = 0;
220 
223  virtual PMReal GetWidth(FootnoteRuleKind k) const = 0;
226  virtual void SetWidth(FootnoteRuleKind k, PMReal g) = 0;
227 
230  virtual PMReal GetOffset(FootnoteRuleKind k) const = 0;
233  virtual void SetOffset(FootnoteRuleKind k, PMReal g) = 0;
234 
237  virtual UID GetColorStroke(FootnoteRuleKind k) const = 0;
240  virtual void SetColorStroke(FootnoteRuleKind k, UID s) = 0;
241 
244  virtual PMReal GetTintStroke(FootnoteRuleKind k) const = 0;
247  virtual void SetTintStroke(FootnoteRuleKind k, PMReal g) = 0;
248 
251  virtual bool16 GetOverprintStroke(FootnoteRuleKind k) const = 0;
254  virtual void SetOverprintStroke(FootnoteRuleKind k, bool16 b) = 0;
255 
258  virtual UID GetColorGap(FootnoteRuleKind k) const = 0;
261  virtual void SetColorGap(FootnoteRuleKind k, UID s) = 0;
262 
265  virtual PMReal GetTintGap(FootnoteRuleKind k) const = 0;
268  virtual void SetTintGap(FootnoteRuleKind k, PMReal g) = 0;
269 
272  virtual bool16 GetOverprintGap(FootnoteRuleKind k) const = 0;
275  virtual void SetOverprintGap(FootnoteRuleKind k, bool16 b) = 0;
276 };
277 #endif // __ODFRC__
278 
279 #endif
280  // __IFootnoteSettings__
281