ReactOS  0.4.15-dev-313-g8fde48b
service.c File Reference
#include "mshtml_private.h"
Include dependency graph for service.c:

Go to the source code of this file.

Classes

struct  UndoManager
 
struct  editsvcs
 

Functions

static UndoManagerimpl_from_IOleUndoManager (IOleUndoManager *iface)
 
static HRESULT WINAPI OleUndoManager_QueryInterface (IOleUndoManager *iface, REFIID riid, void **ppv)
 
static ULONG WINAPI OleUndoManager_AddRef (IOleUndoManager *iface)
 
static ULONG WINAPI OleUndoManager_Release (IOleUndoManager *iface)
 
static HRESULT WINAPI OleUndoManager_Open (IOleUndoManager *iface, IOleParentUndoUnit *pPUU)
 
static HRESULT WINAPI OleUndoManager_Close (IOleUndoManager *iface, IOleParentUndoUnit *pPUU, BOOL fCommit)
 
static HRESULT WINAPI OleUndoManager_Add (IOleUndoManager *iface, IOleUndoUnit *pUU)
 
static HRESULT WINAPI OleUndoManager_GetOpenParentState (IOleUndoManager *iface, DWORD *pdwState)
 
static HRESULT WINAPI OleUndoManager_DiscardFrom (IOleUndoManager *iface, IOleUndoUnit *pUU)
 
static HRESULT WINAPI OleUndoManager_UndoTo (IOleUndoManager *iface, IOleUndoUnit *pUU)
 
static HRESULT WINAPI OleUndoManager_RedoTo (IOleUndoManager *iface, IOleUndoUnit *pUU)
 
static HRESULT WINAPI OleUndoManager_EnumUndoable (IOleUndoManager *iface, IEnumOleUndoUnits **ppEnum)
 
static HRESULT WINAPI OleUndoManager_EnumRedoable (IOleUndoManager *iface, IEnumOleUndoUnits **ppEnum)
 
static HRESULT WINAPI OleUndoManager_GetLastUndoDescription (IOleUndoManager *iface, BSTR *pBstr)
 
static HRESULT WINAPI OleUndoManager_GetLastRedoDescription (IOleUndoManager *iface, BSTR *pBstr)
 
static HRESULT WINAPI OleUndoManager_Enable (IOleUndoManager *iface, BOOL fEnable)
 
static IOleUndoManagercreate_undomgr (void)
 
static editsvcsimpl_from_IHTMLEditServices (IHTMLEditServices *iface)
 
static HRESULT WINAPI editsvcs_QueryInterface (IHTMLEditServices *iface, REFIID riid, void **ppv)
 
static ULONG WINAPI editsvcs_AddRef (IHTMLEditServices *iface)
 
static ULONG WINAPI editsvcs_Release (IHTMLEditServices *iface)
 
static HRESULT WINAPI editsvcs_AddDesigner (IHTMLEditServices *iface, IHTMLEditDesigner *pIDesigner)
 
static HRESULT WINAPI editsvcs_RemoveDesigner (IHTMLEditServices *iface, IHTMLEditDesigner *pIDesigner)
 
static HRESULT WINAPI editsvcs_GetSelectionServices (IHTMLEditServices *iface, IMarkupContainer *pIContainer, ISelectionServices **ppSelSvc)
 
static HRESULT WINAPI editsvcs_MoveToSelectionAnchor (IHTMLEditServices *iface, IMarkupPointer *pIStartAnchor)
 
static HRESULT WINAPI editsvcs_MoveToSelectionEnd (IHTMLEditServices *iface, IMarkupPointer *pIEndAnchor)
 
static HRESULT WINAPI editsvcs_SelectRange (IHTMLEditServices *iface, IMarkupPointer *pStart, IMarkupPointer *pEnd, SELECTION_TYPE eType)
 
static IHTMLEditServices * create_editsvcs (void)
 
static HTMLDocumentimpl_from_IServiceProvider (IServiceProvider *iface)
 
static HRESULT WINAPI ServiceProvider_QueryInterface (IServiceProvider *iface, REFIID riid, void **ppv)
 
static ULONG WINAPI ServiceProvider_AddRef (IServiceProvider *iface)
 
static ULONG WINAPI ServiceProvider_Release (IServiceProvider *iface)
 
static HRESULT WINAPI ServiceProvider_QueryService (IServiceProvider *iface, REFGUID guidService, REFIID riid, void **ppv)
 
void HTMLDocument_Service_Init (HTMLDocument *This)
 

Variables

static const IOleUndoManagerVtbl OleUndoManagerVtbl
 
static const IHTMLEditServicesVtbl editsvcsVtbl
 
static const IServiceProviderVtbl ServiceProviderVtbl
 

Function Documentation

◆ create_editsvcs()

static IHTMLEditServices* create_editsvcs ( void  )
static

Definition at line 304 of file service.c.

305 {
306  editsvcs *ret = heap_alloc(sizeof(*ret));
307 
308  if (ret) {
309  ret->IHTMLEditServices_iface.lpVtbl = &editsvcsVtbl;
310  ret->ref = 1;
311  return &ret->IHTMLEditServices_iface;
312  }
313 
314  return NULL;
315 }
static const IHTMLEditServicesVtbl editsvcsVtbl
Definition: service.c:292
static void * heap_alloc(size_t len)
Definition: appwiz.h:65
smooth NULL
Definition: ftsmooth.c:416
int ret

Referenced by ServiceProvider_QueryService().

◆ create_undomgr()

static IOleUndoManager* create_undomgr ( void  )
static

Definition at line 180 of file service.c.

181 {
183 
184  if (!ret) return NULL;
185 
186  ret->IOleUndoManager_iface.lpVtbl = &OleUndoManagerVtbl;
187  ret->ref = 1;
188 
189  return &ret->IOleUndoManager_iface;
190 }
static void * heap_alloc(size_t len)
Definition: appwiz.h:65
static const IOleUndoManagerVtbl OleUndoManagerVtbl
Definition: service.c:162
smooth NULL
Definition: ftsmooth.c:416
int ret

Referenced by ServiceProvider_QueryService().

◆ editsvcs_AddDesigner()

static HRESULT WINAPI editsvcs_AddDesigner ( IHTMLEditServices *  iface,
IHTMLEditDesigner *  pIDesigner 
)
static

Definition at line 244 of file service.c.

246 {
248  FIXME("(%p)->(%p)\n", This, pIDesigner);
249  return E_NOTIMPL;
250 }
#define FIXME(fmt,...)
Definition: debug.h:111
#define E_NOTIMPL
Definition: ddrawi.h:99
static editsvcs * impl_from_IHTMLEditServices(IHTMLEditServices *iface)
Definition: service.c:197

◆ editsvcs_AddRef()

static ULONG WINAPI editsvcs_AddRef ( IHTMLEditServices *  iface)
static

Definition at line 222 of file service.c.

223 {
226 
227  TRACE("(%p) ref=%d\n", This, ref);
228  return ref;
229 }
Definition: send.c:48
long LONG
Definition: pedump.c:60
GLenum GLint ref
Definition: glext.h:6028
#define TRACE(s)
Definition: solgame.cpp:4
#define InterlockedIncrement
Definition: armddk.h:53
static editsvcs * impl_from_IHTMLEditServices(IHTMLEditServices *iface)
Definition: service.c:197

◆ editsvcs_GetSelectionServices()

static HRESULT WINAPI editsvcs_GetSelectionServices ( IHTMLEditServices *  iface,
IMarkupContainer *  pIContainer,
ISelectionServices **  ppSelSvc 
)
static

Definition at line 260 of file service.c.

262 {
264  FIXME("(%p)->(%p,%p)\n", This, pIContainer, ppSelSvc);
265  return E_NOTIMPL;
266 }
#define FIXME(fmt,...)
Definition: debug.h:111
#define E_NOTIMPL
Definition: ddrawi.h:99
static editsvcs * impl_from_IHTMLEditServices(IHTMLEditServices *iface)
Definition: service.c:197

◆ editsvcs_MoveToSelectionAnchor()

static HRESULT WINAPI editsvcs_MoveToSelectionAnchor ( IHTMLEditServices *  iface,
IMarkupPointer *  pIStartAnchor 
)
static

Definition at line 268 of file service.c.

270 {
272  FIXME("(%p)->(%p)\n", This, pIStartAnchor);
273  return E_NOTIMPL;
274 }
#define FIXME(fmt,...)
Definition: debug.h:111
#define E_NOTIMPL
Definition: ddrawi.h:99
static editsvcs * impl_from_IHTMLEditServices(IHTMLEditServices *iface)
Definition: service.c:197

◆ editsvcs_MoveToSelectionEnd()

static HRESULT WINAPI editsvcs_MoveToSelectionEnd ( IHTMLEditServices *  iface,
IMarkupPointer *  pIEndAnchor 
)
static

Definition at line 276 of file service.c.

278 {
280  FIXME("(%p)->(%p)\n", This, pIEndAnchor);
281  return E_NOTIMPL;
282 }
#define FIXME(fmt,...)
Definition: debug.h:111
#define E_NOTIMPL
Definition: ddrawi.h:99
static editsvcs * impl_from_IHTMLEditServices(IHTMLEditServices *iface)
Definition: service.c:197

◆ editsvcs_QueryInterface()

static HRESULT WINAPI editsvcs_QueryInterface ( IHTMLEditServices *  iface,
REFIID  riid,
void **  ppv 
)
static

Definition at line 202 of file service.c.

203 {
205 
206  TRACE("(%p)->(%s %p)\n", This, debugstr_mshtml_guid(riid), ppv);
207 
208  if(IsEqualGUID(riid, &IID_IUnknown)) {
209  *ppv = &This->IHTMLEditServices_iface;
210  } else if(IsEqualGUID(riid, &IID_IHTMLEditServices)) {
211  *ppv = &This->IHTMLEditServices_iface;
212  } else {
213  *ppv = NULL;
214  FIXME("(%p)->(%s %p)\n", This, debugstr_guid(riid), ppv);
215  return E_NOINTERFACE;
216  }
217 
218  IUnknown_AddRef((IUnknown*)*ppv);
219  return S_OK;
220 }
#define E_NOINTERFACE
Definition: winerror.h:2364
REFIID riid
Definition: precomp.h:44
REFIID LPVOID * ppv
Definition: atlbase.h:39
const char * debugstr_mshtml_guid(const GUID *iid)
Definition: main.c:535
#define FIXME(fmt,...)
Definition: debug.h:111
smooth NULL
Definition: ftsmooth.c:416
#define debugstr_guid
Definition: kernel32.h:35
#define TRACE(s)
Definition: solgame.cpp:4
const GUID IID_IUnknown
#define S_OK
Definition: intsafe.h:59
BOOL WINAPI IsEqualGUID(REFGUID rguid1, REFGUID rguid2)
Definition: compobj.c:4112
static editsvcs * impl_from_IHTMLEditServices(IHTMLEditServices *iface)
Definition: service.c:197

◆ editsvcs_Release()

static ULONG WINAPI editsvcs_Release ( IHTMLEditServices *  iface)
static

Definition at line 231 of file service.c.

232 {
235 
236  TRACE("(%p) ref=%d\n", This, ref);
237 
238  if(!ref)
239  heap_free(This);
240 
241  return ref;
242 }
Definition: send.c:48
long LONG
Definition: pedump.c:60
GLenum GLint ref
Definition: glext.h:6028
#define TRACE(s)
Definition: solgame.cpp:4
#define InterlockedDecrement
Definition: armddk.h:52
static editsvcs * impl_from_IHTMLEditServices(IHTMLEditServices *iface)
Definition: service.c:197
static BOOL heap_free(void *mem)
Definition: appwiz.h:75

◆ editsvcs_RemoveDesigner()

static HRESULT WINAPI editsvcs_RemoveDesigner ( IHTMLEditServices *  iface,
IHTMLEditDesigner *  pIDesigner 
)
static

Definition at line 252 of file service.c.

254 {
256  FIXME("(%p)->(%p)\n", This, pIDesigner);
257  return E_NOTIMPL;
258 }
#define FIXME(fmt,...)
Definition: debug.h:111
#define E_NOTIMPL
Definition: ddrawi.h:99
static editsvcs * impl_from_IHTMLEditServices(IHTMLEditServices *iface)
Definition: service.c:197

◆ editsvcs_SelectRange()

static HRESULT WINAPI editsvcs_SelectRange ( IHTMLEditServices *  iface,
IMarkupPointer *  pStart,
IMarkupPointer *  pEnd,
SELECTION_TYPE  eType 
)
static

Definition at line 284 of file service.c.

286 {
288  FIXME("(%p)->(%p,%p,%#x)\n", This, pStart, pEnd, eType);
289  return E_NOTIMPL;
290 }
#define FIXME(fmt,...)
Definition: debug.h:111
#define E_NOTIMPL
Definition: ddrawi.h:99
static editsvcs * impl_from_IHTMLEditServices(IHTMLEditServices *iface)
Definition: service.c:197

◆ HTMLDocument_Service_Init()

void HTMLDocument_Service_Init ( HTMLDocument This)

Definition at line 409 of file service.c.

410 {
411  This->IServiceProvider_iface.lpVtbl = &ServiceProviderVtbl;
412 }
static const IServiceProviderVtbl ServiceProviderVtbl
Definition: service.c:402

Referenced by init_doc().

◆ impl_from_IHTMLEditServices()

static editsvcs* impl_from_IHTMLEditServices ( IHTMLEditServices *  iface)
inlinestatic

Definition at line 197 of file service.c.

198 {
199  return CONTAINING_RECORD(iface, editsvcs, IHTMLEditServices_iface);
200 }
PFLT_MESSAGE_WAITER_QUEUE CONTAINING_RECORD(Csq, DEVICE_EXTENSION, IrpQueue)) -> WaiterQ.mLock) _IRQL_raises_(DISPATCH_LEVEL) VOID NTAPI FltpAcquireMessageWaiterLock(_In_ PIO_CSQ Csq, _Out_ PKIRQL Irql)
Definition: Messaging.c:560

Referenced by editsvcs_AddDesigner(), editsvcs_AddRef(), editsvcs_GetSelectionServices(), editsvcs_MoveToSelectionAnchor(), editsvcs_MoveToSelectionEnd(), editsvcs_QueryInterface(), editsvcs_Release(), editsvcs_RemoveDesigner(), and editsvcs_SelectRange().

◆ impl_from_IOleUndoManager()

static UndoManager* impl_from_IOleUndoManager ( IOleUndoManager iface)
inlinestatic

Definition at line 27 of file service.c.

28 {
29  return CONTAINING_RECORD(iface, UndoManager, IOleUndoManager_iface);
30 }
PFLT_MESSAGE_WAITER_QUEUE CONTAINING_RECORD(Csq, DEVICE_EXTENSION, IrpQueue)) -> WaiterQ.mLock) _IRQL_raises_(DISPATCH_LEVEL) VOID NTAPI FltpAcquireMessageWaiterLock(_In_ PIO_CSQ Csq, _Out_ PKIRQL Irql)
Definition: Messaging.c:560

Referenced by OleUndoManager_Add(), OleUndoManager_AddRef(), OleUndoManager_Close(), OleUndoManager_DiscardFrom(), OleUndoManager_Enable(), OleUndoManager_EnumRedoable(), OleUndoManager_EnumUndoable(), OleUndoManager_GetLastRedoDescription(), OleUndoManager_GetLastUndoDescription(), OleUndoManager_GetOpenParentState(), OleUndoManager_Open(), OleUndoManager_QueryInterface(), OleUndoManager_RedoTo(), OleUndoManager_Release(), and OleUndoManager_UndoTo().

◆ impl_from_IServiceProvider()

static HTMLDocument* impl_from_IServiceProvider ( IServiceProvider iface)
inlinestatic

Definition at line 321 of file service.c.

322 {
323  return CONTAINING_RECORD(iface, HTMLDocument, IServiceProvider_iface);
324 }
PFLT_MESSAGE_WAITER_QUEUE CONTAINING_RECORD(Csq, DEVICE_EXTENSION, IrpQueue)) -> WaiterQ.mLock) _IRQL_raises_(DISPATCH_LEVEL) VOID NTAPI FltpAcquireMessageWaiterLock(_In_ PIO_CSQ Csq, _Out_ PKIRQL Irql)
Definition: Messaging.c:560

Referenced by ServiceProvider_AddRef(), ServiceProvider_QueryInterface(), ServiceProvider_QueryService(), and ServiceProvider_Release().

◆ OleUndoManager_Add()

static HRESULT WINAPI OleUndoManager_Add ( IOleUndoManager iface,
IOleUndoUnit pUU 
)
static

Definition at line 90 of file service.c.

91 {
93  FIXME("(%p)->(%p)\n", This, pUU);
94  return E_NOTIMPL;
95 }
#define FIXME(fmt,...)
Definition: debug.h:111
#define E_NOTIMPL
Definition: ddrawi.h:99
static UndoManager * impl_from_IOleUndoManager(IOleUndoManager *iface)
Definition: service.c:27

◆ OleUndoManager_AddRef()

static ULONG WINAPI OleUndoManager_AddRef ( IOleUndoManager iface)
static

Definition at line 52 of file service.c.

53 {
56 
57  TRACE("(%p) ref=%d\n", This, ref);
58 
59  return ref;
60 }
Definition: send.c:48
long LONG
Definition: pedump.c:60
GLenum GLint ref
Definition: glext.h:6028
#define TRACE(s)
Definition: solgame.cpp:4
#define InterlockedIncrement
Definition: armddk.h:53
static UndoManager * impl_from_IOleUndoManager(IOleUndoManager *iface)
Definition: service.c:27

◆ OleUndoManager_Close()

static HRESULT WINAPI OleUndoManager_Close ( IOleUndoManager iface,
IOleParentUndoUnit pPUU,
BOOL  fCommit 
)
static

Definition at line 82 of file service.c.

84 {
86  FIXME("(%p)->(%p %x)\n", This, pPUU, fCommit);
87  return E_NOTIMPL;
88 }
#define FIXME(fmt,...)
Definition: debug.h:111
#define E_NOTIMPL
Definition: ddrawi.h:99
static UndoManager * impl_from_IOleUndoManager(IOleUndoManager *iface)
Definition: service.c:27

◆ OleUndoManager_DiscardFrom()

static HRESULT WINAPI OleUndoManager_DiscardFrom ( IOleUndoManager iface,
IOleUndoUnit pUU 
)
static

Definition at line 104 of file service.c.

105 {
107  FIXME("(%p)->(%p)\n", This, pUU);
108  return S_OK;
109 }
#define FIXME(fmt,...)
Definition: debug.h:111
#define S_OK
Definition: intsafe.h:59
static UndoManager * impl_from_IOleUndoManager(IOleUndoManager *iface)
Definition: service.c:27

◆ OleUndoManager_Enable()

static HRESULT WINAPI OleUndoManager_Enable ( IOleUndoManager iface,
BOOL  fEnable 
)
static

Definition at line 155 of file service.c.

156 {
158  FIXME("(%p)->(%x)\n", This, fEnable);
159  return E_NOTIMPL;
160 }
#define FIXME(fmt,...)
Definition: debug.h:111
#define E_NOTIMPL
Definition: ddrawi.h:99
static UndoManager * impl_from_IOleUndoManager(IOleUndoManager *iface)
Definition: service.c:27

◆ OleUndoManager_EnumRedoable()

static HRESULT WINAPI OleUndoManager_EnumRedoable ( IOleUndoManager iface,
IEnumOleUndoUnits **  ppEnum 
)
static

Definition at line 133 of file service.c.

135 {
137  FIXME("(%p)->(%p)\n", This, ppEnum);
138  return E_NOTIMPL;
139 }
#define FIXME(fmt,...)
Definition: debug.h:111
#define E_NOTIMPL
Definition: ddrawi.h:99
static UndoManager * impl_from_IOleUndoManager(IOleUndoManager *iface)
Definition: service.c:27

◆ OleUndoManager_EnumUndoable()

static HRESULT WINAPI OleUndoManager_EnumUndoable ( IOleUndoManager iface,
IEnumOleUndoUnits **  ppEnum 
)
static

Definition at line 125 of file service.c.

127 {
129  FIXME("(%p)->(%p)\n", This, ppEnum);
130  return E_NOTIMPL;
131 }
#define FIXME(fmt,...)
Definition: debug.h:111
#define E_NOTIMPL
Definition: ddrawi.h:99
static UndoManager * impl_from_IOleUndoManager(IOleUndoManager *iface)
Definition: service.c:27

◆ OleUndoManager_GetLastRedoDescription()

static HRESULT WINAPI OleUndoManager_GetLastRedoDescription ( IOleUndoManager iface,
BSTR pBstr 
)
static

Definition at line 148 of file service.c.

149 {
151  FIXME("(%p)->(%p)\n", This, pBstr);
152  return E_NOTIMPL;
153 }
#define FIXME(fmt,...)
Definition: debug.h:111
#define E_NOTIMPL
Definition: ddrawi.h:99
static UndoManager * impl_from_IOleUndoManager(IOleUndoManager *iface)
Definition: service.c:27

◆ OleUndoManager_GetLastUndoDescription()

static HRESULT WINAPI OleUndoManager_GetLastUndoDescription ( IOleUndoManager iface,
BSTR pBstr 
)
static

Definition at line 141 of file service.c.

142 {
144  FIXME("(%p)->(%p)\n", This, pBstr);
145  return E_NOTIMPL;
146 }
#define FIXME(fmt,...)
Definition: debug.h:111
#define E_NOTIMPL
Definition: ddrawi.h:99
static UndoManager * impl_from_IOleUndoManager(IOleUndoManager *iface)
Definition: service.c:27

◆ OleUndoManager_GetOpenParentState()

static HRESULT WINAPI OleUndoManager_GetOpenParentState ( IOleUndoManager iface,
DWORD pdwState 
)
static

Definition at line 97 of file service.c.

98 {
100  FIXME("(%p)->(%p)\n", This, pdwState);
101  return E_NOTIMPL;
102 }
#define FIXME(fmt,...)
Definition: debug.h:111
#define E_NOTIMPL
Definition: ddrawi.h:99
static UndoManager * impl_from_IOleUndoManager(IOleUndoManager *iface)
Definition: service.c:27

◆ OleUndoManager_Open()

static HRESULT WINAPI OleUndoManager_Open ( IOleUndoManager iface,
IOleParentUndoUnit pPUU 
)
static

Definition at line 75 of file service.c.

76 {
78  FIXME("(%p)->(%p)\n", This, pPUU);
79  return E_NOTIMPL;
80 }
#define FIXME(fmt,...)
Definition: debug.h:111
#define E_NOTIMPL
Definition: ddrawi.h:99
static UndoManager * impl_from_IOleUndoManager(IOleUndoManager *iface)
Definition: service.c:27

◆ OleUndoManager_QueryInterface()

static HRESULT WINAPI OleUndoManager_QueryInterface ( IOleUndoManager iface,
REFIID  riid,
void **  ppv 
)
static

Definition at line 32 of file service.c.

33 {
35 
37  TRACE("(%p)->(IID_IUnknown %p)\n", This, ppv);
38  *ppv = &This->IOleUndoManager_iface;
39  }else if(IsEqualGUID(riid, &IID_IOleUndoManager)) {
40  TRACE("(%p)->(IID_IOleUndoManager %p)\n", This, ppv);
41  *ppv = &This->IOleUndoManager_iface;
42  }else {
43  *ppv = NULL;
44  FIXME("(%p)->(%s %p)\n", This, debugstr_guid(riid), ppv);
45  return E_NOINTERFACE;
46  }
47 
48  IUnknown_AddRef((IUnknown*)*ppv);
49  return S_OK;
50 }
#define E_NOINTERFACE
Definition: winerror.h:2364
REFIID riid
Definition: precomp.h:44
REFIID LPVOID * ppv
Definition: atlbase.h:39
#define FIXME(fmt,...)
Definition: debug.h:111
smooth NULL
Definition: ftsmooth.c:416
#define debugstr_guid
Definition: kernel32.h:35
#define TRACE(s)
Definition: solgame.cpp:4
const GUID IID_IUnknown
#define S_OK
Definition: intsafe.h:59
BOOL WINAPI IsEqualGUID(REFGUID rguid1, REFGUID rguid2)
Definition: compobj.c:4112
static UndoManager * impl_from_IOleUndoManager(IOleUndoManager *iface)
Definition: service.c:27

◆ OleUndoManager_RedoTo()

static HRESULT WINAPI OleUndoManager_RedoTo ( IOleUndoManager iface,
IOleUndoUnit pUU 
)
static

Definition at line 118 of file service.c.

119 {
121  FIXME("(%p)->(%p)\n", This, pUU);
122  return E_NOTIMPL;
123 }
#define FIXME(fmt,...)
Definition: debug.h:111
#define E_NOTIMPL
Definition: ddrawi.h:99
static UndoManager * impl_from_IOleUndoManager(IOleUndoManager *iface)
Definition: service.c:27

◆ OleUndoManager_Release()

static ULONG WINAPI OleUndoManager_Release ( IOleUndoManager iface)
static

Definition at line 62 of file service.c.

63 {
66 
67  TRACE("(%p) ref=%d\n", This, ref);
68 
69  if(!ref)
70  heap_free(This);
71 
72  return ref;
73 }
Definition: send.c:48
long LONG
Definition: pedump.c:60
GLenum GLint ref
Definition: glext.h:6028
#define TRACE(s)
Definition: solgame.cpp:4
#define InterlockedDecrement
Definition: armddk.h:52
static UndoManager * impl_from_IOleUndoManager(IOleUndoManager *iface)
Definition: service.c:27
static BOOL heap_free(void *mem)
Definition: appwiz.h:75

◆ OleUndoManager_UndoTo()

static HRESULT WINAPI OleUndoManager_UndoTo ( IOleUndoManager iface,
IOleUndoUnit pUU 
)
static

Definition at line 111 of file service.c.

112 {
114  FIXME("(%p)->(%p)\n", This, pUU);
115  return E_NOTIMPL;
116 }
#define FIXME(fmt,...)
Definition: debug.h:111
#define E_NOTIMPL
Definition: ddrawi.h:99
static UndoManager * impl_from_IOleUndoManager(IOleUndoManager *iface)
Definition: service.c:27

◆ ServiceProvider_AddRef()

static ULONG WINAPI ServiceProvider_AddRef ( IServiceProvider iface)
static

Definition at line 332 of file service.c.

333 {
335  return htmldoc_addref(This);
336 }
static HTMLDocument * impl_from_IServiceProvider(IServiceProvider *iface)
Definition: service.c:321
static ULONG htmldoc_addref(HTMLDocument *This)

◆ ServiceProvider_QueryInterface()

static HRESULT WINAPI ServiceProvider_QueryInterface ( IServiceProvider iface,
REFIID  riid,
void **  ppv 
)
static

Definition at line 326 of file service.c.

327 {
330 }
REFIID riid
Definition: precomp.h:44
REFIID LPVOID * ppv
Definition: atlbase.h:39
static HTMLDocument * impl_from_IServiceProvider(IServiceProvider *iface)
Definition: service.c:321
static HRESULT htmldoc_query_interface(HTMLDocument *This, REFIID riid, void **ppv)

◆ ServiceProvider_QueryService()

static HRESULT WINAPI ServiceProvider_QueryService ( IServiceProvider iface,
REFGUID  guidService,
REFIID  riid,
void **  ppv 
)
static

Definition at line 344 of file service.c.

346 {
348 
349  if(IsEqualGUID(&CLSID_CMarkup, guidService)) {
350  FIXME("(%p)->(CLSID_CMarkup %s %p)\n", This, debugstr_guid(riid), ppv);
351  return E_NOINTERFACE;
352  }
353 
354  if(IsEqualGUID(&SID_SOleUndoManager, guidService)) {
355  TRACE("SID_SOleUndoManager\n");
356 
357  if(!This->doc_obj->undomgr)
358  This->doc_obj->undomgr = create_undomgr();
359 
360  if (!This->doc_obj->undomgr)
361  return E_OUTOFMEMORY;
362 
363  return IOleUndoManager_QueryInterface(This->doc_obj->undomgr, riid, ppv);
364  }
365 
366  if(IsEqualGUID(&SID_SContainerDispatch, guidService)) {
367  TRACE("SID_SContainerDispatch\n");
368  return IHTMLDocument2_QueryInterface(&This->IHTMLDocument2_iface, riid, ppv);
369  }
370 
371  if(IsEqualGUID(&IID_IWindowForBindingUI, guidService)) {
372  TRACE("IID_IWindowForBindingUI\n");
373  return IWindowForBindingUI_QueryInterface(&This->doc_obj->IWindowForBindingUI_iface, riid, ppv);
374  }
375 
376  if(IsEqualGUID(&SID_SHTMLEditServices, guidService)) {
377  TRACE("SID_SHTMLEditServices\n");
378 
379  if(!This->doc_obj->editsvcs)
380  This->doc_obj->editsvcs = create_editsvcs();
381 
382  if (!This->doc_obj->editsvcs)
383  return E_OUTOFMEMORY;
384 
385  return IHTMLEditServices_QueryInterface(This->doc_obj->editsvcs, riid, ppv);
386  }
387 
388  TRACE("(%p)->(%s %s %p)\n", This, debugstr_guid(guidService), debugstr_guid(riid), ppv);
389 
390  if(This->doc_obj->client) {
391  HRESULT hres;
392 
393  hres = do_query_service((IUnknown*)This->doc_obj->client, guidService, riid, ppv);
394  if(SUCCEEDED(hres))
395  return hres;
396  }
397 
398  FIXME("unknown service %s\n", debugstr_guid(guidService));
399  return E_NOINTERFACE;
400 }
#define E_NOINTERFACE
Definition: winerror.h:2364
REFIID riid
Definition: precomp.h:44
REFIID LPVOID * ppv
Definition: atlbase.h:39
static IHTMLEditServices * create_editsvcs(void)
Definition: service.c:304
#define E_OUTOFMEMORY
Definition: ddrawi.h:100
#define FIXME(fmt,...)
Definition: debug.h:111
HRESULT do_query_service(IUnknown *unk, REFGUID guid_service, REFIID riid, void **ppv)
Definition: main.c:141
#define debugstr_guid
Definition: kernel32.h:35
#define TRACE(s)
Definition: solgame.cpp:4
HRESULT hres
Definition: protocol.c:465
LONG HRESULT
Definition: typedefs.h:78
static HTMLDocument * impl_from_IServiceProvider(IServiceProvider *iface)
Definition: service.c:321
static IOleUndoManager * create_undomgr(void)
Definition: service.c:180
BOOL WINAPI IsEqualGUID(REFGUID rguid1, REFGUID rguid2)
Definition: compobj.c:4112
#define SUCCEEDED(hr)
Definition: intsafe.h:57

◆ ServiceProvider_Release()

static ULONG WINAPI ServiceProvider_Release ( IServiceProvider iface)
static

Definition at line 338 of file service.c.

339 {
341  return htmldoc_release(This);
342 }
static ULONG htmldoc_release(HTMLDocument *This)
static HTMLDocument * impl_from_IServiceProvider(IServiceProvider *iface)
Definition: service.c:321

Variable Documentation

◆ editsvcsVtbl

const IHTMLEditServicesVtbl editsvcsVtbl
static
Initial value:
= {
}
static ULONG WINAPI editsvcs_Release(IHTMLEditServices *iface)
Definition: service.c:231
static HRESULT WINAPI editsvcs_RemoveDesigner(IHTMLEditServices *iface, IHTMLEditDesigner *pIDesigner)
Definition: service.c:252
static ULONG WINAPI editsvcs_AddRef(IHTMLEditServices *iface)
Definition: service.c:222
static HRESULT WINAPI editsvcs_AddDesigner(IHTMLEditServices *iface, IHTMLEditDesigner *pIDesigner)
Definition: service.c:244
static HRESULT WINAPI editsvcs_MoveToSelectionEnd(IHTMLEditServices *iface, IMarkupPointer *pIEndAnchor)
Definition: service.c:276
static HRESULT WINAPI editsvcs_GetSelectionServices(IHTMLEditServices *iface, IMarkupContainer *pIContainer, ISelectionServices **ppSelSvc)
Definition: service.c:260
static HRESULT WINAPI editsvcs_SelectRange(IHTMLEditServices *iface, IMarkupPointer *pStart, IMarkupPointer *pEnd, SELECTION_TYPE eType)
Definition: service.c:284
static HRESULT WINAPI editsvcs_MoveToSelectionAnchor(IHTMLEditServices *iface, IMarkupPointer *pIStartAnchor)
Definition: service.c:268
static HRESULT WINAPI editsvcs_QueryInterface(IHTMLEditServices *iface, REFIID riid, void **ppv)
Definition: service.c:202

Definition at line 292 of file service.c.

Referenced by create_editsvcs().

◆ OleUndoManagerVtbl

const IOleUndoManagerVtbl OleUndoManagerVtbl
static
Initial value:
= {
}
static HRESULT WINAPI OleUndoManager_EnumUndoable(IOleUndoManager *iface, IEnumOleUndoUnits **ppEnum)
Definition: service.c:125
static HRESULT WINAPI OleUndoManager_RedoTo(IOleUndoManager *iface, IOleUndoUnit *pUU)
Definition: service.c:118
static HRESULT WINAPI OleUndoManager_Enable(IOleUndoManager *iface, BOOL fEnable)
Definition: service.c:155
static HRESULT WINAPI OleUndoManager_GetOpenParentState(IOleUndoManager *iface, DWORD *pdwState)
Definition: service.c:97
static ULONG WINAPI OleUndoManager_Release(IOleUndoManager *iface)
Definition: service.c:62
static HRESULT WINAPI OleUndoManager_UndoTo(IOleUndoManager *iface, IOleUndoUnit *pUU)
Definition: service.c:111
static HRESULT WINAPI OleUndoManager_DiscardFrom(IOleUndoManager *iface, IOleUndoUnit *pUU)
Definition: service.c:104
static HRESULT WINAPI OleUndoManager_QueryInterface(IOleUndoManager *iface, REFIID riid, void **ppv)
Definition: service.c:32
static HRESULT WINAPI OleUndoManager_GetLastRedoDescription(IOleUndoManager *iface, BSTR *pBstr)
Definition: service.c:148
static ULONG WINAPI OleUndoManager_AddRef(IOleUndoManager *iface)
Definition: service.c:52
static HRESULT WINAPI OleUndoManager_EnumRedoable(IOleUndoManager *iface, IEnumOleUndoUnits **ppEnum)
Definition: service.c:133
static HRESULT WINAPI OleUndoManager_Open(IOleUndoManager *iface, IOleParentUndoUnit *pPUU)
Definition: service.c:75
static HRESULT WINAPI OleUndoManager_Add(IOleUndoManager *iface, IOleUndoUnit *pUU)
Definition: service.c:90
static HRESULT WINAPI OleUndoManager_Close(IOleUndoManager *iface, IOleParentUndoUnit *pPUU, BOOL fCommit)
Definition: service.c:82
static HRESULT WINAPI OleUndoManager_GetLastUndoDescription(IOleUndoManager *iface, BSTR *pBstr)
Definition: service.c:141

Definition at line 162 of file service.c.

Referenced by create_undomgr().

◆ ServiceProviderVtbl

const IServiceProviderVtbl ServiceProviderVtbl
static
Initial value:
= {
}
static HRESULT WINAPI ServiceProvider_QueryInterface(IServiceProvider *iface, REFIID riid, void **ppv)
Definition: service.c:326
static ULONG WINAPI ServiceProvider_AddRef(IServiceProvider *iface)
Definition: service.c:332
static HRESULT WINAPI ServiceProvider_QueryService(IServiceProvider *iface, REFGUID guidService, REFIID riid, void **ppv)
Definition: service.c:344
static ULONG WINAPI ServiceProvider_Release(IServiceProvider *iface)
Definition: service.c:338

Definition at line 402 of file service.c.

Referenced by HTMLDocument_Service_Init().