Home | Info | Community | Development | myReactOS | Contact Us
ReactOS Development > Doxygentextstor.idl
Go to the documentation of this file.
00001 /* 00002 * Copyright 2009 Aric Stewart, CodeWeavers 00003 * 00004 * This library is free software; you can redistribute it and/or 00005 * modify it under the terms of the GNU Lesser General Public 00006 * License as published by the Free Software Foundation; either 00007 * version 2.1 of the License, or (at your option) any later version. 00008 * 00009 * This library is distributed in the hope that it will be useful, 00010 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00011 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00012 * Lesser General Public License for more details. 00013 * 00014 * You should have received a copy of the GNU Lesser General Public 00015 * License along with this library; if not, write to the Free Software 00016 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA 00017 */ 00018 00019 #ifndef DO_NO_IMPORTS 00020 import "oaidl.idl"; 00021 #endif 00022 00023 cpp_quote("#define TS_E_INVALIDPOS MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0200)") 00024 cpp_quote("#define TS_E_NOLOCK MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0201)") 00025 cpp_quote("#define TS_E_NOOBJECT MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0202)") 00026 cpp_quote("#define TS_E_NOSERVICE MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0203)") 00027 cpp_quote("#define TS_E_NOINTERFACE MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0204)") 00028 cpp_quote("#define TS_E_NOSELECTION MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0205)") 00029 cpp_quote("#define TS_E_NOLAYOUT MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0206)") 00030 cpp_quote("#define TS_E_INVALIDPOINT MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0207)") 00031 cpp_quote("#define TS_E_SYNCHRONOUS MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0208)") 00032 cpp_quote("#define TS_E_READONLY MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0209)") 00033 cpp_quote("#define TS_E_FORMAT MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x020a)") 00034 00035 cpp_quote("#define TS_S_ASYNC MAKE_HRESULT(SEVERITY_SUCCESS, FACILITY_ITF, 0x0300)") 00036 00037 00038 const ULONG TS_DEFAULT_SELECTION = ~0u; 00039 00040 const DWORD TS_SD_READONLY = 0x001; 00041 const DWORD TS_SD_LOADING = 0x002; 00042 00043 const DWORD TS_SS_DISJOINTSEL = 0x001; 00044 const DWORD TS_SS_REGIONS = 0x002; 00045 const DWORD TS_SS_TRANSITORY = 0x004; 00046 const DWORD TS_SS_NOHIDDENTEXT = 0x008; 00047 00048 const DWORD TS_AS_TEXT_CHANGE = 0x01; 00049 const DWORD TS_AS_SEL_CHANGE = 0x02; 00050 const DWORD TS_AS_LAYOUT_CHANGE = 0x04; 00051 const DWORD TS_AS_ATTR_CHANGE = 0x08; 00052 const DWORD TS_AS_STATUS_CHANGE = 0x10; 00053 00054 const DWORD TS_AS_ALL_SINKS = (TS_AS_TEXT_CHANGE | TS_AS_SEL_CHANGE | TS_AS_LAYOUT_CHANGE | TS_AS_ATTR_CHANGE | TS_AS_STATUS_CHANGE); 00055 00056 const DWORD TS_LF_SYNC = 0x1; 00057 const DWORD TS_LF_READ = 0x2; 00058 const DWORD TS_LF_READWRITE = 0x6; 00059 00060 const WCHAR TS_CHAR_EMBEDDED = 0xfffc; 00061 const WCHAR TS_CHAR_REGION = 0x0000; 00062 const WCHAR TS_CHAR_REPLACEMENT = 0xfffd; 00063 00064 const DWORD TS_IAS_NOQUERY = 0x1; 00065 const DWORD TS_IAS_QUERYONLY = 0x2; 00066 00067 typedef [uuid(05fcf85b-5e9c-4c3e-ab71-29471d4f38e7)] enum { TS_AE_NONE, TS_AE_START, TS_AE_END } TsActiveSelEnd; 00068 typedef [uuid(033b0df0-f193-4170-b47b-141afc247878)] enum { TS_RT_PLAIN, TS_RT_HIDDEN, TS_RT_OPAQUE } TsRunType; 00069 typedef [uuid(ef3457d9-8446-49a7-a9e6-b50d9d5f3fd9)] GUID TS_ATTRID; 00070 00071 typedef [uuid(fec4f516-c503-45b1-a5fd-7a3d8ab07049)] struct TS_STATUS 00072 { 00073 DWORD dwDynamicFlags; 00074 DWORD dwStaticFlags; 00075 } TS_STATUS; 00076 00077 typedef [uuid(f3181bd6-bcf0-41d3-a81c-474b17ec38fb)] struct TS_TEXTCHANGE 00078 { 00079 LONG acpStart; 00080 LONG acpOldEnd; 00081 LONG acpNewEnd; 00082 } TS_TEXTCHANGE; 00083 00084 typedef [uuid(7ecc3ffa-8f73-4d91-98ed-76f8ac5b1600)] struct TS_SELECTIONSTYLE 00085 { 00086 TsActiveSelEnd ase; 00087 BOOL fInterimChar; 00088 } TS_SELECTIONSTYLE; 00089 00090 typedef [uuid(c4b9c33b-8a0d-4426-bebe-d444a4701fe9)] struct TS_SELECTION_ACP 00091 { 00092 LONG acpStart; 00093 LONG acpEnd; 00094 TS_SELECTIONSTYLE style; 00095 } TS_SELECTION_ACP; 00096 00097 typedef [uuid(a6231949-37c5-4b74-a24e-2a26c327201d)] struct TS_RUNINFO 00098 { 00099 ULONG uCount; 00100 TsRunType type; 00101 } TS_RUNINFO; 00102 00103 typedef [uuid(2cc2b33f-1174-4507-b8d9-5bc0eb37c197)] struct TS_ATTRVAL 00104 { 00105 TS_ATTRID idAttr; 00106 DWORD dwOverlapId; 00107 VARIANT varValue; 00108 } TS_ATTRVAL; 00109 00110 typedef [uuid(7899d7c4-5f07-493c-a89a-fac8e777f476)] enum { TS_LC_CREATE, TS_LC_CHANGE, TS_LC_DESTROY } TsLayoutCode; 00111 typedef [uuid(1faf509e-44c1-458e-950a-38a96705a62b)] DWORD TsViewCookie; 00112 00113 [ 00114 object, 00115 uuid(22d44c94-a419-4542-a272-ae26093ececf), 00116 pointer_default(unique) 00117 ] 00118 interface ITextStoreACPSink : IUnknown 00119 { 00120 HRESULT OnTextChange( 00121 [in] DWORD dwFlags, 00122 [in] const TS_TEXTCHANGE *pChange); 00123 00124 HRESULT OnSelectionChange(); 00125 00126 HRESULT OnLayoutChange( 00127 [in] TsLayoutCode lcode, 00128 [in] TsViewCookie vcView); 00129 00130 HRESULT OnStatusChange( 00131 [in] DWORD dwFlags); 00132 00133 HRESULT OnAttrsChange( 00134 [in] LONG acpStart, 00135 [in] LONG acpEnd, 00136 [in] ULONG cAttrs, 00137 [in, size_is(cAttrs)] const TS_ATTRID *paAttrs); 00138 00139 HRESULT OnLockGranted( 00140 [in] DWORD dwLockFlags); 00141 00142 HRESULT OnStartEditTransaction(); 00143 00144 HRESULT OnEndEditTransaction(); 00145 }; 00146 00147 [ 00148 object, 00149 uuid(28888fe3-c2a0-483a-a3ea-8cb1ce51ff3d), 00150 pointer_default(unique) 00151 ] 00152 interface ITextStoreACP : IUnknown 00153 { 00154 HRESULT AdviseSink( 00155 [in] REFIID riid, 00156 [in, iid_is(riid)] IUnknown *punk, 00157 [in] DWORD dwMask); 00158 00159 HRESULT UnadviseSink( 00160 [in] IUnknown *punk); 00161 00162 HRESULT RequestLock( 00163 [in] DWORD dwLockFlags, 00164 [out] HRESULT *phrSession); 00165 00166 HRESULT GetStatus( 00167 [out] TS_STATUS *pdcs); 00168 00169 HRESULT QueryInsert( 00170 [in] LONG acpTestStart, 00171 [in] LONG acpTestEnd, 00172 [in] ULONG cch, 00173 [out] LONG *pacpResultStart, 00174 [out] LONG *pacpResultEnd); 00175 00176 HRESULT GetSelection( 00177 [in] ULONG ulIndex, 00178 [in] ULONG ulCount, 00179 [out, size_is(ulCount), length_is(*pcFetched)] TS_SELECTION_ACP *pSelection, 00180 [out] ULONG *pcFetched); 00181 00182 HRESULT SetSelection( 00183 [in] ULONG ulCount, 00184 [in, size_is(ulCount)] const TS_SELECTION_ACP *pSelection); 00185 00186 HRESULT GetText( 00187 [in] LONG acpStart, 00188 [in] LONG acpEnd, 00189 [out, size_is(cchPlainReq), length_is(*pcchPlainRet)] WCHAR *pchPlain, 00190 [in] ULONG cchPlainReq, 00191 [out] ULONG *pcchPlainRet, 00192 [out, size_is(cRunInfoReq), length_is(*pcRunInfoRet)] TS_RUNINFO *prgRunInfo, 00193 [in] ULONG cRunInfoReq, 00194 [out] ULONG *pcRunInfoRet, 00195 [out] LONG *pacpNext); 00196 00197 HRESULT SetText( 00198 [in] DWORD dwFlags, 00199 [in] LONG acpStart, 00200 [in] LONG acpEnd, 00201 [in, size_is(cch)] const WCHAR *pchText, 00202 [in] ULONG cch, 00203 [out] TS_TEXTCHANGE *pChange); 00204 00205 HRESULT GetFormattedText( 00206 [in] LONG acpStart, 00207 [in] LONG acpEnd, 00208 [out] IDataObject **ppDataObject); 00209 00210 HRESULT GetEmbedded( 00211 [in] LONG acpPos, 00212 [in] REFGUID rguidService, 00213 [in] REFIID riid, 00214 [out, iid_is(riid)] IUnknown **ppunk); 00215 00216 HRESULT QueryInsertEmbedded( 00217 [in] const GUID *pguidService, 00218 [in] const FORMATETC *pFormatEtc, 00219 [out] BOOL *pfInsertable); 00220 00221 HRESULT InsertEmbedded( 00222 [in] DWORD dwFlags, 00223 [in] LONG acpStart, 00224 [in] LONG acpEnd, 00225 [in] IDataObject *pDataObject, 00226 [out] TS_TEXTCHANGE *pChange); 00227 00228 00229 HRESULT InsertTextAtSelection( 00230 [in] DWORD dwFlags, 00231 [in, size_is(cch)] const WCHAR *pchText, 00232 [in] ULONG cch, 00233 [out] LONG *pacpStart, 00234 [out] LONG *pacpEnd, 00235 [out] TS_TEXTCHANGE *pChange); 00236 00237 HRESULT InsertEmbeddedAtSelection( 00238 [in] DWORD dwFlags, 00239 [in] IDataObject *pDataObject, 00240 [out] LONG *pacpStart, 00241 [out] LONG *pacpEnd, 00242 [out] TS_TEXTCHANGE *pChange); 00243 00244 HRESULT RequestSupportedAttrs( 00245 [in] DWORD dwFlags, 00246 [in] ULONG cFilterAttrs, 00247 [in, size_is(cFilterAttrs), unique] const TS_ATTRID *paFilterAttrs); 00248 00249 HRESULT RequestAttrsAtPosition( 00250 [in] LONG acpPos, 00251 [in] ULONG cFilterAttrs, 00252 [in, size_is(cFilterAttrs), unique] const TS_ATTRID *paFilterAttrs, 00253 [in] DWORD dwFlags); 00254 00255 HRESULT RequestAttrsTransitioningAtPosition( 00256 [in] LONG acpPos, 00257 [in] ULONG cFilterAttrs, 00258 [in, size_is(cFilterAttrs), unique] const TS_ATTRID *paFilterAttrs, 00259 [in] DWORD dwFlags); 00260 00261 HRESULT FindNextAttrTransition( 00262 [in] LONG acpStart, 00263 [in] LONG acpHalt, 00264 [in] ULONG cFilterAttrs, 00265 [in, size_is(cFilterAttrs), unique] const TS_ATTRID *paFilterAttrs, 00266 [in] DWORD dwFlags, 00267 [out] LONG *pacpNext, 00268 [out] BOOL *pfFound, 00269 [out] LONG *plFoundOffset); 00270 00271 HRESULT RetrieveRequestedAttrs( 00272 [in] ULONG ulCount, 00273 [out, size_is(ulCount), length_is(*pcFetched)] TS_ATTRVAL *paAttrVals, 00274 [out] ULONG *pcFetched); 00275 00276 HRESULT GetEndACP( 00277 [out] LONG *pacp); 00278 00279 HRESULT GetActiveView( 00280 [out] TsViewCookie *pvcView); 00281 00282 HRESULT GetACPFromPoint( 00283 [in] TsViewCookie vcView, 00284 [in] const POINT *ptScreen, 00285 [in] DWORD dwFlags, 00286 [out] LONG *pacp); 00287 00288 HRESULT GetTextExt( 00289 [in] TsViewCookie vcView, 00290 [in] LONG acpStart, 00291 [in] LONG acpEnd, 00292 [out] RECT *prc, 00293 [out] BOOL *pfClipped); 00294 00295 HRESULT GetScreenExt( 00296 [in] TsViewCookie vcView, 00297 [out] RECT *prc); 00298 00299 HRESULT GetWnd( 00300 [in] TsViewCookie vcView, 00301 [out] HWND *phwnd); 00302 }; Generated on Sat May 26 2012 04:31:15 for ReactOS by
1.7.6.1
|