ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

hlink.c
Go to the documentation of this file.
00001 /*
00002  * Copyright 2005-2006 Jacek Caban for 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 #include <stdarg.h>
00020 
00021 #define COBJMACROS
00022 
00023 #include "windef.h"
00024 #include "winbase.h"
00025 #include "winuser.h"
00026 #include "ole2.h"
00027 
00028 #include "wine/debug.h"
00029 #include "wine/unicode.h"
00030 
00031 #include "mshtml_private.h"
00032 
00033 WINE_DEFAULT_DEBUG_CHANNEL(mshtml);
00034 
00035 /**********************************************************
00036  * IHlinkTarget implementation
00037  */
00038 
00039 #define HLINKTRG_THIS(iface) DEFINE_THIS(HTMLDocument, HlinkTarget, iface)
00040 
00041 static HRESULT WINAPI HlinkTarget_QueryInterface(IHlinkTarget *iface, REFIID riid, void **ppv)
00042 {
00043     HTMLDocument *This = HLINKTRG_THIS(iface);
00044     return IHTMLDocument2_QueryInterface(HTMLDOC(This), riid, ppv);
00045 }
00046 
00047 static ULONG WINAPI HlinkTarget_AddRef(IHlinkTarget *iface)
00048 {
00049     HTMLDocument *This = HLINKTRG_THIS(iface);
00050     return IHTMLDocument2_AddRef(HTMLDOC(This));
00051 }
00052 
00053 static ULONG WINAPI HlinkTarget_Release(IHlinkTarget *iface)
00054 {
00055     HTMLDocument *This = HLINKTRG_THIS(iface);
00056     return IHTMLDocument2_Release(HTMLDOC(This));
00057 }
00058 
00059 static HRESULT WINAPI HlinkTarget_SetBrowseContext(IHlinkTarget *iface, IHlinkBrowseContext *pihlbc)
00060 {
00061     HTMLDocument *This = HLINKTRG_THIS(iface);
00062     FIXME("(%p)->(%p)\n", This, pihlbc);
00063     return E_NOTIMPL;
00064 }
00065 
00066 static HRESULT WINAPI HlinkTarget_GetBrowseContext(IHlinkTarget *iface, IHlinkBrowseContext **ppihlbc)
00067 {
00068     HTMLDocument *This = HLINKTRG_THIS(iface);
00069     FIXME("(%p)->(%p)\n", This, ppihlbc);
00070     return E_NOTIMPL;
00071 }
00072 
00073 static HRESULT WINAPI HlinkTarget_Navigate(IHlinkTarget *iface, DWORD grfHLNF, LPCWSTR pwzJumpLocation)
00074 {
00075     HTMLDocument *This = HLINKTRG_THIS(iface);
00076 
00077     TRACE("(%p)->(%08x %s)\n", This, grfHLNF, debugstr_w(pwzJumpLocation));
00078 
00079     if(grfHLNF)
00080         FIXME("Unsupported grfHLNF=%08x\n", grfHLNF);
00081     if(pwzJumpLocation)
00082         FIXME("JumpLocation not supported\n");
00083 
00084     return IOleObject_DoVerb(OLEOBJ(This), OLEIVERB_SHOW, NULL, NULL, -1, NULL, NULL);
00085 }
00086 
00087 static HRESULT WINAPI HlinkTarget_GetMoniker(IHlinkTarget *iface, LPCWSTR pwzLocation, DWORD dwAssign,
00088         IMoniker **ppimkLocation)
00089 {
00090     HTMLDocument *This = HLINKTRG_THIS(iface);
00091     FIXME("(%p)->(%s %08x %p)\n", This, debugstr_w(pwzLocation), dwAssign, ppimkLocation);
00092     return E_NOTIMPL;
00093 }
00094 
00095 static HRESULT WINAPI HlinkTarget_GetFriendlyName(IHlinkTarget *iface, LPCWSTR pwzLocation,
00096         LPWSTR *ppwzFriendlyName)
00097 {
00098     HTMLDocument *This = HLINKTRG_THIS(iface);
00099     FIXME("(%p)->(%s %p)\n", This, debugstr_w(pwzLocation), ppwzFriendlyName);
00100     return E_NOTIMPL;
00101 }
00102 
00103 static const IHlinkTargetVtbl HlinkTargetVtbl = {
00104     HlinkTarget_QueryInterface,
00105     HlinkTarget_AddRef,
00106     HlinkTarget_Release,
00107     HlinkTarget_SetBrowseContext,
00108     HlinkTarget_GetBrowseContext,
00109     HlinkTarget_Navigate,
00110     HlinkTarget_GetMoniker,
00111     HlinkTarget_GetFriendlyName
00112 };
00113 
00114 void HTMLDocument_Hlink_Init(HTMLDocument *This)
00115 {
00116     This->lpHlinkTargetVtbl = &HlinkTargetVtbl;
00117 }

Generated on Fri May 25 2012 04:23:01 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.