2 * Header includes for shdocvw.dll
4 * Copyright 2001 John R. Sheets (for CodeWeavers)
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Lesser General Public
8 * License as published by the Free Software Foundation; either
9 * version 2.1 of the License, or (at your option) any later version.
11 * This library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Lesser General Public License for more details.
16 * You should have received a copy of the GNU Lesser General Public
17 * License along with this library; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
21 #ifndef __WINE_SHDOCVW_H
22 #define __WINE_SHDOCVW_H
24 #define COM_NO_WINDOWS_H
25 /* FIXME: Is there a better way to deal with all these includes? */
38 /**********************************************************************
39 * IClassFactory declaration for SHDOCVW.DLL
44 const IClassFactoryVtbl
*lpVtbl
;
48 extern IClassFactoryImpl SHDOCVW_ClassFactory
;
51 /**********************************************************************
52 * IOleObject declaration for SHDOCVW.DLL
57 const IOleObjectVtbl
*lpVtbl
;
61 extern IOleObjectImpl SHDOCVW_OleObject
;
63 /**********************************************************************
64 * IWebBrowser declaration for SHDOCVW.DLL
69 const IWebBrowserVtbl
*lpVtbl
;
73 extern IWebBrowserImpl SHDOCVW_WebBrowser
;
76 /**********************************************************************
77 * IProvideClassInfo declaration for SHDOCVW.DLL
82 const IProvideClassInfoVtbl
*lpVtbl
;
84 } IProvideClassInfoImpl
;
86 extern IProvideClassInfoImpl SHDOCVW_ProvideClassInfo
;
89 /**********************************************************************
90 * IProvideClassInfo2 declaration for SHDOCVW.DLL
95 const IProvideClassInfo2Vtbl
*lpVtbl
;
97 } IProvideClassInfo2Impl
;
99 extern IProvideClassInfo2Impl SHDOCVW_ProvideClassInfo2
;
102 /**********************************************************************
103 * IPersistStorage declaration for SHDOCVW.DLL
107 /* IUnknown fields */
108 const IPersistStorageVtbl
*lpVtbl
;
110 } IPersistStorageImpl
;
112 extern IPersistStorageImpl SHDOCVW_PersistStorage
;
115 /**********************************************************************
116 * IPersistStreamInit declaration for SHDOCVW.DLL
120 /* IUnknown fields */
121 const IPersistStreamInitVtbl
*lpVtbl
;
123 } IPersistStreamInitImpl
;
125 extern IPersistStreamInitImpl SHDOCVW_PersistStreamInit
;
128 /**********************************************************************
129 * IQuickActivate declaration for SHDOCVW.DLL
133 /* IUnknown fields */
134 const IQuickActivateVtbl
*lpVtbl
;
136 } IQuickActivateImpl
;
138 extern IQuickActivateImpl SHDOCVW_QuickActivate
;
141 /**********************************************************************
142 * IConnectionPointContainer declaration for SHDOCVW.DLL
146 /* IUnknown fields */
147 const IConnectionPointContainerVtbl
*lpVtbl
;
149 } IConnectionPointContainerImpl
;
151 extern IConnectionPointContainerImpl SHDOCVW_ConnectionPointContainer
;
154 /**********************************************************************
155 * IConnectionPoint declaration for SHDOCVW.DLL
159 /* IUnknown fields */
160 const IConnectionPointVtbl
*lpVtbl
;
162 } IConnectionPointImpl
;
164 /**********************************************************************
165 * Dll lifetime tracking declaration for shdocvw.dll
167 extern LONG SHDOCVW_refCount
;
168 static inline void SHDOCVW_LockModule(void) { InterlockedIncrement( &SHDOCVW_refCount
); }
169 static inline void SHDOCVW_UnlockModule(void) { InterlockedDecrement( &SHDOCVW_refCount
); }
171 #endif /* __WINE_SHDOCVW_H */