Home | Info | Community | Development | myReactOS | Contact Us
ReactOS Development > Doxygenhlink.idl
Go to the documentation of this file.
00001 /* 00002 * Copyright 2005 Jacek Caban 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 import "urlmon.idl"; 00020 00021 interface IHlink; 00022 interface IHlinkSite; 00023 interface IHlinkFrame; 00024 interface IHlinkBrowseContext; 00025 00026 cpp_quote("HRESULT WINAPI HlinkCreateFromMoniker(IMoniker*, LPCWSTR, LPCWSTR, IHlinkSite*, DWORD, IUnknown*, REFIID, void**);") 00027 cpp_quote("HRESULT WINAPI HlinkCreateFromString(LPCWSTR, LPCWSTR, LPCWSTR, IHlinkSite*, DWORD, IUnknown*, REFIID, void**);") 00028 cpp_quote("HRESULT WINAPI HlinkCreateFromData(IDataObject*, IHlinkSite*, DWORD dwSiteData, IUnknown*, REFIID, void**);") 00029 cpp_quote("HRESULT WINAPI HlinkCreateExtensionServices(LPCWSTR, HWND, LPCWSTR, LPCWSTR, IUnknown*, REFIID, void**);") 00030 cpp_quote("HRESULT WINAPI HlinkQueryCreateFromData(IDataObject*);") 00031 cpp_quote("HRESULT WINAPI HlinkClone(IHlink*, REFIID, IHlinkSite*, DWORD, void **);") 00032 cpp_quote("HRESULT WINAPI HlinkCreateBrowseContext(IUnknown*, REFIID, void **);") 00033 cpp_quote("HRESULT WINAPI HlinkNavigateToStringReference(LPCWSTR, LPCWSTR, IHlinkSite*, DWORD, IHlinkFrame*, DWORD, LPBC, IBindStatusCallback*, IHlinkBrowseContext*);") 00034 cpp_quote("HRESULT WINAPI HlinkNavigate(IHlink*, IHlinkFrame*, DWORD, LPBC, IBindStatusCallback*, IHlinkBrowseContext*);") 00035 cpp_quote("HRESULT WINAPI HlinkOnNavigate(IHlinkFrame*, IHlinkBrowseContext*, DWORD, IMoniker*, LPCWSTR, LPCWSTR, ULONG*);") 00036 cpp_quote("HRESULT WINAPI HlinkIsShortcut(LPCWSTR);") 00037 cpp_quote("HRESULT WINAPI HlinkTranslateURL(LPCWSTR,DWORD,LPWSTR*);") 00038 cpp_quote("HRESULT WINAPI HlinkParseDisplayName(LPBC,LPCWSTR,BOOL,ULONG*,IMoniker**);") 00039 cpp_quote("HRESULT WINAPI HlinkResolveMonikerForData(LPMONIKER,DWORD,LPBC,ULONG,FORMATETC*,IBindStatusCallback*,LPMONIKER);") 00040 00041 typedef enum _HLSR_NOREDEF10 { 00042 HLSR_HOME, 00043 HLSR_SEARCHPAGE, 00044 HLSR_HISTORYFOLDER 00045 } HLSR; 00046 00047 cpp_quote("HRESULT WINAPI HlinkSetSpecialReference(ULONG uReference, LPCWSTR pwzReference);") 00048 cpp_quote("HRESULT WINAPI HlinkGetSpecialReference(ULONG uReference, LPWSTR *ppwzReference);") 00049 00050 cpp_quote("#define SID_SHlinkFrame IID_IHlinkFrame") 00051 00052 /***************************************************************************** 00053 * IHlink interface 00054 */ 00055 [ 00056 object, 00057 uuid(79EAC9C3-BAF9-11CE-8C82-00AA004BA90B), 00058 pointer_default(unique) 00059 ] 00060 interface IHlink: IUnknown 00061 { 00062 typedef [unique] IHlink *LPHLINK; 00063 00064 typedef enum { 00065 HLNF_INTERNALJUMP = 0x00000001, 00066 HLNF_OPENINNEWWINDOW = 0x00000002, 00067 HLNF_NAVIGATINGBACK = 0x00000004, 00068 HLNF_NAVIGATINGFORWARD = 0x00000008, 00069 HLNF_NAVIGATINGTOSTACKITEM = 0x00000010, 00070 HLNF_CREATENOHISTORY = 0x00000020 00071 } HLNF; 00072 00073 typedef enum { 00074 HLINKGETREF_DEFAULT = 0, 00075 HLINKGETREF_ABSOLUTE = 1, 00076 HLINKGETREF_RELATIVE = 2, 00077 } HLINKGETREF; 00078 00079 typedef enum { 00080 HLFNAMEF_DEFAULT = 0x00000000, 00081 HLFNAMEF_TRYCACHE = 0x00000001, 00082 HLFNAMEF_TRYPRETTYTARGET = 0x00000002, 00083 HLFNAMEF_TRYFULLTARGET = 0x00000004, 00084 HLFNAMEF_TRYWIN95SHORTCUT = 0x00000008 00085 } HLFNAMEF; 00086 00087 typedef enum { 00088 HLINKMISC_RELATIVE = 0x00000001, 00089 } HLINKMISC; 00090 00091 typedef enum { 00092 HLINKSETF_TARGET = 0x00000001, 00093 HLINKSETF_LOCATION = 0x00000002 00094 } HLINKSETF; 00095 00096 HRESULT SetHlinkSite( 00097 [in, unique] IHlinkSite *pihlSite, 00098 [in] DWORD dwSiteData); 00099 00100 HRESULT GetHlinkSite( 00101 [out] IHlinkSite **ppihlSite, 00102 [out] DWORD *pdwSiteData); 00103 00104 HRESULT SetMonikerReference( 00105 [in] DWORD grfHLSETF, 00106 [in, unique] IMoniker *pimkTarget, 00107 [in, unique] LPCWSTR pwzLocation); 00108 00109 HRESULT GetMonikerReference( 00110 [in] DWORD dwWhichRef, 00111 [out] IMoniker **ppimkTarget, 00112 [out] LPWSTR *ppwzLocation); 00113 00114 HRESULT SetStringReference( 00115 [in] DWORD grfHLSETF, 00116 [in, unique] LPCWSTR pwzTarget, 00117 [in, unique] LPCWSTR pwzLocation); 00118 00119 HRESULT GetStringReference( 00120 [in] DWORD dwWhichRef, 00121 [out] LPWSTR *ppwzTarget, 00122 [out] LPWSTR *ppwzLocation); 00123 00124 HRESULT SetFriendlyName( 00125 [in, unique] LPCWSTR pwzFriendlyName); 00126 00127 HRESULT GetFriendlyName( 00128 [in] DWORD grfHLFNAMEF, 00129 [out] LPWSTR *ppwzFriendlyName); 00130 00131 HRESULT SetTargetFrameName( 00132 [in, unique] LPCWSTR pwzTargetFrameName); 00133 00134 HRESULT GetTargetFrameName( 00135 [out] LPWSTR *ppwzTargetFrameName); 00136 00137 HRESULT GetMiscStatus( 00138 [out] DWORD *pdwStatus); 00139 00140 HRESULT Navigate( 00141 [in] DWORD grfHLNF, 00142 [in, unique] LPBC pibc, 00143 [in, unique] IBindStatusCallback *pibsc, 00144 [in, unique] IHlinkBrowseContext *pihlbc); 00145 00146 HRESULT SetAdditionalParams( 00147 [in, unique] LPCWSTR pwzAdditionalParams); 00148 00149 HRESULT GetAdditionalParams( 00150 [out] LPWSTR *ppwzAdditionalParams); 00151 } 00152 00153 /***************************************************************************** 00154 * IHlinkSite interface 00155 */ 00156 [ 00157 object, 00158 uuid(79EAC9C2-BAF9-11CE-8C82-00AA004BA90B), 00159 pointer_default(unique) 00160 ] 00161 interface IHlinkSite: IUnknown 00162 { 00163 typedef [unique] IHlinkSite *LPHLINKSITE; 00164 00165 typedef enum { 00166 HLINKWHICHMK_CONTAINER = 1, 00167 HLINKWHICHMK_BASE = 2, 00168 } HLINKWHICHMK; 00169 00170 HRESULT QueryService( 00171 [in] DWORD dwSiteData, 00172 [in] REFGUID guidService, 00173 [in] REFIID riid, 00174 [out, iid_is(riid)] IUnknown **ppiunk); 00175 00176 HRESULT GetMoniker( 00177 [in] DWORD dwSiteData, 00178 [in] DWORD dwAssign, 00179 [in] DWORD dwWhich, 00180 [out] IMoniker **ppimk); 00181 00182 HRESULT ReadyToNavigate( 00183 [in] DWORD dwSiteData, 00184 [in] DWORD dwReserved); 00185 00186 HRESULT OnNavigationComplete( 00187 [in] DWORD dwSiteData, 00188 [in] DWORD dwreserved, 00189 [in] HRESULT hrError, 00190 [in, unique] LPCWSTR pwzError); 00191 } 00192 00193 /***************************************************************************** 00194 * IEnumHLITEM interface 00195 */ 00196 [ 00197 local, 00198 object, 00199 uuid(79EAC9C6-BAF9-11CE-8C82-00AA004BA90B), 00200 pointer_default(unique) 00201 ] 00202 interface IEnumHLITEM : IUnknown 00203 { 00204 typedef [unique] IEnumHLITEM *LPENUMHLITEM; 00205 00206 typedef struct tagHLITEM { 00207 ULONG uHLID; 00208 LPWSTR pwzFriendlyName; 00209 } HLITEM; 00210 typedef [unique] HLITEM *LPHLITEM; 00211 00212 HRESULT Next( 00213 [in] ULONG celt, 00214 [out] HLITEM *rgelt, 00215 [out] ULONG *pceltFetched); 00216 00217 HRESULT Skip( 00218 [in] ULONG celt); 00219 00220 HRESULT Reset(); 00221 00222 HRESULT Clone( 00223 [out] IEnumHLITEM **ppienumhlitem); 00224 } 00225 00226 /***************************************************************************** 00227 * IHlinkBrowseContext interface 00228 */ 00229 [ 00230 local, 00231 object, 00232 uuid(79EAC9C7-BAF9-11CE-8C82-00AA004BA90B), 00233 pointer_default(unique) 00234 ] 00235 interface IHlinkBrowseContext : IUnknown 00236 { 00237 typedef [unique] IHlinkBrowseContext *LPHLINKBROWSECONTEXT; 00238 00239 enum { 00240 HLTB_DOCKEDLEFT = 0, 00241 HLTB_DOCKEDTOP = 1, 00242 HLTB_DOCKEDRIGHT = 2, 00243 HLTB_DOCKEDBOTTOM = 3, 00244 HLTB_FLOATING = 4 00245 }; 00246 00247 typedef struct _tagHLTBINFO { 00248 ULONG uDockType; 00249 RECT rcTbPos; 00250 } HLTBINFO; 00251 00252 enum { 00253 HLBWIF_HASFRAMEWNDINFO = 0x00000001, 00254 HLBWIF_HASDOCWNDINFO = 0x00000002, 00255 HLBWIF_FRAMEWNDMAXIMIZED = 0x00000004, 00256 HLBWIF_DOCWNDMAXIMIZED = 0x00000008, 00257 HLBWIF_HASWEBTOOLBARINFO = 0x00000010, 00258 HLBWIF_WEBTOOLBARHIDDEN = 0x00000020 00259 }; 00260 00261 typedef struct _tagHLBWINFO { 00262 ULONG cbSize; 00263 DWORD grfHLBWIF; 00264 RECT rcFramePos; 00265 RECT rcDocPos; 00266 HLTBINFO hltbinfo; 00267 } HLBWINFO; 00268 00269 typedef [unique] HLBWINFO *LPHLBWINFO; 00270 00271 enum { 00272 HLID_INVALID = 0x00000000, 00273 HLID_PREVIOUS = 0xFFFFFFFF, 00274 HLID_NEXT = 0xFFFFFFFE, 00275 HLID_CURRENT = 0xFFFFFFFD, 00276 HLID_STACKBOTTOM = 0xFFFFFFFC, 00277 HLID_STACKTOP = 0xFFFFFFFB 00278 }; 00279 00280 enum { 00281 HLQF_ISVALID = 0x00000001, 00282 HLQF_ISCURRENT = 0x00000002 00283 }; 00284 00285 HRESULT Register( 00286 [in] DWORD reserved, 00287 [in, unique] IUnknown *piunk, 00288 [in, unique] IMoniker *pimk, 00289 [out] DWORD *pdwRegister); 00290 00291 cpp_quote("#ifdef WINE_NO_UNICODE_MACROS") 00292 cpp_quote("#undef GetObject") 00293 cpp_quote("#endif") 00294 00295 HRESULT GetObject( 00296 [in, unique] IMoniker *pimk, 00297 [in] BOOL fBindIfRootRegistered, 00298 [out] IUnknown **ppiunk); 00299 00300 HRESULT Revoke( 00301 [in] DWORD dwRegister); 00302 00303 HRESULT SetBrowseWindowInfo( 00304 [in, unique] HLBWINFO *phlbwi); 00305 00306 HRESULT GetBrowseWindowInfo( 00307 [out] HLBWINFO *phlbwi); 00308 00309 HRESULT SetInitialHlink( 00310 [in, unique] IMoniker * pimkTarget, 00311 [in, unique] LPCWSTR pwzLocation, 00312 [in, unique] LPCWSTR pwzFriendlyName); 00313 00314 HRESULT OnNavigateHlink( 00315 [in] DWORD grfHLNF, 00316 [in, unique] IMoniker *pimkTarget, 00317 [in, unique] LPCWSTR pwzLocation, 00318 [in, unique] LPCWSTR pwzFriendlyName, 00319 [out] ULONG *puHLID); 00320 00321 HRESULT UpdateHlink( 00322 [in] ULONG uHLID, 00323 [in, unique] IMoniker *pimkTarget, 00324 [in, unique] LPCWSTR pwzLocation, 00325 [in, unique] LPCWSTR pwzFriendlyName); 00326 00327 HRESULT EnumNavigationStack( 00328 [in] DWORD dwReserved, 00329 [in] DWORD grfHLFNAMEF, 00330 [out] IEnumHLITEM **ppienumhlitem); 00331 00332 HRESULT QueryHlink( 00333 [in] DWORD grfHLQF, 00334 [in] ULONG uHLID); 00335 00336 HRESULT GetHlink( 00337 [in] ULONG uHLID, 00338 [out] IHlink **ppihl); 00339 00340 HRESULT SetCurrentHlink( 00341 [in] ULONG uHLID); 00342 00343 HRESULT Clone( 00344 [in, unique] IUnknown *piunkOuter, 00345 [in] REFIID riid, 00346 [out, iid_is(riid)] IUnknown **ppiunkObj); 00347 00348 HRESULT Close( 00349 [in] DWORD reserved); 00350 } 00351 00352 00353 /***************************************************************************** 00354 * IHlinkTarget interface 00355 */ 00356 [ 00357 object, 00358 uuid(79EAC9C4-BAF9-11CE-8C82-00AA004BA90B), 00359 pointer_default(unique) 00360 ] 00361 interface IHlinkTarget : IUnknown 00362 { 00363 typedef [unique] IHlinkTarget *LPHLINKTARGET; 00364 00365 HRESULT SetBrowseContext( 00366 [in, unique] IHlinkBrowseContext *pihlbc); 00367 00368 HRESULT GetBrowseContext( 00369 [out] IHlinkBrowseContext **ppihlbc); 00370 00371 HRESULT Navigate( 00372 [in] DWORD grfHLNF, 00373 [in, unique] LPCWSTR pwzJumpLocation); 00374 00375 HRESULT GetMoniker( 00376 [in,unique] LPCWSTR pwzLocation, 00377 [in] DWORD dwAssign, 00378 [out] IMoniker **ppimkLocation); 00379 00380 HRESULT GetFriendlyName( 00381 [in,unique] LPCWSTR pwzLocation, 00382 [out] LPWSTR *ppwzFriendlyName); 00383 } 00384 00385 /***************************************************************************** 00386 * IHlinkFrame interface 00387 */ 00388 [ 00389 object, 00390 uuid(79eac9c5-baf9-11ce-8c82-00aa004ba90b), 00391 pointer_default(unique) 00392 ] 00393 00394 interface IHlinkFrame : IUnknown 00395 { 00396 typedef IHlinkFrame *LPHLINKFRAME; 00397 00398 HRESULT SetBrowseContext( 00399 [in, unique] IHlinkBrowseContext * pihlbc); 00400 HRESULT GetBrowseContext( 00401 [out] IHlinkBrowseContext ** ppihlbc); 00402 HRESULT Navigate( 00403 [in] DWORD grfHLNF, 00404 [in, unique] LPBC pbc, 00405 [in, unique] IBindStatusCallback *pibsc, 00406 [in, unique] IHlink *pihlNavigate); 00407 HRESULT OnNavigate( 00408 [in] DWORD grfHLNF, 00409 [in, unique] IMoniker *pimkTarget, 00410 [in, unique] LPCWSTR pwzLocation, 00411 [in, unique] LPCWSTR pwzFriendlyName, 00412 [in] DWORD dwreserved); 00413 HRESULT UpdateHlink( 00414 [in] ULONG uHLID, 00415 [in, unique] IMoniker *pimkTarget, 00416 [in, unique] LPCWSTR pwzLocation, 00417 [in, unique] LPCWSTR pwzFriendlyName); 00418 } 00419 00420 /***************************************************************************** 00421 * IExtensionServices interface 00422 */ 00423 [ 00424 object, 00425 uuid(79eac9cb-baf9-11ce-8c82-00aa004ba90b), 00426 pointer_default(unique) 00427 ] 00428 00429 interface IExtensionServices: IUnknown 00430 { 00431 typedef IExtensionServices *LPEXTENSIONSERVICES; 00432 00433 HRESULT SetAdditionalHeaders( 00434 [in] LPCWSTR pwzAdditionalHeaders); 00435 00436 HRESULT SetAuthenticateData( 00437 [in] HWND phwnd, 00438 [in] LPCWSTR pwzUsername, 00439 [in] LPCWSTR pwzPassword); 00440 } Generated on Sun May 27 2012 04:31:31 for ReactOS by
1.7.6.1
|