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

htmltextcont.c
Go to the documentation of this file.
00001 /*
00002  * Copyright 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 "config.h"
00020 
00021 #include <stdarg.h>
00022 #include <stdio.h>
00023 
00024 #define COBJMACROS
00025 
00026 #include "windef.h"
00027 #include "winbase.h"
00028 #include "winuser.h"
00029 #include "ole2.h"
00030 
00031 #include "wine/debug.h"
00032 
00033 #include "mshtml_private.h"
00034 
00035 WINE_DEFAULT_DEBUG_CHANNEL(mshtml);
00036 
00037 #define HTMLTEXTCONT_THIS(iface) DEFINE_THIS(HTMLTextContainer, HTMLTextContainer, iface)
00038 
00039 static HRESULT WINAPI HTMLTextContainer_QueryInterface(IHTMLTextContainer *iface,
00040                                                        REFIID riid, void **ppv)
00041 {
00042     HTMLTextContainer *This = HTMLTEXTCONT_THIS(iface);
00043     return IHTMLElement_QueryInterface(HTMLELEM(&This->element), riid, ppv);
00044 }
00045 
00046 static ULONG WINAPI HTMLTextContainer_AddRef(IHTMLTextContainer *iface)
00047 {
00048     HTMLTextContainer *This = HTMLTEXTCONT_THIS(iface);
00049     return IHTMLElement_AddRef(HTMLELEM(&This->element));
00050 }
00051 
00052 static ULONG WINAPI HTMLTextContainer_Release(IHTMLTextContainer *iface)
00053 {
00054     HTMLTextContainer *This = HTMLTEXTCONT_THIS(iface);
00055     return IHTMLElement_Release(HTMLELEM(&This->element));
00056 }
00057 
00058 static HRESULT WINAPI HTMLTextContainer_GetTypeInfoCount(IHTMLTextContainer *iface, UINT *pctinfo)
00059 {
00060     HTMLTextContainer *This = HTMLTEXTCONT_THIS(iface);
00061     return IDispatchEx_GetTypeInfoCount(DISPATCHEX(&This->element.node.dispex), pctinfo);
00062 }
00063 
00064 static HRESULT WINAPI HTMLTextContainer_GetTypeInfo(IHTMLTextContainer *iface, UINT iTInfo,
00065                                               LCID lcid, ITypeInfo **ppTInfo)
00066 {
00067     HTMLTextContainer *This = HTMLTEXTCONT_THIS(iface);
00068     return IDispatchEx_GetTypeInfo(DISPATCHEX(&This->element.node.dispex), iTInfo, lcid, ppTInfo);
00069 }
00070 
00071 static HRESULT WINAPI HTMLTextContainer_GetIDsOfNames(IHTMLTextContainer *iface, REFIID riid,
00072                                                 LPOLESTR *rgszNames, UINT cNames,
00073                                                 LCID lcid, DISPID *rgDispId)
00074 {
00075     HTMLTextContainer *This = HTMLTEXTCONT_THIS(iface);
00076     return IDispatchEx_GetIDsOfNames(DISPATCHEX(&This->element.node.dispex), riid, rgszNames, cNames, lcid, rgDispId);
00077 }
00078 
00079 static HRESULT WINAPI HTMLTextContainer_Invoke(IHTMLTextContainer *iface, DISPID dispIdMember,
00080                             REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams,
00081                             VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr)
00082 {
00083     HTMLTextContainer *This = HTMLTEXTCONT_THIS(iface);
00084     return IDispatchEx_Invoke(DISPATCHEX(&This->element.node.dispex), dispIdMember, riid, lcid, wFlags, pDispParams,
00085             pVarResult, pExcepInfo, puArgErr);
00086 }
00087 
00088 static HRESULT WINAPI HTMLTextContainer_createControlRange(IHTMLTextContainer *iface,
00089                                                            IDispatch **range)
00090 {
00091     HTMLTextContainer *This = HTMLTEXTCONT_THIS(iface);
00092     FIXME("(%p)->(%p)\n", This, range);
00093     return E_NOTIMPL;
00094 }
00095 
00096 static HRESULT WINAPI HTMLTextContainer_get_scrollHeight(IHTMLTextContainer *iface, LONG *p)
00097 {
00098     HTMLTextContainer *This = HTMLTEXTCONT_THIS(iface);
00099 
00100     TRACE("(%p)->(%p)\n", This, p);
00101 
00102     return IHTMLElement2_get_scrollHeight(HTMLELEM2(&This->element), p);
00103 }
00104 
00105 static HRESULT WINAPI HTMLTextContainer_get_scrollWidth(IHTMLTextContainer *iface, LONG *p)
00106 {
00107     HTMLTextContainer *This = HTMLTEXTCONT_THIS(iface);
00108 
00109     TRACE("(%p)->(%p)\n", This, p);
00110 
00111     return IHTMLElement2_get_scrollWidth(HTMLELEM2(&This->element), p);
00112 }
00113 
00114 static HRESULT WINAPI HTMLTextContainer_put_scrollTop(IHTMLTextContainer *iface, LONG v)
00115 {
00116     HTMLTextContainer *This = HTMLTEXTCONT_THIS(iface);
00117 
00118     TRACE("(%p)->(%d)\n", This, v);
00119 
00120     return IHTMLElement2_put_scrollTop(HTMLELEM2(&This->element), v);
00121 }
00122 
00123 static HRESULT WINAPI HTMLTextContainer_get_scrollTop(IHTMLTextContainer *iface, LONG *p)
00124 {
00125     HTMLTextContainer *This = HTMLTEXTCONT_THIS(iface);
00126 
00127     TRACE("(%p)->(%p)\n", This, p);
00128 
00129     return IHTMLElement2_get_scrollTop(HTMLELEM2(&This->element), p);
00130 }
00131 
00132 static HRESULT WINAPI HTMLTextContainer_put_scrollLeft(IHTMLTextContainer *iface, LONG v)
00133 {
00134     HTMLTextContainer *This = HTMLTEXTCONT_THIS(iface);
00135 
00136     TRACE("(%p)->(%d)\n", This, v);
00137 
00138     return IHTMLElement2_put_scrollLeft(HTMLELEM2(&This->element), v);
00139 }
00140 
00141 static HRESULT WINAPI HTMLTextContainer_get_scrollLeft(IHTMLTextContainer *iface, LONG *p)
00142 {
00143     HTMLTextContainer *This = HTMLTEXTCONT_THIS(iface);
00144 
00145     TRACE("(%p)->(%p)\n", This, p);
00146 
00147     return IHTMLElement2_get_scrollLeft(HTMLELEM2(&This->element), p);
00148 }
00149 
00150 static HRESULT WINAPI HTMLTextContainer_put_onscroll(IHTMLTextContainer *iface, VARIANT v)
00151 {
00152     HTMLTextContainer *This = HTMLTEXTCONT_THIS(iface);
00153     FIXME("(%p)->()\n", This);
00154     return E_NOTIMPL;
00155 }
00156 
00157 static HRESULT WINAPI HTMLTextContainer_get_onscroll(IHTMLTextContainer *iface, VARIANT *p)
00158 {
00159     HTMLTextContainer *This = HTMLTEXTCONT_THIS(iface);
00160     FIXME("(%p)->(%p)\n", This, p);
00161     return E_NOTIMPL;
00162 }
00163 
00164 #undef HTMLTEXTCONT_THIS
00165 
00166 static const IHTMLTextContainerVtbl HTMLTextContainerVtbl = {
00167     HTMLTextContainer_QueryInterface,
00168     HTMLTextContainer_AddRef,
00169     HTMLTextContainer_Release,
00170     HTMLTextContainer_GetTypeInfoCount,
00171     HTMLTextContainer_GetTypeInfo,
00172     HTMLTextContainer_GetIDsOfNames,
00173     HTMLTextContainer_Invoke,
00174     HTMLTextContainer_createControlRange,
00175     HTMLTextContainer_get_scrollHeight,
00176     HTMLTextContainer_get_scrollWidth,
00177     HTMLTextContainer_put_scrollTop,
00178     HTMLTextContainer_get_scrollTop,
00179     HTMLTextContainer_put_scrollLeft,
00180     HTMLTextContainer_get_scrollLeft,
00181     HTMLTextContainer_put_onscroll,
00182     HTMLTextContainer_get_onscroll
00183 };
00184 
00185 void HTMLTextContainer_Init(HTMLTextContainer *This, HTMLDocumentNode *doc, nsIDOMHTMLElement *nselem,
00186         dispex_static_data_t *dispex_data)
00187 {
00188     This->lpHTMLTextContainerVtbl = &HTMLTextContainerVtbl;
00189 
00190     HTMLElement_Init(&This->element, doc, nselem, dispex_data);
00191 
00192     ConnectionPoint_Init(&This->cp, &This->element.cp_container, &DIID_HTMLTextContainerEvents, NULL);
00193 }

Generated on Sat May 26 2012 04:23:36 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.