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 IClassFactoryVtbl
*lpVtbl
;
48 extern IClassFactoryImpl SHDOCVW_ClassFactory
;
51 /**********************************************************************
52 * IOleObject declaration for SHDOCVW.DLL
57 IOleObjectVtbl
*lpVtbl
;
61 extern IOleObjectImpl SHDOCVW_OleObject
;
64 /**********************************************************************
65 * IOleInPlaceObject declaration for SHDOCVW.DLL
70 IOleInPlaceObjectVtbl
*lpVtbl
;
72 } IOleInPlaceObjectImpl
;
74 extern IOleInPlaceObjectImpl SHDOCVW_OleInPlaceObject
;
77 /**********************************************************************
78 * IOleControl declaration for SHDOCVW.DLL
83 IOleControlVtbl
*lpVtbl
;
87 extern IOleControlImpl SHDOCVW_OleControl
;
90 /**********************************************************************
91 * IWebBrowser declaration for SHDOCVW.DLL
96 IWebBrowserVtbl
*lpVtbl
;
100 extern IWebBrowserImpl SHDOCVW_WebBrowser
;
103 /**********************************************************************
104 * IProvideClassInfo declaration for SHDOCVW.DLL
108 /* IUnknown fields */
109 IProvideClassInfoVtbl
*lpVtbl
;
111 } IProvideClassInfoImpl
;
113 extern IProvideClassInfoImpl SHDOCVW_ProvideClassInfo
;
116 /**********************************************************************
117 * IProvideClassInfo2 declaration for SHDOCVW.DLL
121 /* IUnknown fields */
122 IProvideClassInfo2Vtbl
*lpVtbl
;
124 } IProvideClassInfo2Impl
;
126 extern IProvideClassInfo2Impl SHDOCVW_ProvideClassInfo2
;
129 /**********************************************************************
130 * IPersistStorage declaration for SHDOCVW.DLL
134 /* IUnknown fields */
135 IPersistStorageVtbl
*lpVtbl
;
137 } IPersistStorageImpl
;
139 extern IPersistStorageImpl SHDOCVW_PersistStorage
;
142 /**********************************************************************
143 * IPersistStreamInit declaration for SHDOCVW.DLL
147 /* IUnknown fields */
148 IPersistStreamInitVtbl
*lpVtbl
;
150 } IPersistStreamInitImpl
;
152 extern IPersistStreamInitImpl SHDOCVW_PersistStreamInit
;
155 /**********************************************************************
156 * IQuickActivate declaration for SHDOCVW.DLL
160 /* IUnknown fields */
161 IQuickActivateVtbl
*lpVtbl
;
163 } IQuickActivateImpl
;
165 extern IQuickActivateImpl SHDOCVW_QuickActivate
;
168 /**********************************************************************
169 * IConnectionPointContainer declaration for SHDOCVW.DLL
173 /* IUnknown fields */
174 IConnectionPointContainerVtbl
*lpVtbl
;
176 } IConnectionPointContainerImpl
;
178 extern IConnectionPointContainerImpl SHDOCVW_ConnectionPointContainer
;
181 /**********************************************************************
182 * IConnectionPoint declaration for SHDOCVW.DLL
186 /* IUnknown fields */
187 IConnectionPointVtbl
*lpVtbl
;
189 } IConnectionPointImpl
;
191 extern IConnectionPointImpl SHDOCVW_ConnectionPoint
;
193 /**********************************************************************
194 * Dll lifetime tracking declaration for shdocvw.dll
196 extern LONG SHDOCVW_refCount
;
197 static inline void SHDOCVW_LockModule() { InterlockedIncrement( &SHDOCVW_refCount
); }
198 static inline void SHDOCVW_UnlockModule() { InterlockedDecrement( &SHDOCVW_refCount
); }
200 #endif /* __WINE_SHDOCVW_H */