InDesign SDK  20.5
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
IEndnoteFacade.h
1 //========================================================================================
2 //
3 // $File$
4 //
5 // Owner: Abhishek Raj
6 //
7 // $Author$
8 //
9 // $DateTime$
10 //
11 // $Revision$
12 //
13 // $Change$
14 //
15 // ADOBE CONFIDENTIAL
16 //
17 // Copyright 2017 Adobe
18 // All Rights Reserved.
19 //
20 // NOTICE: Adobe permits you to use, modify, and distribute this file in
21 // accordance with the terms of the Adobe license agreement accompanying
22 // it. If you have received this file from a source other than Adobe,
23 // then your use, modification, or distribution of it requires the prior
24 // written permission of Adobe.
25 //
26 //========================================================================================
27 
28 #ifndef __IEndnoteFacade__
29 #define __IEndnoteFacade__
30 
31 #include "IPMUnknown.h"
32 
33 #include "IEndnoteSettings.h"
34 
35 namespace Facade
36 {
43  class IEndnoteFacade : public IPMUnknown
44  {
45  public:
46  enum { kDefaultIID = IID_IENDNOTEFACADE };
47 
50  virtual WideString GetTitle(IEndnoteSettings* target) const = 0;
51  virtual void SetTitle(IEndnoteSettings* target, WideString title) = 0;
52 
55  virtual UID GetHeaderParaStyle(IEndnoteSettings* target) const = 0;
56  virtual void SetHeaderParaStyle(IEndnoteSettings* target, UID styleID) = 0;
57 
61  virtual void SetRestartOption(IEndnoteSettings* target, IEndnoteSettings::RestartNumberingOptions option) = 0;
62 
65  virtual int32 GetStartingNumber(IEndnoteSettings* target) const = 0;
66  virtual void SetStartingNumber(IEndnoteSettings* target, int32 n) = 0;
67 
70  virtual ClassID GetNumberingMethod(IEndnoteSettings* target) const = 0;
71  virtual void SetNumberingMethod(IEndnoteSettings* target, ClassID whichMethod) = 0;
72 
76  virtual void SetMarkerPositioning(IEndnoteSettings* target, IEndnoteSettings::MarkerPositionOptions option) = 0;
77 
80  virtual UID GetMarkerStyle(IEndnoteSettings* target) const = 0;
81  virtual void SetMarkerStyle(IEndnoteSettings* target, UID styleID) = 0;
82 
85  virtual UID GetEndnoteParagraphStyle(IEndnoteSettings* target) const = 0;
86  virtual void SetEndnoteParagraphStyle(IEndnoteSettings* target, UID s) = 0;
87 
90  virtual const WideString& GetEndnoteSeparator(IEndnoteSettings* target) const = 0;
91  virtual void SetEndnoteSeparator(IEndnoteSettings* target, const WideString& sep) = 0;
92 
95  virtual IEndnoteSettings::Scope GetScope(IEndnoteSettings* target) const = 0;
96  virtual void SetScope(IEndnoteSettings* target, IEndnoteSettings::Scope scope) = 0;
97 
100  virtual IEndnoteSettings::Place GetPlace(IEndnoteSettings* target) const = 0;
101  virtual void SetPlace(IEndnoteSettings* target, IEndnoteSettings::Place place) = 0;
102 
105  virtual const WideString& GetMarkerPrefix(IEndnoteSettings* target) const = 0;
106  virtual void SetMarkerPrefix(IEndnoteSettings* target, const WideString& pre) = 0;
107 
110  virtual const WideString& GetMarkerSuffix(IEndnoteSettings* target) const = 0;
111  virtual void SetMarkerSuffix(IEndnoteSettings* target, const WideString& suf) = 0;
112 
116  virtual void SetPrefixSuffixUsage(IEndnoteSettings* target, IEndnoteSettings::SuffixPrefixUsageOptions options) = 0;
117 
120  virtual void SetAllSettings(IEndnoteSettings* target, const IEndnoteSettings::EndnotePrefs* settings) = 0;
121 
122  /* Returns endnote settings of a document */
123  virtual IEndnoteSettings* QueryEndnoteSettings(IDataBase* db) const = 0;
124 
125  /* Returns if the passed story is an endnote story */
126  virtual bool16 IsEndnoteStory(const UIDRef textModelRef) const = 0;
127 
136  virtual bool16 IsEndnoteTextRange(const TextIndex& startPosition, const TextIndex& endPosition, const ITextModel* textModel) const = 0;
137 
145  virtual bool16 IsEndnoteAnchor(TextIndex& position, const ITextModel* textModel) const = 0;
146 
153  virtual bool16 IsEndnoteTextRangeMarker(const TextIndex& position, ITextModel* textModel) const = 0;
154 
159  virtual void AppendEndnoteRelatedStories(const UIDRef& modelRef, UIDList& storiesList) const = 0;
160 
166  virtual bool16 IsEndnoteAnchorOrEndnoteStoryInAssignment(const UIDRef& storyRef) const = 0;
167 
173  virtual bool16 IsEndnoteAnchorOrEndnoteStory(const UIDRef& storyRef) const = 0;
174 
182  virtual UIDList GetEndnoteAnchorStories(UIDRef endnoteStoryRef) const = 0;
183 
190  virtual int32 GetEndnoteCount(UIDRef endnoteStoryRef) const = 0;
191 
198  virtual UIDRef GetEndnoteStoryRef(const ITextModel* textModel) const = 0;
199 
206  virtual bool16 IsSeparatorChar(const UIDRef textModelRef, const TextIndex index) const = 0;
207 
209  virtual void MoveEndnoteRange(const UIDRef& storyRef) = 0;
210 
212  virtual void DeleteEndnoteRangesInStory(ITextModel* model, TextIndex start, TextIndex end) const = 0;
213 
215  virtual void CopyEndnoteDataFromSourceStoryToDestStory(UIDRef sourceEndnoteStoryRef, UIDRef destEndnoteStoryRef) = 0;
216 };
217 } // namespace Facade
218 
219 #endif // __IEndnoteFacade__