1 | /**
|
---|
2 | * This file is part of the mingw-w64 runtime package.
|
---|
3 | * No warranty is given; refer to the file DISCLAIMER within this package.
|
---|
4 | */
|
---|
5 |
|
---|
6 | import "unknwn.idl";
|
---|
7 | import "objidl.idl";
|
---|
8 | import "propidl.idl";
|
---|
9 |
|
---|
10 | interface IFilter;
|
---|
11 |
|
---|
12 | cpp_quote("#include <winapifamily.h>")
|
---|
13 | cpp_quote("")
|
---|
14 | cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)")
|
---|
15 | cpp_quote("#ifndef _TAGFULLPROPSPEC_DEFINED_")
|
---|
16 | cpp_quote("#define _TAGFULLPROPSPEC_DEFINED_")
|
---|
17 | typedef struct tagFULLPROPSPEC {
|
---|
18 | GUID guidPropSet;
|
---|
19 | PROPSPEC psProperty;
|
---|
20 | } FULLPROPSPEC;
|
---|
21 | cpp_quote("#endif")
|
---|
22 |
|
---|
23 | cpp_quote("#ifndef _tagIFILTER_INIT_DEFINED")
|
---|
24 | cpp_quote("#define _tagIFILTER_INIT_DEFINED")
|
---|
25 | typedef enum tagIFILTER_INIT {
|
---|
26 | IFILTER_INIT_CANON_PARAGRAPHS = 0x1,
|
---|
27 | IFILTER_INIT_HARD_LINE_BREAKS = 0x2,
|
---|
28 | IFILTER_INIT_CANON_HYPHENS = 0x4,
|
---|
29 | IFILTER_INIT_CANON_SPACES = 0x8,
|
---|
30 | IFILTER_INIT_APPLY_INDEX_ATTRIBUTES = 0x10,
|
---|
31 | IFILTER_INIT_APPLY_OTHER_ATTRIBUTES = 0x20,
|
---|
32 | IFILTER_INIT_INDEXING_ONLY = 0x40,
|
---|
33 | IFILTER_INIT_SEARCH_LINKS = 0x80,
|
---|
34 | IFILTER_INIT_APPLY_CRAWL_ATTRIBUTES = 0x100,
|
---|
35 | IFILTER_INIT_FILTER_OWNED_VALUE_OK = 0x200,
|
---|
36 | IFILTER_INIT_FILTER_AGGRESSIVE_BREAK = 0x400,
|
---|
37 | IFILTER_INIT_DISABLE_EMBEDDED = 0x800,
|
---|
38 | IFILTER_INIT_EMIT_FORMATTING = 0x1000
|
---|
39 | } IFILTER_INIT;
|
---|
40 | cpp_quote("#define _IFILTER_INIT_DEFINED")
|
---|
41 | cpp_quote("#endif")
|
---|
42 |
|
---|
43 | cpp_quote("#ifndef _tagIFILTER_FLAGS_DEFINED")
|
---|
44 | cpp_quote("#define _tagIFILTER_FLAGS_DEFINED")
|
---|
45 | typedef enum tagIFILTER_FLAGS {
|
---|
46 | IFILTER_FLAGS_OLE_PROPERTIES = 1
|
---|
47 | } IFILTER_FLAGS;
|
---|
48 | cpp_quote("#define _IFILTER_FLAGS_DEFINED")
|
---|
49 | cpp_quote("#endif")
|
---|
50 |
|
---|
51 | cpp_quote("#ifndef _tagCHUNKSTATE_DEFINED")
|
---|
52 | cpp_quote("#define _tagCHUNKSTATE_DEFINED")
|
---|
53 | typedef enum tagCHUNKSTATE {
|
---|
54 | CHUNK_TEXT = 0x1,
|
---|
55 | CHUNK_VALUE = 0x2,
|
---|
56 | CHUNK_FILTER_OWNED_VALUE = 0x4
|
---|
57 | } CHUNKSTATE;
|
---|
58 | cpp_quote("#define _CHUNKSTATE_DEFINED")
|
---|
59 | cpp_quote("#endif")
|
---|
60 |
|
---|
61 | cpp_quote("#ifndef _tagCHUNK_BREAKTYPE_DEFINED")
|
---|
62 | cpp_quote("#define _tagCHUNK_BREAKTYPE_DEFINED")
|
---|
63 | typedef enum tagCHUNK_BREAKTYPE {
|
---|
64 | CHUNK_NO_BREAK = 0,
|
---|
65 | CHUNK_EOW = 1,
|
---|
66 | CHUNK_EOS = 2,
|
---|
67 | CHUNK_EOP = 3,
|
---|
68 | CHUNK_EOC = 4
|
---|
69 | } CHUNK_BREAKTYPE;
|
---|
70 | cpp_quote("#define _CHUNK_BREAKTYPE_DEFINED")
|
---|
71 | cpp_quote("#endif")
|
---|
72 |
|
---|
73 | cpp_quote("#ifndef _tagFILTERREGION_DEFINED")
|
---|
74 | cpp_quote("#define _tagFILTERREGION_DEFINED")
|
---|
75 | typedef struct tagFILTERREGION {
|
---|
76 | ULONG idChunk;
|
---|
77 | ULONG cwcStart;
|
---|
78 | ULONG cwcExtent;
|
---|
79 | } FILTERREGION;
|
---|
80 | cpp_quote("#define _FILTERREGION_DEFINED")
|
---|
81 | cpp_quote("#endif")
|
---|
82 |
|
---|
83 | cpp_quote("#ifndef _tagSTAT_CHUNK_DEFINED")
|
---|
84 | cpp_quote("#define _tagSTAT_CHUNK_DEFINED")
|
---|
85 | typedef struct tagSTAT_CHUNK {
|
---|
86 | ULONG idChunk;
|
---|
87 | CHUNK_BREAKTYPE breakType;
|
---|
88 | CHUNKSTATE flags;
|
---|
89 | LCID locale;
|
---|
90 | FULLPROPSPEC attribute;
|
---|
91 | ULONG idChunkSource;
|
---|
92 | ULONG cwcStartSource;
|
---|
93 | ULONG cwcLenSource;
|
---|
94 | } STAT_CHUNK;
|
---|
95 | cpp_quote("#define _STAT_CHUNK_DEFINED")
|
---|
96 | cpp_quote("#endif")
|
---|
97 |
|
---|
98 | [object, uuid (89bcb740-6119-101a-BCB7-00dd010655af), pointer_default (unique)]
|
---|
99 | interface IFilter : IUnknown {
|
---|
100 | SCODE Init ([in] ULONG grfFlags,[in] ULONG cAttributes,[in, size_is (cAttributes), unique] FULLPROPSPEC const *aAttributes,[out] ULONG *pFlags);
|
---|
101 | SCODE GetChunk ([out] STAT_CHUNK *pStat);
|
---|
102 | SCODE GetText ([in, out] ULONG *pcwcBuffer,[out, size_is (*pcwcBuffer)] WCHAR *awcBuffer);
|
---|
103 | SCODE GetValue ([out] PROPVARIANT **ppPropValue);
|
---|
104 | [local] SCODE BindRegion ([in] FILTERREGION origPos,[in] REFIID riid,[out] void **ppunk);
|
---|
105 | }
|
---|
106 |
|
---|
107 | cpp_quote("#endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) */")
|
---|