source: Daodan/MSYS2/mingw32/i686-w64-mingw32/include/filter.idl

Last change on this file was 1166, checked in by rossy, 3 years ago

Daodan: Replace MinGW build env with an up-to-date MSYS2 env

File size: 3.3 KB
Line 
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
6import "unknwn.idl";
7import "objidl.idl";
8import "propidl.idl";
9
10interface IFilter;
11
12cpp_quote("#include <winapifamily.h>")
13cpp_quote("")
14cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)")
15cpp_quote("#ifndef _TAGFULLPROPSPEC_DEFINED_")
16cpp_quote("#define _TAGFULLPROPSPEC_DEFINED_")
17typedef struct tagFULLPROPSPEC {
18 GUID guidPropSet;
19 PROPSPEC psProperty;
20} FULLPROPSPEC;
21cpp_quote("#endif")
22
23cpp_quote("#ifndef _tagIFILTER_INIT_DEFINED")
24cpp_quote("#define _tagIFILTER_INIT_DEFINED")
25typedef 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;
40cpp_quote("#define _IFILTER_INIT_DEFINED")
41cpp_quote("#endif")
42
43cpp_quote("#ifndef _tagIFILTER_FLAGS_DEFINED")
44cpp_quote("#define _tagIFILTER_FLAGS_DEFINED")
45typedef enum tagIFILTER_FLAGS {
46 IFILTER_FLAGS_OLE_PROPERTIES = 1
47} IFILTER_FLAGS;
48cpp_quote("#define _IFILTER_FLAGS_DEFINED")
49cpp_quote("#endif")
50
51cpp_quote("#ifndef _tagCHUNKSTATE_DEFINED")
52cpp_quote("#define _tagCHUNKSTATE_DEFINED")
53typedef enum tagCHUNKSTATE {
54 CHUNK_TEXT = 0x1,
55 CHUNK_VALUE = 0x2,
56 CHUNK_FILTER_OWNED_VALUE = 0x4
57} CHUNKSTATE;
58cpp_quote("#define _CHUNKSTATE_DEFINED")
59cpp_quote("#endif")
60
61cpp_quote("#ifndef _tagCHUNK_BREAKTYPE_DEFINED")
62cpp_quote("#define _tagCHUNK_BREAKTYPE_DEFINED")
63typedef 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;
70cpp_quote("#define _CHUNK_BREAKTYPE_DEFINED")
71cpp_quote("#endif")
72
73cpp_quote("#ifndef _tagFILTERREGION_DEFINED")
74cpp_quote("#define _tagFILTERREGION_DEFINED")
75typedef struct tagFILTERREGION {
76 ULONG idChunk;
77 ULONG cwcStart;
78 ULONG cwcExtent;
79} FILTERREGION;
80cpp_quote("#define _FILTERREGION_DEFINED")
81cpp_quote("#endif")
82
83cpp_quote("#ifndef _tagSTAT_CHUNK_DEFINED")
84cpp_quote("#define _tagSTAT_CHUNK_DEFINED")
85typedef 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;
95cpp_quote("#define _STAT_CHUNK_DEFINED")
96cpp_quote("#endif")
97
98[object, uuid (89bcb740-6119-101a-BCB7-00dd010655af), pointer_default (unique)]
99interface 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
107cpp_quote("#endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) */")
Note: See TracBrowser for help on using the repository browser.