xref: /reactos/sdk/include/psdk/tom.idl (revision 7eead935)
1/*
2 * Copyright 2006 Juan Lang
3 *
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
8 *
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
12 * Lesser General Public License for more details.
13 *
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
17 */
18
19import "oaidl.idl";
20import "ocidl.idl";
21
22cpp_quote("#ifdef WINE_NO_UNICODE_MACROS")
23cpp_quote("#undef FindText")
24cpp_quote("#endif")
25
26typedef enum tagTomConstants
27{
28    tomFalse       = 0,
29    tomTrue        = -1,
30    tomUndefined   = -9999999,
31    tomToggle      = -9999998,
32    tomAutoColor   = -9999997,
33    tomDefault     = -9999996,
34    tomSuspend     = -9999995,
35    tomResume      = -9999994,
36
37    /* ITextFont::Reset() modes */
38    tomApplyNow         = 0,
39    tomApplyLater       = 1,
40    tomTrackParms       = 2,
41    tomCacheParms       = 3,
42    tomApplyTmp         = 4,
43    tomDisableSmartFont = 8,
44    tomEnableSmartFont  = 9,
45    tomUsePoints        = 10,
46    tomUseTwips         = 11,
47
48    tomBackward    = 0xc0000001,
49    tomForward     = 0x3fffffff,
50    tomMove        = 0,
51    tomExtend      = 1,
52    tomNoSelection          = 0,
53    tomSelectionIP          = 1,
54    tomSelectionNormal      = 2,
55    tomSelectionFrame       = 3,
56    tomSelectionColumn      = 4,
57    tomSelectionRow         = 5,
58    tomSelectionBlock       = 6,
59    tomSelectionInlineShape = 7,
60    tomSelectionShape       = 8,
61    tomSelStartActive = 1,
62    tomSelAtEOL       = 2,
63    tomSelOvertype    = 4,
64    tomSelActive      = 8,
65    tomSelReplace     = 16,
66    tomEnd   = 0,
67    tomStart = 32,
68    tomCollapseEnd   = 0,
69    tomCollapseStart = 1,
70    tomClientCoord = 256,
71    tomNone       = 0,
72    tomSingle     = 1,
73    tomWords      = 2,
74    tomDouble     = 3,
75    tomDotted     = 4,
76    tomDash       = 5,
77    tomDashDot    = 6,
78    tomDashDotDot = 7,
79    tomWave       = 8,
80    tomThick      = 9,
81    tomHair       = 10,
82    tomLineSpaceSingle   = 0,
83    tomLineSpace1pt5     = 1,
84    tomLineSpaceDouble   = 2,
85    tomLineSpaceAtLeast  = 3,
86    tomLineSpaceExactly  = 4,
87    tomLineSpaceMultiple = 5,
88    tomAlignLeft        = 0,
89    tomAlignCenter      = 1,
90    tomAlignRight       = 2,
91    tomAlignJustify     = 3,
92    tomAlignDecimal     = 3,
93    tomAlignBar         = 4,
94    tomAlignInterWord   = 3,
95    tomAlignInterLetter = 4,
96    tomAlignScaled      = 5,
97    tomAlignGlyphs      = 6,
98    tomAlignSnapGrid    = 7,
99    tomSpaces     = 0,
100    tomDots       = 1,
101    tomDashes     = 2,
102    tomLines      = 3,
103    tomThickLines = 4,
104    tomEquals     = 5,
105    tomTabBack = -3,
106    tomTabNext = -2,
107    tomTabHere = -1,
108    tomListBullet           = 1,
109    tomListNumberAsArabic   = 2,
110    tomListNumberAsLCLetter = 3,
111    tomListNumberAsUCLetter = 4,
112    tomListNumberAsLCRoman  = 5,
113    tomListNumberAsUCRoman  = 6,
114    tomListNumberAsSequence = 7,
115    tomListParentheses      = 0x10000,
116    tomListPeriod           = 0x20000,
117    tomListPlain            = 0x30000,
118    tomCharacter  = 1,
119    tomWord       = 2,
120    tomSentence   = 3,
121    tomParagraph  = 4,
122    tomLine       = 5,
123    tomStory      = 6,
124    tomScreen     = 7,
125    tomSection    = 8,
126    tomColumn     = 9,
127    tomRow        = 10,
128    tomWindow     = 11,
129    tomCell       = 12,
130    tomCharFormat = 13,
131    tomParaFormat = 14,
132    tomTable      = 15,
133    tomObject     = 16,
134    tomMatchWord    = 2,
135    tomMatchCase    = 4,
136    tomMatchPattern = 8,
137
138    /* ITextRange story type values */
139    tomUnknownStory         = 0,
140    tomMainTextStory        = 1,
141    tomFootnotesStory       = 2,
142    tomEndnotesStory        = 3,
143    tomCommentsStory        = 4,
144    tomTextFrameStory       = 5,
145    tomEvenPagesHeaderStory = 6,
146    tomPrimaryHeaderStory   = 7,
147    tomEvenPagesFooterStory = 8,
148    tomPrimaryFooterStory   = 9,
149    tomFirstPageHeaderStory = 10,
150    tomFirstPageFooterStory = 11,
151
152    /* ITextFont animation property */
153    tomNoAnimation        = 0,
154    tomLasVegasLights     = 1,
155    tomBlinkingBackground = 2,
156    tomSparkleText        = 3,
157    tomMarchingBlackAnts  = 4,
158    tomMarchingRedAnts    = 5,
159    tomShimmer            = 6,
160    tomWipeDown           = 7,
161    tomWipeRight          = 8,
162    tomAnimationMax       = 8,
163
164    tomLowerCase     = 0,
165    tomUpperCase     = 1,
166    tomTitleCase     = 2,
167    tomSentenceCase  = 4,
168    tomToggleCase    = 5,
169    tomReadOnly         = 0x100,
170    tomShareDenyRead    = 0x200,
171    tomShareDenyWrite   = 0x400,
172    tomPasteFile        = 0x1000,
173    tomCreateNew        = 0x10,
174    tomCreateAlways     = 0x20,
175    tomOpenExisting     = 0x30,
176    tomOpenAlways       = 0x40,
177    tomTruncateExisting = 0x50,
178    tomRTF              = 0x1,
179    tomText             = 0x2,
180    tomHTML             = 0x3,
181    tomWordDocument     = 0x4,
182    tomBold      = 0x80000001,
183    tomItalic    = 0x80000002,
184    tomUnderline = 0x80000004,
185    tomStrikeout = 0x80000008,
186    tomProtected = 0x80000010,
187    tomLink      = 0x80000020,
188    tomSmallCaps = 0x80000040,
189    tomAllCaps   = 0x80000080,
190    tomHidden    = 0x80000100,
191    tomOutline   = 0x80000200,
192    tomShadow    = 0x80000400,
193    tomEmboss    = 0x80000800,
194    tomImprint   = 0x80001000,
195    tomDisabled  = 0x80002000,
196    tomRevised   = 0x80004000,
197    tomNormalCaret      = 0,
198    tomKoreanBlockCaret = 0x1,
199    tomIncludeInset = 0x1,
200    tomIgnoreCurrentFont  = 0,
201    tomMatchFontCharset   = 0x1,
202    tomMatchFontSignature = 0x2,
203    tomCharset = 0x80000000,
204    tomRE10Mode = 0x1,
205    tomNoIME   = 0x80000,
206    tomSelfIME = 0x40000
207} tomConstants;
208
209interface ITextRange;
210interface ITextSelection;
211interface ITextStoryRanges;
212
213[
214  object,
215  uuid(8cc497c0-a1df-11ce-8098-00aa0047be5d)
216]
217interface ITextDocument : IDispatch
218{
219    HRESULT GetName([retval, out]BSTR *pName);
220    HRESULT GetSelection([retval, out]ITextSelection **ppSel);
221    HRESULT GetStoryCount([retval, out]LONG *pCount);
222    HRESULT GetStoryRanges([retval, out]ITextStoryRanges **ppStories);
223    HRESULT GetSaved([retval, out]LONG *pValue);
224    HRESULT SetSaved([in]LONG Value);
225    HRESULT GetDefaultTabStop([retval, out]float *pValue);
226    HRESULT SetDefaultTabStop([in]float Value);
227    HRESULT New();
228    HRESULT Open([in]VARIANT *pVar, [in]LONG Flags, [in]LONG CodePage);
229    HRESULT Save([in]VARIANT *pVar, [in]LONG Flags, [in]LONG CodePage);
230    HRESULT Freeze([retval, out]LONG *pCount);
231    HRESULT Unfreeze([retval, out]LONG *pCount);
232    HRESULT BeginEditCollection();
233    HRESULT EndEditCollection();
234    HRESULT Undo([in]LONG Count, [retval, out]LONG *prop);
235    HRESULT Redo([in]LONG Count, [retval, out]LONG *prop);
236    HRESULT Range([in]LONG cp1, [in]LONG cp2, [retval, out]ITextRange **ppRange);
237    HRESULT RangeFromPoint([in]LONG x, [in]LONG y, [retval, out]ITextRange **ppRange);
238}
239
240[
241  object,
242  uuid(01c25500-4268-11d1-883a-3c8b00c10000)
243]
244interface ITextDocument2Old : ITextDocument
245{
246    HRESULT AttachMsgFilter([in]IUnknown *filter);
247    HRESULT SetEffectColor([in]LONG index, [in]COLORREF cr);
248    HRESULT GetEffectColor([in]LONG index, [out]COLORREF *cr);
249    HRESULT GetCaretType([retval, out]LONG *type);
250    HRESULT SetCaretType([in]LONG type);
251    HRESULT GetImmContext([retval, out]LONG *context);
252    HRESULT ReleaseImmContext([in]LONG context);
253    HRESULT GetPreferredFont([in]LONG cp, [in]LONG codepage, [in]LONG option, [in]LONG current_codepage, [in]LONG current_fontsize,
254                             [out]BSTR *bstr, [out]LONG *pitch_family, [out]LONG *new_fontsize);
255    HRESULT GetNotificationMode([retval, out]LONG *mode);
256    HRESULT SetNotificationMode([in]LONG mode);
257    HRESULT GetClientRect([in]LONG type, [out]LONG *left, [out]LONG *top, [out]LONG *right, [out]LONG *bottom);
258    HRESULT GetSelectionEx([retval, out]ITextSelection **selection);
259    HRESULT GetWindow([out]LONG *hwnd);
260    HRESULT GetFEFlags([out]LONG *flags);
261    HRESULT UpdateWindow();
262    HRESULT CheckTextLimit([in]LONG cch, [out]LONG  *exceed);
263    HRESULT IMEInProgress([in]LONG mode);
264    HRESULT SysBeep();
265    HRESULT Update([in]LONG mode);
266    HRESULT Notify([in]LONG notify);
267}
268
269interface ITextDisplays;
270interface ITextFont2;
271interface ITextPara2;
272interface ITextRange2;
273interface ITextSelection2;
274interface ITextStory;
275interface ITextStoryRanges2;
276interface ITextStrings;
277
278[
279  object,
280  uuid(c241f5e0-7206-11d8-a2c7-00a0d1d6c6b3)
281]
282interface ITextDocument2 : ITextDocument
283{
284    HRESULT GetCaretType([retval, out]LONG *value);
285    HRESULT SetCaretType([in]LONG value);
286    HRESULT GetDisplays([retval, out]ITextDisplays **displays);
287    HRESULT GetDocumentFont([retval, out]ITextFont2 **font);
288    HRESULT SetDocumentFont([in]ITextFont2 *font);
289    HRESULT GetDocumentPara([retval, out]ITextPara2 **para);
290    HRESULT SetDocumentPara([in]ITextPara2 *para);
291    HRESULT GetEastAsianFlags([retval, out]LONG *flags);
292    HRESULT GetGenerator([retval, out]BSTR *bstr);
293    HRESULT SetIMEInProgress([in]LONG value);
294    HRESULT GetNotificationMode([retval, out]LONG *mode);
295    HRESULT SetNotificationMode([in]LONG mode);
296    HRESULT GetSelection2([retval, out]ITextSelection2 **selection);
297    HRESULT GetStoryRanges2([retval, out]ITextStoryRanges2 **stories);
298    HRESULT GetTypographyOptions([retval, out]LONG *options);
299    HRESULT GetVersion([retval, out]LONG *value);
300    HRESULT GetWindow([retval, out]LONG *hwnd);
301    HRESULT AttachMsgFilter([in]IUnknown *filter);
302    HRESULT CheckTextLimit([in]LONG cch, [out]LONG  *exceed);
303    HRESULT GetCallManager([retval, out]IUnknown **manager);
304    HRESULT GetClientRect([in]LONG type, [out]LONG *left, [out]LONG *top, [out]LONG *right, [out]LONG *bottom);
305    HRESULT GetEffectColor([in]LONG index, [out]COLORREF *cr);
306    HRESULT GetImmContext([retval, out]LONG *context);
307    HRESULT GetPreferredFont([in]LONG cp, [in]LONG codepage, [in]LONG option, [in]LONG current_codepage, [in]LONG current_fontsize,
308                             [out]BSTR *bstr, [out]LONG *pitch_family, [out]LONG *new_fontsize);
309    HRESULT GetProperty([in]LONG type, [out]LONG *value);
310    HRESULT GetStrings([out]ITextStrings **strings);
311    HRESULT Notify([in]LONG notify);
312    HRESULT Range2([in]LONG cp_active, [in]LONG cp_anchor, [retval, out]ITextRange2 **range);
313    HRESULT RangeFromPoint2([in]LONG x, [in]LONG y, [in]LONG type, [retval, out]ITextRange2 **range);
314    HRESULT ReleaseCallManager([in]IUnknown *manager);
315    HRESULT ReleaseImmContext([in]LONG context);
316    HRESULT SetEffectColor([in]LONG index, [in]LONG value);
317    HRESULT SetProperty([in]LONG type, [in]LONG value);
318    HRESULT SetTypographyOptions([in]LONG options, [in]LONG mask);
319    HRESULT SysBeep();
320    HRESULT Update([in]LONG value);
321    HRESULT UpdateWindow();
322    HRESULT GetMathProperties([out]LONG *options);
323    HRESULT SetMathProperties([in]LONG options, [in]LONG mask);
324    HRESULT GetActiveStory([retval, out]ITextStory **story);
325    HRESULT SetActiveStory([in]ITextStory *story);
326    HRESULT GetMainStory([retval, out]ITextStory **story);
327    HRESULT GetNewStory([retval, out]ITextStory **story);
328    HRESULT GetStory([in]LONG index, [retval, out]ITextStory **story);
329}
330
331interface ITextFont;
332interface ITextPara;
333
334[
335  object,
336  uuid(8cc497c2-a1df-11ce-8098-00aa0047be5d)
337]
338interface ITextRange : IDispatch
339{
340    HRESULT GetText([retval, out]BSTR *pbstr);
341    HRESULT SetText([in]BSTR bstr);
342    HRESULT GetChar([retval, out]LONG *pch);
343    HRESULT SetChar([in]LONG ch);
344    HRESULT GetDuplicate([retval, out]ITextRange **ppRange);
345    HRESULT GetFormattedText([retval, out]ITextRange **ppRange);
346    HRESULT SetFormattedText([in]ITextRange *pRange);
347    HRESULT GetStart([retval, out]LONG *pcpFirst);
348    HRESULT SetStart([in]LONG cpFirst);
349    HRESULT GetEnd([retval, out]LONG *pcpLim);
350    HRESULT SetEnd([in]LONG cpLim);
351    HRESULT GetFont([retval, out]ITextFont **pFont);
352    HRESULT SetFont([in]ITextFont *pFont);
353    HRESULT GetPara([retval, out]ITextPara **ppPara);
354    HRESULT SetPara([in]ITextPara *pPara);
355    HRESULT GetStoryLength([retval, out]LONG *pcch);
356    HRESULT GetStoryType([retval, out]LONG *pValue);
357    HRESULT Collapse([in]LONG bStart);
358    HRESULT Expand([in]LONG Unit, [retval, out]LONG *pDelta);
359    HRESULT GetIndex([in]LONG Unit, [retval, out]LONG *pIndex);
360    HRESULT SetIndex([in]LONG Unit, [in]LONG Index, [in]LONG Extend);
361    HRESULT SetRange([in]LONG anchor, [in]LONG active);
362    HRESULT InRange([in]ITextRange *pRange, [retval, out]LONG *pb);
363    HRESULT InStory([in]ITextRange *pRange, [retval, out]LONG *pb);
364    HRESULT IsEqual([in]ITextRange *pRange, [retval, out]LONG *pb);
365    HRESULT Select();
366    HRESULT StartOf([in]LONG Unit, [in]LONG Extend, [retval, out]LONG *pDelta);
367    HRESULT EndOf([in]LONG Unit, [in]LONG Extend, [retval, out]LONG *pDelta);
368    HRESULT Move([in]LONG Unit, [in]LONG Count, [retval, out]LONG *pDelta);
369    HRESULT MoveStart([in]LONG Unit, [in]LONG Count, [retval, out]LONG *pDelta);
370    HRESULT MoveEnd([in]LONG Unit, [in]LONG Count, [retval, out]LONG *pDelta);
371    HRESULT MoveWhile([in]VARIANT *Cset, [in]LONG Count, [retval, out]LONG *pDelta);
372    HRESULT MoveStartWhile([in]VARIANT *Cset, [in]LONG Count, [retval, out]LONG *pDelta);
373    HRESULT MoveEndWhile([in]VARIANT *Cset, [in]LONG Count, [retval, out]LONG *pDelta);
374    HRESULT MoveUntil([in]VARIANT *Cset, [in]LONG Count, [retval, out]LONG *pDelta);
375    HRESULT MoveStartUntil([in]VARIANT *Cset, [in]LONG Count, [retval, out]LONG *pDelta);
376    HRESULT MoveEndUntil([in]VARIANT *Cset, [in]LONG Count, [retval, out]LONG *pDelta);
377    HRESULT FindText([in]BSTR bstr, [in]LONG cch, [in]LONG Flags, [retval, out]LONG *pLength);
378    HRESULT FindTextStart([in]BSTR bstr, [in]LONG cch, [in]LONG Flags, [retval, out]LONG *pLength);
379    HRESULT FindTextEnd([in]BSTR bstr, [in]LONG cch, [in]LONG Flags, [retval, out]LONG *pLength);
380    HRESULT Delete([in]LONG Unit, [in]LONG Count, [retval, out]LONG *pDelta);
381    HRESULT Cut([out]VARIANT *pVar);
382    HRESULT Copy([out]VARIANT *pVar);
383    HRESULT Paste([in]VARIANT *pVar, [in]LONG Format);
384    HRESULT CanPaste([in]VARIANT *pVar, [in]LONG Format, [retval, out]LONG *pb);
385    HRESULT CanEdit([retval, out]LONG *pb);
386    HRESULT ChangeCase([in]LONG Type);
387    HRESULT GetPoint([in]LONG Type, [out]LONG *cx, [out]LONG *cy);
388    HRESULT SetPoint([in]LONG x, [in]LONG y, [in]LONG Type, [in]LONG Extend);
389    HRESULT ScrollIntoView([in]LONG Value);
390    HRESULT GetEmbeddedObject([retval, out]IUnknown **ppv);
391}
392
393[
394  object,
395  uuid(8cc497c1-a1df-11ce-8098-00aa0047be5d)
396]
397interface ITextSelection : ITextRange
398{
399    HRESULT GetFlags([retval, out]LONG *pFlags);
400    HRESULT SetFlags([in]LONG Flags);
401    HRESULT GetType([retval, out]LONG *pType);
402    HRESULT MoveLeft([in]LONG Unit, [in]LONG Count, [in]LONG Extend, [retval, out]LONG *pDelta);
403    HRESULT MoveRight([in]LONG Unit, [in]LONG Count, [in]LONG Extend, [retval, out]LONG *pDelta);
404    HRESULT MoveUp([in]LONG Unit, [in]LONG Count, [in]LONG Extend, [retval, out]LONG *pDelta);
405    HRESULT MoveDown([in]LONG Unit, [in]LONG Count, [in]LONG Extend, [retval, out]LONG *pDelta);
406    HRESULT HomeKey([in]LONG Unit, [in]LONG Extend, [retval, out]LONG *pDelta);
407    HRESULT EndKey([in]LONG Unit, [in]LONG Extend, [retval, out]LONG *pDelta);
408    HRESULT TypeText([in]BSTR bstr);
409}
410
411[
412  object,
413  uuid(8cc497c3-a1df-11ce-8098-00aa0047be5d)
414]
415interface ITextFont : IDispatch
416{
417    HRESULT GetDuplicate([retval, out]ITextFont **ppFont);
418    HRESULT SetDuplicate([in]ITextFont *pFont);
419    HRESULT CanChange([out]LONG *pB);
420    HRESULT IsEqual([in]ITextFont *pFont, [retval, out]LONG *pB);
421    HRESULT Reset([in]LONG Value);
422    HRESULT GetStyle([retval, out]LONG *pValue);
423    HRESULT SetStyle([in]LONG Value);
424    HRESULT GetAllCaps([retval, out]LONG *pValue);
425    HRESULT SetAllCaps([in]LONG Value);
426    HRESULT GetAnimation([retval, out]LONG *pValue);
427    HRESULT SetAnimation([in]LONG Value);
428    HRESULT GetBackColor([retval, out]LONG *pValue);
429    HRESULT SetBackColor([in]LONG Value);
430    HRESULT GetBold([retval, out]LONG *pValue);
431    HRESULT SetBold([in]LONG Value);
432    HRESULT GetEmboss([retval, out]LONG *pValue);
433    HRESULT SetEmboss([in]LONG Value);
434    HRESULT GetForeColor([retval, out]LONG *pValue);
435    HRESULT SetForeColor([in]LONG Value);
436    HRESULT GetHidden([retval, out]LONG *pValue);
437    HRESULT SetHidden([in]LONG Value);
438    HRESULT GetEngrave([retval, out]LONG *pValue);
439    HRESULT SetEngrave([in]LONG Value);
440    HRESULT GetItalic([retval, out]LONG *pValue);
441    HRESULT SetItalic([in]LONG Value);
442    HRESULT GetKerning([retval, out]float *pValue);
443    HRESULT SetKerning([in]float Value);
444    HRESULT GetLanguageID([retval, out]LONG *pValue);
445    HRESULT SetLanguageID([in]LONG Value);
446    HRESULT GetName([retval, out]BSTR *pValue);
447    HRESULT SetName([in]BSTR Value);
448    HRESULT GetOutline([retval, out]LONG *pValue);
449    HRESULT SetOutline([in]LONG Value);
450    HRESULT GetPosition([retval, out]float *pValue);
451    HRESULT SetPosition([in]float Value);
452    HRESULT GetProtected([retval, out]LONG *pValue);
453    HRESULT SetProtected([in]LONG Value);
454    HRESULT GetShadow([retval, out]LONG *pValue);
455    HRESULT SetShadow([in]LONG Value);
456    HRESULT GetSize([retval, out]float *pValue);
457    HRESULT SetSize([in]float Value);
458    HRESULT GetSmallCaps([retval, out]LONG *pValue);
459    HRESULT SetSmallCaps([in]LONG Value);
460    HRESULT GetSpacing([retval, out]float *pValue);
461    HRESULT SetSpacing([in]float Value);
462    HRESULT GetStrikeThrough([retval, out]LONG *pValue);
463    HRESULT SetStrikeThrough([in]LONG Value);
464    HRESULT GetSubscript([retval, out]LONG *pValue);
465    HRESULT SetSubscript([in]LONG Value);
466    HRESULT GetSuperscript([retval, out]LONG *pValue);
467    HRESULT SetSuperscript([in]LONG Value);
468    HRESULT GetUnderline([retval, out]LONG *pValue);
469    HRESULT SetUnderline([in]LONG Value);
470    HRESULT GetWeight([retval, out]LONG *pValue);
471    HRESULT SetWeight([in]LONG Value);
472}
473
474[
475  object,
476  uuid(8cc497c4-a1df-11ce-8098-00aa0047be5d)
477]
478interface ITextPara : IDispatch
479{
480    HRESULT GetDuplicate([retval, out]ITextPara **ppPara);
481    HRESULT SetDuplicate([in]ITextPara *pPara);
482    HRESULT CanChange([out]LONG *pB);
483    HRESULT IsEqual([in]ITextPara *pPara, [retval, out]LONG *pB);
484    HRESULT Reset([in]LONG Value);
485    HRESULT GetStyle([retval, out]LONG *pValue);
486    HRESULT SetStyle([in]LONG Value);
487    HRESULT GetAlignment([retval, out]LONG *pValue);
488    HRESULT SetAlignment([in]LONG Value);
489    HRESULT GetHyphenation([retval, out]LONG *pValue);
490    HRESULT SetHyphenation([in]LONG Value);
491    HRESULT GetFirstLineIndent([retval, out]float *pValue);
492    HRESULT GetKeepTogether([retval, out]LONG *pValue);
493    HRESULT SetKeepTogether([in]LONG Value);
494    HRESULT GetKeepWithNext([retval, out]LONG *pValue);
495    HRESULT SetKeepWithNext([in]LONG Value);
496    HRESULT GetLeftIndent([retval, out]float *pValue);
497    HRESULT GetLineSpacing([retval, out]float *pValue);
498    HRESULT GetLineSpacingRule([retval, out]LONG *pValue);
499    HRESULT GetListAlignment([retval, out]LONG *pValue);
500    HRESULT SetListAlignment([in]LONG Value);
501    HRESULT GetListLevelIndex([retval, out]LONG *pValue);
502    HRESULT SetListLevelIndex([in]LONG Value);
503    HRESULT GetListStart([retval, out]LONG *pValue);
504    HRESULT SetListStart([in]LONG Value);
505    HRESULT GetListTab([retval, out]float *pValue);
506    HRESULT SetListTab([in]float Value);
507    HRESULT GetListType([retval, out]LONG *pValue);
508    HRESULT SetListType([in]LONG Value);
509    HRESULT GetNoLineNumber([retval, out]LONG *pValue);
510    HRESULT SetNoLineNumber([in]LONG Value);
511    HRESULT GetPageBreakBefore([retval, out]LONG *pValue);
512    HRESULT SetPageBreakBefore([in]LONG Value);
513    HRESULT GetRightIndent([retval, out]float *pValue);
514    HRESULT SetRightIndent([in]float Value);
515    HRESULT SetIndents([in]float StartIndent, [in]float LeftIndent, [in]float RightIndent);
516    HRESULT SetLineSpacing([in]LONG LineSpacingRule, [in]float LineSpacing);
517    HRESULT GetSpaceAfter([retval, out]float *pValue);
518    HRESULT SetSpaceAfter([in]float Value);
519    HRESULT GetSpaceBefore([retval, out]float *pValue);
520    HRESULT SetSpaceBefore([in]float Value);
521    HRESULT GetWidowControl([retval, out]LONG *pValue);
522    HRESULT SetWidowControl([in]LONG Value);
523    HRESULT GetTabCount([retval, out]LONG *pCount);
524    HRESULT AddTab([in]float tbPos, [in]LONG tbAlign, [in]LONG tbLeader);
525    HRESULT ClearAllTabs();
526    HRESULT DeleteTab([in]float tbPos);
527    HRESULT GetTab([in]LONG iTab, [out]float *ptbPos, [out]LONG *ptbAlign, [out]LONG *ptbLeader);
528}
529
530[
531  object,
532  uuid(8cc497c5-a1df-11ce-8098-00aa0047be5d)
533]
534interface ITextStoryRanges : IDispatch
535{
536    HRESULT _NewEnum([retval, out]IUnknown **ppUnkEnum);
537    HRESULT Item([in]LONG Index, [retval, out]ITextRange **ppRange);
538    HRESULT GetCount([retval, out]LONG *pCount);
539}
540