ReactOS 0.4.15-dev-7942-gd23573b
view.c File Reference
#include "mshtml_private.h"
Include dependency graph for view.c:

Go to the source code of this file.

Classes

struct  tooltip_data
 

Macros

#define TIMER_ID   0x1000
 

Functions

static void paint_document (HTMLDocumentObj *This)
 
static void activate_gecko (NSContainer *This)
 
void update_doc (HTMLDocument *This, DWORD flags)
 
void update_title (HTMLDocumentObj *This)
 
static LRESULT on_timer (HTMLDocumentObj *This)
 
void notif_focus (HTMLDocumentObj *This)
 
static LRESULT WINAPI serverwnd_proc (HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
 
static void register_serverwnd_class (void)
 
static HRESULT activate_window (HTMLDocumentObj *This)
 
static LRESULT WINAPI tooltips_proc (HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
 
static void create_tooltips_window (HTMLDocumentObj *This)
 
void show_tooltip (HTMLDocumentObj *This, DWORD x, DWORD y, LPCWSTR text)
 
void hide_tooltip (HTMLDocumentObj *This)
 
HRESULT call_set_active_object (IOleInPlaceUIWindow *window, IOleInPlaceActiveObject *act_obj)
 
static HTMLDocumentimpl_from_IOleDocumentView (IOleDocumentView *iface)
 
static HRESULT WINAPI OleDocumentView_QueryInterface (IOleDocumentView *iface, REFIID riid, void **ppvObject)
 
static ULONG WINAPI OleDocumentView_AddRef (IOleDocumentView *iface)
 
static ULONG WINAPI OleDocumentView_Release (IOleDocumentView *iface)
 
static HRESULT WINAPI OleDocumentView_SetInPlaceSite (IOleDocumentView *iface, IOleInPlaceSite *pIPSite)
 
static HRESULT WINAPI OleDocumentView_GetInPlaceSite (IOleDocumentView *iface, IOleInPlaceSite **ppIPSite)
 
static HRESULT WINAPI OleDocumentView_GetDocument (IOleDocumentView *iface, IUnknown **ppunk)
 
static HRESULT WINAPI OleDocumentView_SetRect (IOleDocumentView *iface, LPRECT prcView)
 
static HRESULT WINAPI OleDocumentView_GetRect (IOleDocumentView *iface, LPRECT prcView)
 
static HRESULT WINAPI OleDocumentView_SetRectComplex (IOleDocumentView *iface, LPRECT prcView, LPRECT prcHScroll, LPRECT prcVScroll, LPRECT prcSizeBox)
 
static HRESULT WINAPI OleDocumentView_Show (IOleDocumentView *iface, BOOL fShow)
 
static HRESULT WINAPI OleDocumentView_UIActivate (IOleDocumentView *iface, BOOL fUIActivate)
 
static HRESULT WINAPI OleDocumentView_Open (IOleDocumentView *iface)
 
static HRESULT WINAPI OleDocumentView_CloseView (IOleDocumentView *iface, DWORD dwReserved)
 
static HRESULT WINAPI OleDocumentView_SaveViewState (IOleDocumentView *iface, LPSTREAM pstm)
 
static HRESULT WINAPI OleDocumentView_ApplyViewState (IOleDocumentView *iface, LPSTREAM pstm)
 
static HRESULT WINAPI OleDocumentView_Clone (IOleDocumentView *iface, IOleInPlaceSite *pIPSiteNew, IOleDocumentView **ppViewNew)
 
static HTMLDocumentimpl_from_IViewObjectEx (IViewObjectEx *iface)
 
static HRESULT WINAPI ViewObject_QueryInterface (IViewObjectEx *iface, REFIID riid, void **ppv)
 
static ULONG WINAPI ViewObject_AddRef (IViewObjectEx *iface)
 
static ULONG WINAPI ViewObject_Release (IViewObjectEx *iface)
 
static HRESULT WINAPI ViewObject_Draw (IViewObjectEx *iface, DWORD dwDrawAspect, LONG lindex, void *pvAspect, DVTARGETDEVICE *ptd, HDC hdcTargetDev, HDC hdcDraw, LPCRECTL lprcBounds, LPCRECTL lprcWBounds, BOOL(CALLBACK *pfnContinue)(ULONG_PTR dwContinue), ULONG_PTR dwContinue)
 
static HRESULT WINAPI ViewObject_GetColorSet (IViewObjectEx *iface, DWORD dwDrawAspect, LONG lindex, void *pvAspect, DVTARGETDEVICE *ptd, HDC hicTargetDev, LOGPALETTE **ppColorSet)
 
static HRESULT WINAPI ViewObject_Freeze (IViewObjectEx *iface, DWORD dwDrawAspect, LONG lindex, void *pvAspect, DWORD *pdwFreeze)
 
static HRESULT WINAPI ViewObject_Unfreeze (IViewObjectEx *iface, DWORD dwFreeze)
 
static HRESULT WINAPI ViewObject_SetAdvise (IViewObjectEx *iface, DWORD aspects, DWORD advf, IAdviseSink *pAdvSink)
 
static HRESULT WINAPI ViewObject_GetAdvise (IViewObjectEx *iface, DWORD *pAspects, DWORD *pAdvf, IAdviseSink **ppAdvSink)
 
static HRESULT WINAPI ViewObject_GetExtent (IViewObjectEx *iface, DWORD dwDrawAspect, LONG lindex, DVTARGETDEVICE *ptd, LPSIZEL lpsizel)
 
static HRESULT WINAPI ViewObject_GetRect (IViewObjectEx *iface, DWORD dwAspect, LPRECTL pRect)
 
static HRESULT WINAPI ViewObject_GetViewStatus (IViewObjectEx *iface, DWORD *pdwStatus)
 
static HRESULT WINAPI ViewObject_QueryHitPoint (IViewObjectEx *iface, DWORD dwAspect, LPCRECT pRectBounds, POINT ptlLoc, LONG lCloseHint, DWORD *pHitResult)
 
static HRESULT WINAPI ViewObject_QueryHitRect (IViewObjectEx *iface, DWORD dwAspect, LPCRECT pRectBounds, LPCRECT pRectLoc, LONG lCloseHint, DWORD *pHitResult)
 
static HRESULT WINAPI ViewObject_GetNaturalExtent (IViewObjectEx *iface, DWORD dwAspect, LONG lindex, DVTARGETDEVICE *ptd, HDC hicTargetDev, DVEXTENTINFO *pExtentInfo, LPSIZEL pSizel)
 
void HTMLDocument_View_Init (HTMLDocument *This)
 
static HTMLDocumentObjimpl_from_IWindowForBindingUI (IWindowForBindingUI *iface)
 
static HRESULT WINAPI WindowForBindingUI_QueryInterface (IWindowForBindingUI *iface, REFIID riid, void **ppv)
 
static ULONG WINAPI WindowForBindingUI_AddRef (IWindowForBindingUI *iface)
 
static ULONG WINAPI WindowForBindingUI_Release (IWindowForBindingUI *iface)
 
static HRESULT WINAPI WindowForBindingUI_GetWindow (IWindowForBindingUI *iface, REFGUID rguidReason, HWND *phwnd)
 
void init_binding_ui (HTMLDocumentObj *doc)
 

Variables

static const WCHAR wszInternetExplorer_Server []
 
static const WCHAR wszTooltipData [] = {'t','o','o','l','t','i','p','_','d','a','t','a',0}
 
static ATOM serverwnd_class = 0
 
static const IOleDocumentViewVtbl OleDocumentViewVtbl
 
static const IViewObjectExVtbl ViewObjectVtbl
 
static const IWindowForBindingUIVtbl WindowForBindingUIVtbl
 

Macro Definition Documentation

◆ TIMER_ID

#define TIMER_ID   0x1000

Definition at line 21 of file view.c.

Function Documentation

◆ activate_gecko()

static void activate_gecko ( NSContainer This)
static

Definition at line 51 of file view.c.

52{
53 TRACE("(%p) %p\n", This, This->window);
54
55 SetParent(This->hwnd, This->doc->hwnd);
56 ShowWindow(This->hwnd, SW_SHOW);
57
58 nsIBaseWindow_SetVisibility(This->window, TRUE);
59 nsIBaseWindow_SetEnabled(This->window, TRUE);
60}
#define TRUE
Definition: types.h:120
#define TRACE(s)
Definition: solgame.cpp:4
BOOL WINAPI ShowWindow(_In_ HWND, _In_ int)
HWND WINAPI SetParent(_In_ HWND, _In_opt_ HWND)
#define SW_SHOW
Definition: winuser.h:775

Referenced by activate_window().

◆ activate_window()

static HRESULT activate_window ( HTMLDocumentObj This)
static

Definition at line 208 of file view.c.

209{
210 IOleInPlaceFrame *pIPFrame;
211 IOleCommandTarget *cmdtrg;
212 IOleInPlaceSiteEx *ipsiteex;
213 RECT posrect, cliprect;
214 OLEINPLACEFRAMEINFO frameinfo;
215 HWND parent_hwnd;
217
218 if(!serverwnd_class)
220
221 hres = IOleInPlaceSite_CanInPlaceActivate(This->ipsite);
222 if(hres != S_OK) {
223 WARN("CanInPlaceActivate returned: %08x\n", hres);
224 return FAILED(hres) ? hres : E_FAIL;
225 }
226
227 frameinfo.cb = sizeof(OLEINPLACEFRAMEINFO);
228 hres = IOleInPlaceSite_GetWindowContext(This->ipsite, &pIPFrame, &This->ip_window,
229 &posrect, &cliprect, &frameinfo);
230 if(FAILED(hres)) {
231 WARN("GetWindowContext failed: %08x\n", hres);
232 return hres;
233 }
234
235 TRACE("got window context: %p %p {%d %d %d %d} {%d %d %d %d} {%d %x %p %p %d}\n",
236 pIPFrame, This->ip_window, posrect.left, posrect.top, posrect.right, posrect.bottom,
237 cliprect.left, cliprect.top, cliprect.right, cliprect.bottom,
238 frameinfo.cb, frameinfo.fMDIApp, frameinfo.hwndFrame, frameinfo.haccel, frameinfo.cAccelEntries);
239
240 hres = IOleInPlaceSite_GetWindow(This->ipsite, &parent_hwnd);
241 if(FAILED(hres)) {
242 WARN("GetWindow failed: %08x\n", hres);
243 return hres;
244 }
245
246 TRACE("got parent window %p\n", parent_hwnd);
247
248 if(This->hwnd) {
249 if(GetParent(This->hwnd) != parent_hwnd)
250 SetParent(This->hwnd, parent_hwnd);
252 posrect.left, posrect.top, posrect.right-posrect.left, posrect.bottom-posrect.top,
254 }else {
257 posrect.left, posrect.top, posrect.right-posrect.left, posrect.bottom-posrect.top,
258 parent_hwnd, NULL, hInst, This);
259
260 TRACE("Created window %p\n", This->hwnd);
261
262 SetWindowPos(This->hwnd, NULL, 0, 0, 0, 0,
265
266 /* NOTE:
267 * Windows implementation calls:
268 * RegisterWindowMessage("MSWHEEL_ROLLMSG");
269 */
270 SetTimer(This->hwnd, TIMER_ID, 100, NULL);
271 }
272
273 if(This->nscontainer)
274 activate_gecko(This->nscontainer);
275
276 This->in_place_active = TRUE;
277 hres = IOleInPlaceSite_QueryInterface(This->ipsite, &IID_IOleInPlaceSiteEx, (void**)&ipsiteex);
278 if(SUCCEEDED(hres)) {
279 BOOL redraw = FALSE;
280
281 hres = IOleInPlaceSiteEx_OnInPlaceActivateEx(ipsiteex, &redraw, 0);
282 IOleInPlaceSiteEx_Release(ipsiteex);
283 if(redraw)
284 FIXME("unsupported redraw\n");
285 }else{
286 hres = IOleInPlaceSite_OnInPlaceActivate(This->ipsite);
287 }
288 if(FAILED(hres)) {
289 WARN("OnInPlaceActivate failed: %08x\n", hres);
290 This->in_place_active = FALSE;
291 return hres;
292 }
293
294 hres = IOleClientSite_QueryInterface(This->client, &IID_IOleCommandTarget, (void**)&cmdtrg);
295 if(SUCCEEDED(hres)) {
296 VARIANT var;
297
298 IOleInPlaceFrame_SetStatusText(pIPFrame, NULL);
299
300 V_VT(&var) = VT_I4;
301 V_I4(&var) = 0;
302 IOleCommandTarget_Exec(cmdtrg, NULL, OLECMDID_SETPROGRESSMAX,
303 OLECMDEXECOPT_DONTPROMPTUSER, &var, NULL);
304 IOleCommandTarget_Exec(cmdtrg, NULL, OLECMDID_SETPROGRESSPOS,
305 OLECMDEXECOPT_DONTPROMPTUSER, &var, NULL);
306
307 IOleCommandTarget_Release(cmdtrg);
308 }
309
310 if(This->frame)
311 IOleInPlaceFrame_Release(This->frame);
312 This->frame = pIPFrame;
313
314 if(!This->request_uiactivate) {
315 hres = IOleInPlaceSite_QueryInterface(This->ipsite, &IID_IOleInPlaceSiteEx, (void**)&ipsiteex);
316 if(SUCCEEDED(hres)) {
317 IOleInPlaceSiteEx_RequestUIActivate(ipsiteex);
318 IOleInPlaceSiteEx_Release(ipsiteex);
319 }
320 }
321
322 This->window_active = TRUE;
323
324 return S_OK;
325}
#define FIXME(fmt,...)
Definition: debug.h:111
#define WARN(fmt,...)
Definition: debug.h:112
#define E_FAIL
Definition: ddrawi.h:102
#define NULL
Definition: types.h:112
#define FALSE
Definition: types.h:117
@ VT_I4
Definition: compat.h:2298
static ATOM serverwnd_class
Definition: view.c:28
static void register_serverwnd_class(void)
Definition: view.c:194
static void activate_gecko(NSContainer *This)
Definition: view.c:51
#define TIMER_ID
Definition: view.c:21
static const WCHAR wszInternetExplorer_Server[]
Definition: view.c:23
HINSTANCE hInst
Definition: dxdiag.c:13
unsigned int BOOL
Definition: ntddk_ex.h:94
#define S_OK
Definition: intsafe.h:52
#define SUCCEEDED(hr)
Definition: intsafe.h:50
#define FAILED(hr)
Definition: intsafe.h:51
const char * var
Definition: shader.c:5666
HRESULT hres
Definition: protocol.c:465
#define V_VT(A)
Definition: oleauto.h:211
#define V_I4(A)
Definition: oleauto.h:247
#define WS_CHILD
Definition: pedump.c:617
#define WS_CLIPSIBLINGS
Definition: pedump.c:618
#define WS_CLIPCHILDREN
Definition: pedump.c:619
void redraw(int x, int y, int cx, int cy)
Definition: qtewin.cpp:1248
LONG right
Definition: windef.h:308
LONG bottom
Definition: windef.h:309
LONG top
Definition: windef.h:307
LONG left
Definition: windef.h:306
#define SWP_NOACTIVATE
Definition: winuser.h:1242
#define SWP_NOREDRAW
Definition: winuser.h:1246
BOOL WINAPI RedrawWindow(_In_opt_ HWND, _In_opt_ LPCRECT, _In_opt_ HRGN, _In_ UINT)
BOOL WINAPI SetWindowPos(_In_ HWND, _In_opt_ HWND, _In_ int, _In_ int, _In_ int, _In_ int, _In_ UINT)
#define SWP_NOMOVE
Definition: winuser.h:1244
#define SWP_NOSIZE
Definition: winuser.h:1245
UINT_PTR WINAPI SetTimer(_In_opt_ HWND, _In_ UINT_PTR, _In_ UINT, _In_opt_ TIMERPROC)
#define HWND_TOP
Definition: winuser.h:1207
#define RDW_ALLCHILDREN
Definition: winuser.h:1221
HWND WINAPI CreateWindowExW(_In_ DWORD dwExStyle, _In_opt_ LPCWSTR lpClassName, _In_opt_ LPCWSTR lpWindowName, _In_ DWORD dwStyle, _In_ int X, _In_ int Y, _In_ int nWidth, _In_ int nHeight, _In_opt_ HWND hWndParent, _In_opt_ HMENU hMenu, _In_opt_ HINSTANCE hInstance, _In_opt_ LPVOID lpParam)
#define SWP_SHOWWINDOW
Definition: winuser.h:1248
HWND WINAPI GetParent(_In_ HWND)
#define SWP_NOZORDER
Definition: winuser.h:1247
#define RDW_NOERASE
Definition: winuser.h:1215
#define RDW_INVALIDATE
Definition: winuser.h:1214

Referenced by OleDocumentView_Show(), and OleDocumentView_UIActivate().

◆ call_set_active_object()

HRESULT call_set_active_object ( IOleInPlaceUIWindow window,
IOleInPlaceActiveObject act_obj 
)

Definition at line 398 of file view.c.

399{
400 static WCHAR html_documentW[30];
401
402 if(act_obj && !html_documentW[0]) {
403 LoadStringW(hInst, IDS_HTMLDOCUMENT, html_documentW,
404 sizeof(html_documentW)/sizeof(WCHAR));
405 }
406
407 return IOleInPlaceUIWindow_SetActiveObject(window, act_obj, act_obj ? html_documentW : NULL);
408}
#define IDS_HTMLDOCUMENT
Definition: resource.h:21
static IHTMLWindow2 * window
Definition: events.c:77
int WINAPI LoadStringW(_In_opt_ HINSTANCE hInstance, _In_ UINT uID, _Out_writes_to_(cchBufferMax, return+1) LPWSTR lpBuffer, _In_ int cchBufferMax)
__wchar_t WCHAR
Definition: xmlstorage.h:180

Referenced by OleDocumentView_UIActivate(), and setup_edit_mode().

◆ create_tooltips_window()

static void create_tooltips_window ( HTMLDocumentObj This)
static

Definition at line 349 of file view.c.

350{
351 tooltip_data *data = heap_alloc(sizeof(*data));
352
354 CW_USEDEFAULT, CW_USEDEFAULT, 10, 10, This->hwnd, NULL, hInst, NULL);
355
356 data->doc = This;
357 data->proc = (WNDPROC)GetWindowLongPtrW(This->tooltips_hwnd, GWLP_WNDPROC);
358
359 SetPropW(This->tooltips_hwnd, wszTooltipData, data);
360
362
363 SetWindowPos(This->tooltips_hwnd, HWND_TOPMOST,0, 0, 0, 0,
365
366}
static void * heap_alloc(size_t len)
Definition: appwiz.h:66
static const WCHAR wszTooltipData[]
Definition: view.c:26
static LRESULT WINAPI tooltips_proc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
Definition: view.c:327
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
Definition: gl.h:1950
__int3264 LONG_PTR
Definition: mstsclib_h.h:276
#define WS_POPUP
Definition: pedump.c:616
#define TOOLTIPS_CLASSW
Definition: commctrl.h:1707
#define TTS_NOPREFIX
Definition: commctrl.h:1758
#define GWLP_WNDPROC
Definition: treelist.c:66
#define GetWindowLongPtrW
Definition: winuser.h:4829
#define HWND_TOPMOST
Definition: winuser.h:1208
BOOL WINAPI SetPropW(_In_ HWND, _In_ LPCWSTR, _In_opt_ HANDLE)
#define CW_USEDEFAULT
Definition: winuser.h:225
LRESULT(CALLBACK * WNDPROC)(HWND, UINT, WPARAM, LPARAM)
Definition: winuser.h:2906
#define SetWindowLongPtrW
Definition: winuser.h:5346

◆ hide_tooltip()

void hide_tooltip ( HTMLDocumentObj This)

Definition at line 386 of file view.c.

387{
388 TTTOOLINFOW toolinfo = {
389 sizeof(TTTOOLINFOW), 0, This->hwnd, 0xdeadbeef,
390 {0,0,0,0}, NULL, NULL, 0};
391
392 TRACE("(%p)\n", This);
393
394 SendMessageW(This->tooltips_hwnd, TTM_DELTOOLW, 0, (LPARAM)&toolinfo);
395 SendMessageW(This->tooltips_hwnd, TTM_ACTIVATE, FALSE, 0);
396}
#define TTM_ACTIVATE
Definition: commctrl.h:1784
#define TTM_DELTOOLW
Definition: commctrl.h:1789
struct tagTOOLINFOW TTTOOLINFOW
LONG_PTR LPARAM
Definition: windef.h:208
LRESULT WINAPI SendMessageW(_In_ HWND, _In_ UINT, _In_ WPARAM, _In_ LPARAM)

Referenced by nsTooltipListener_OnHideTooltip().

◆ HTMLDocument_View_Init()

void HTMLDocument_View_Init ( HTMLDocument This)

Definition at line 875 of file view.c.

876{
877 This->IOleDocumentView_iface.lpVtbl = &OleDocumentViewVtbl;
878 This->IViewObjectEx_iface.lpVtbl = &ViewObjectVtbl;
879}
static const IViewObject2Vtbl ViewObjectVtbl
Definition: view.c:135
static const IOleDocumentViewVtbl OleDocumentViewVtbl
Definition: view.c:705

Referenced by init_doc().

◆ impl_from_IOleDocumentView()

◆ impl_from_IViewObjectEx()

◆ impl_from_IWindowForBindingUI()

static HTMLDocumentObj * impl_from_IWindowForBindingUI ( IWindowForBindingUI iface)
inlinestatic

◆ init_binding_ui()

void init_binding_ui ( HTMLDocumentObj doc)

Definition at line 935 of file view.c.

936{
938}
static const IWindowForBindingUIVtbl WindowForBindingUIVtbl
Definition: view.c:928
IWindowForBindingUI IWindowForBindingUI_iface

Referenced by HTMLDocument_Create().

◆ notif_focus()

void notif_focus ( HTMLDocumentObj This)

Definition at line 130 of file view.c.

131{
134
135 if(!This->client)
136 return;
137
138 hres = IOleClientSite_QueryInterface(This->client, &IID_IOleControlSite, (void**)&site);
139 if(FAILED(hres))
140 return;
141
142 IOleControlSite_OnFocus(site, This->focus);
143 IOleControlSite_Release(site);
144}
static IActiveScriptSite * site
Definition: script.c:149
const GUID IID_IOleControlSite

Referenced by handle_blur(), handle_focus(), OleDocumentView_UIActivate(), and OleInPlaceObjectWindowless_InPlaceDeactivate().

◆ OleDocumentView_AddRef()

static ULONG WINAPI OleDocumentView_AddRef ( IOleDocumentView iface)
static

Definition at line 425 of file view.c.

426{
428 return htmldoc_addref(This);
429}
static HTMLDocument * impl_from_IOleDocumentView(IOleDocumentView *iface)
Definition: view.c:414
static ULONG htmldoc_addref(HTMLDocument *This)

◆ OleDocumentView_ApplyViewState()

static HRESULT WINAPI OleDocumentView_ApplyViewState ( IOleDocumentView iface,
LPSTREAM  pstm 
)
static

Definition at line 690 of file view.c.

691{
693 FIXME("(%p)->(%p)\n", This, pstm);
694 return E_NOTIMPL;
695}
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ OleDocumentView_Clone()

static HRESULT WINAPI OleDocumentView_Clone ( IOleDocumentView iface,
IOleInPlaceSite pIPSiteNew,
IOleDocumentView **  ppViewNew 
)
static

Definition at line 697 of file view.c.

699{
701 FIXME("(%p)->(%p %p)\n", This, pIPSiteNew, ppViewNew);
702 return E_NOTIMPL;
703}

◆ OleDocumentView_CloseView()

static HRESULT WINAPI OleDocumentView_CloseView ( IOleDocumentView iface,
DWORD  dwReserved 
)
static

Definition at line 665 of file view.c.

666{
668 TRACE("(%p)->(%x)\n", This, dwReserved);
669
670 if(dwReserved)
671 WARN("dwReserved = %d\n", dwReserved);
672
673 /* NOTE:
674 * Windows implementation calls QueryInterface(IID_IOleCommandTarget),
675 * QueryInterface(IID_IOleControlSite) and KillTimer
676 */
677
678 IOleDocumentView_Show(iface, FALSE);
679
680 return S_OK;
681}
_In_ HANDLE _In_ DWORD _In_ DWORD _Inout_opt_ LPOVERLAPPED _In_opt_ LPTRANSMIT_FILE_BUFFERS _In_ DWORD dwReserved
Definition: mswsock.h:95

◆ OleDocumentView_GetDocument()

static HRESULT WINAPI OleDocumentView_GetDocument ( IOleDocumentView iface,
IUnknown **  ppunk 
)
static

Definition at line 468 of file view.c.

469{
471 TRACE("(%p)->(%p)\n", This, ppunk);
472
473 if(!ppunk)
474 return E_INVALIDARG;
475
477 *ppunk = (IUnknown*)&This->IHTMLDocument2_iface;
478 return S_OK;
479}
#define E_INVALIDARG
Definition: ddrawi.h:101

◆ OleDocumentView_GetInPlaceSite()

static HRESULT WINAPI OleDocumentView_GetInPlaceSite ( IOleDocumentView iface,
IOleInPlaceSite **  ppIPSite 
)
static

Definition at line 453 of file view.c.

454{
456 TRACE("(%p)->(%p)\n", This, ppIPSite);
457
458 if(!ppIPSite)
459 return E_INVALIDARG;
460
461 if(This->doc_obj->ipsite)
462 IOleInPlaceSite_AddRef(This->doc_obj->ipsite);
463
464 *ppIPSite = This->doc_obj->ipsite;
465 return S_OK;
466}

◆ OleDocumentView_GetRect()

static HRESULT WINAPI OleDocumentView_GetRect ( IOleDocumentView iface,
LPRECT  prcView 
)
static

Definition at line 503 of file view.c.

504{
506
507 TRACE("(%p)->(%p)\n", This, prcView);
508
509 if(!prcView)
510 return E_INVALIDARG;
511
512 GetClientRect(This->doc_obj->hwnd, prcView);
513 return S_OK;
514}
BOOL WINAPI GetClientRect(_In_ HWND, _Out_ LPRECT)

◆ OleDocumentView_Open()

static HRESULT WINAPI OleDocumentView_Open ( IOleDocumentView iface)
static

Definition at line 658 of file view.c.

659{
661 FIXME("(%p)\n", This);
662 return E_NOTIMPL;
663}

◆ OleDocumentView_QueryInterface()

static HRESULT WINAPI OleDocumentView_QueryInterface ( IOleDocumentView iface,
REFIID  riid,
void **  ppvObject 
)
static

Definition at line 419 of file view.c.

420{
423}
REFIID riid
Definition: atlbase.h:39
static HRESULT htmldoc_query_interface(HTMLDocument *This, REFIID riid, void **ppv)
_In_ void _In_ PCCERT_CONTEXT _In_opt_ LPFILETIME _In_ DWORD _In_ DWORD _Outptr_opt_ void ** ppvObject
Definition: wincrypt.h:6082

◆ OleDocumentView_Release()

static ULONG WINAPI OleDocumentView_Release ( IOleDocumentView iface)
static

Definition at line 431 of file view.c.

432{
434 return htmldoc_release(This);
435}
static ULONG htmldoc_release(HTMLDocument *This)

◆ OleDocumentView_SaveViewState()

static HRESULT WINAPI OleDocumentView_SaveViewState ( IOleDocumentView iface,
LPSTREAM  pstm 
)
static

Definition at line 683 of file view.c.

684{
686 FIXME("(%p)->(%p)\n", This, pstm);
687 return E_NOTIMPL;
688}

◆ OleDocumentView_SetInPlaceSite()

static HRESULT WINAPI OleDocumentView_SetInPlaceSite ( IOleDocumentView iface,
IOleInPlaceSite pIPSite 
)
static

Definition at line 437 of file view.c.

438{
440 TRACE("(%p)->(%p)\n", This, pIPSite);
441
442 if(pIPSite)
443 IOleInPlaceSite_AddRef(pIPSite);
444
445 if(This->doc_obj->ipsite)
446 IOleInPlaceSite_Release(This->doc_obj->ipsite);
447
448 This->doc_obj->ipsite = pIPSite;
449 This->doc_obj->request_uiactivate = TRUE;
450 return S_OK;
451}

◆ OleDocumentView_SetRect()

static HRESULT WINAPI OleDocumentView_SetRect ( IOleDocumentView iface,
LPRECT  prcView 
)
static

Definition at line 481 of file view.c.

482{
484 RECT rect;
485
486 TRACE("(%p)->(%p)\n", This, prcView);
487
488 if(!prcView)
489 return E_INVALIDARG;
490
491 if(This->doc_obj->hwnd) {
492 GetClientRect(This->doc_obj->hwnd, &rect);
493 if(memcmp(prcView, &rect, sizeof(RECT))) {
494 InvalidateRect(This->doc_obj->hwnd, NULL, TRUE);
495 SetWindowPos(This->doc_obj->hwnd, NULL, prcView->left, prcView->top, prcView->right,
497 }
498 }
499
500 return S_OK;
501}
int memcmp(void *Buffer1, void *Buffer2, ACPI_SIZE Count)
Definition: utclib.c:112
& rect
Definition: startmenu.cpp:1413
BOOL WINAPI InvalidateRect(_In_opt_ HWND, _In_opt_ LPCRECT, _In_ BOOL)

◆ OleDocumentView_SetRectComplex()

static HRESULT WINAPI OleDocumentView_SetRectComplex ( IOleDocumentView iface,
LPRECT  prcView,
LPRECT  prcHScroll,
LPRECT  prcVScroll,
LPRECT  prcSizeBox 
)
static

Definition at line 516 of file view.c.

518{
520 FIXME("(%p)->(%p %p %p %p)\n", This, prcView, prcHScroll, prcVScroll, prcSizeBox);
521 return E_NOTIMPL;
522}

◆ OleDocumentView_Show()

static HRESULT WINAPI OleDocumentView_Show ( IOleDocumentView iface,
BOOL  fShow 
)
static

Definition at line 524 of file view.c.

525{
528
529 TRACE("(%p)->(%x)\n", This, fShow);
530
531 if(fShow) {
532 if(!This->doc_obj->ui_active) {
533 hres = activate_window(This->doc_obj);
534 if(FAILED(hres))
535 return hres;
536 }
538 ShowWindow(This->doc_obj->hwnd, SW_SHOW);
539 }else {
540 ShowWindow(This->doc_obj->hwnd, SW_HIDE);
541
542 if(This->doc_obj->in_place_active)
543 IOleInPlaceObjectWindowless_InPlaceDeactivate(&This->IOleInPlaceObjectWindowless_iface);
544
545 if(This->doc_obj->ip_window) {
546 IOleInPlaceUIWindow_Release(This->doc_obj->ip_window);
547 This->doc_obj->ip_window = NULL;
548 }
549 }
550
551 return S_OK;
552}
static HRESULT activate_window(HTMLDocumentObj *This)
Definition: view.c:208
void update_doc(HTMLDocument *This, DWORD flags)
Definition: view.c:62
#define UPDATE_UI
#define SW_HIDE
Definition: winuser.h:768

◆ OleDocumentView_UIActivate()

static HRESULT WINAPI OleDocumentView_UIActivate ( IOleDocumentView iface,
BOOL  fUIActivate 
)
static

Definition at line 554 of file view.c.

555{
558
559 TRACE("(%p)->(%x)\n", This, fUIActivate);
560
561 if(!This->doc_obj->ipsite) {
562 IOleClientSite *cs = This->doc_obj->client;
563 IOleInPlaceSite *ips;
564
565 if(!cs) {
566 WARN("this->ipsite = NULL\n");
567 return E_UNEXPECTED;
568 }
569
570 hres = IOleClientSite_QueryInterface(cs, &IID_IOleInPlaceSiteWindowless, (void**)&ips);
571 if(SUCCEEDED(hres))
572 This->doc_obj->ipsite = ips;
573 else {
574 hres = IOleClientSite_QueryInterface(cs, &IID_IOleInPlaceSiteEx, (void**)&ips);
575 if(SUCCEEDED(hres))
576 This->doc_obj->ipsite = ips;
577 else {
578 hres = IOleClientSite_QueryInterface(cs, &IID_IOleInPlaceSite, (void**)&ips);
579 if(SUCCEEDED(hres))
580 This->doc_obj->ipsite = ips;
581 else {
582 WARN("this->ipsite = NULL\n");
583 return E_NOINTERFACE;
584 }
585 }
586 }
587
588 IOleInPlaceSite_AddRef(This->doc_obj->ipsite);
589 This->doc_obj->request_uiactivate = FALSE;
591 }
592
593 if(fUIActivate) {
594 RECT rcBorderWidths;
595
596 if(This->doc_obj->ui_active)
597 return S_OK;
598
599 if(!This->doc_obj->window_active) {
600 hres = activate_window(This->doc_obj);
601 if(FAILED(hres))
602 return hres;
603 }
604
605 This->doc_obj->focus = TRUE;
606 if(This->doc_obj->nscontainer)
607 nsIWebBrowserFocus_Activate(This->doc_obj->nscontainer->focus);
608 notif_focus(This->doc_obj);
609
611
612 hres = IOleInPlaceSite_OnUIActivate(This->doc_obj->ipsite);
613 if(SUCCEEDED(hres)) {
615 &This->IOleInPlaceActiveObject_iface);
616 }else {
617 FIXME("OnUIActivate failed: %08x\n", hres);
618 IOleInPlaceFrame_Release(This->doc_obj->frame);
619 This->doc_obj->frame = NULL;
620 This->doc_obj->ui_active = FALSE;
621 return hres;
622 }
623
624 if(This->doc_obj->hostui) {
625 hres = IDocHostUIHandler_ShowUI(This->doc_obj->hostui,
626 This->doc_obj->usermode == EDITMODE ? DOCHOSTUITYPE_AUTHOR : DOCHOSTUITYPE_BROWSE,
627 &This->IOleInPlaceActiveObject_iface, &This->IOleCommandTarget_iface,
628 This->doc_obj->frame, This->doc_obj->ip_window);
629 if(FAILED(hres))
630 IDocHostUIHandler_HideUI(This->doc_obj->hostui);
631 }
632
633 if(This->doc_obj->ip_window)
634 call_set_active_object(This->doc_obj->ip_window, &This->IOleInPlaceActiveObject_iface);
635
636 memset(&rcBorderWidths, 0, sizeof(rcBorderWidths));
637 IOleInPlaceFrame_SetBorderSpace(This->doc_obj->frame, &rcBorderWidths);
638
639 This->doc_obj->ui_active = TRUE;
640 }else {
641 This->doc_obj->focus = FALSE;
642 nsIWebBrowserFocus_Deactivate(This->doc_obj->nscontainer->focus);
643 if(This->doc_obj->ui_active) {
644 This->doc_obj->ui_active = FALSE;
645 if(This->doc_obj->ip_window)
646 call_set_active_object(This->doc_obj->ip_window, NULL);
647 if(This->doc_obj->frame)
649 if(This->doc_obj->hostui)
650 IDocHostUIHandler_HideUI(This->doc_obj->hostui);
651 if(This->doc_obj->ipsite)
652 IOleInPlaceSite_OnUIDeactivate(This->doc_obj->ipsite, FALSE);
653 }
654 }
655 return S_OK;
656}
void notif_focus(HTMLDocumentObj *This)
Definition: view.c:130
HRESULT call_set_active_object(IOleInPlaceUIWindow *window, IOleInPlaceActiveObject *act_obj)
Definition: view.c:398
#define cs
Definition: i386-dis.c:442
coclass HostDialogHelper DOCHOSTUITYPE_BROWSE
coclass HostDialogHelper DOCHOSTUITYPE_AUTHOR
void HTMLDocument_LockContainer(HTMLDocumentObj *, BOOL) DECLSPEC_HIDDEN
Definition: oleobj.c:1183
@ EDITMODE
const GUID IID_IOleInPlaceSite
#define memset(x, y, z)
Definition: compat.h:39
#define E_NOINTERFACE
Definition: winerror.h:2364
#define E_UNEXPECTED
Definition: winerror.h:2456

◆ on_timer()

static LRESULT on_timer ( HTMLDocumentObj This)
static

Definition at line 98 of file view.c.

99{
100 TRACE("(%p) %x\n", This, This->update);
101
102 KillTimer(This->hwnd, TIMER_ID);
103
104 if(!This->update)
105 return 0;
106
107 if(This->update & UPDATE_UI) {
108 if(This->hostui)
109 IDocHostUIHandler_UpdateUI(This->hostui);
110
111 if(This->client) {
112 IOleCommandTarget *cmdtrg;
114
115 hres = IOleClientSite_QueryInterface(This->client, &IID_IOleCommandTarget,
116 (void**)&cmdtrg);
117 if(SUCCEEDED(hres)) {
118 IOleCommandTarget_Exec(cmdtrg, NULL, OLECMDID_UPDATECOMMANDS,
119 OLECMDEXECOPT_DONTPROMPTUSER, NULL, NULL);
120 IOleCommandTarget_Release(cmdtrg);
121 }
122 }
123 }
124
126 This->update = 0;
127 return 0;
128}
void update_title(HTMLDocumentObj *This)
Definition: view.c:70
BOOL WINAPI KillTimer(_In_opt_ HWND, _In_ UINT_PTR)

Referenced by serverwnd_proc().

◆ paint_document()

static void paint_document ( HTMLDocumentObj This)
static

Definition at line 35 of file view.c.

36{
37 PAINTSTRUCT ps;
38 RECT rect;
39 HDC hdc;
40
41 GetClientRect(This->hwnd, &rect);
42
43 hdc = BeginPaint(This->hwnd, &ps);
44
47
48 EndPaint(This->hwnd, &ps);
49}
HDC hdc
Definition: main.c:9
static HDC
Definition: imagelist.c:92
@ DOCHOSTUIFLAG_NO3DOUTERBORDER
Definition: mshtmhst.idl:136
@ DOCHOSTUIFLAG_NO3DBORDER
Definition: mshtmhst.idl:118
#define EDGE_SUNKEN
Definition: winuser.h:451
#define BF_ADJUST
Definition: winuser.h:470
BOOL WINAPI DrawEdge(_In_ HDC, _Inout_ LPRECT, _In_ UINT, _In_ UINT)
BOOL WINAPI EndPaint(_In_ HWND, _In_ const PAINTSTRUCT *)
HDC WINAPI BeginPaint(_In_ HWND, _Out_ LPPAINTSTRUCT)
#define BF_RECT
Definition: winuser.h:462

Referenced by serverwnd_proc().

◆ register_serverwnd_class()

static void register_serverwnd_class ( void  )
static

Definition at line 194 of file view.c.

195{
196 static WNDCLASSEXW wndclass = {
197 sizeof(WNDCLASSEXW),
200 0, 0, NULL, NULL, NULL, NULL, NULL,
202 NULL,
203 };
204 wndclass.hInstance = hInst;
206}
static LRESULT WINAPI serverwnd_proc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
Definition: view.c:146
HINSTANCE hInstance
Definition: winuser.h:3221
#define CS_DBLCLKS
Definition: winuser.h:651
ATOM WINAPI RegisterClassExW(_In_ CONST WNDCLASSEXW *)
struct _WNDCLASSEXW WNDCLASSEXW

Referenced by activate_window().

◆ serverwnd_proc()

static LRESULT WINAPI serverwnd_proc ( HWND  hwnd,
UINT  msg,
WPARAM  wParam,
LPARAM  lParam 
)
static

Definition at line 146 of file view.c.

147{
149
150 static const WCHAR wszTHIS[] = {'T','H','I','S',0};
151
152 if(msg == WM_CREATE) {
154 SetPropW(hwnd, wszTHIS, This);
155 }else {
156 This = GetPropW(hwnd, wszTHIS);
157 }
158
159 switch(msg) {
160 case WM_CREATE:
161 This->hwnd = hwnd;
162 break;
163 case WM_PAINT:
165 break;
166 case WM_SIZE:
167 TRACE("(%p)->(WM_SIZE)\n", This);
168 if(This->nscontainer) {
169 INT ew=0, eh=0;
170
171 if(!(This->hostinfo.dwFlags & (DOCHOSTUIFLAG_NO3DOUTERBORDER|DOCHOSTUIFLAG_NO3DBORDER))) {
174 }
175
176 SetWindowPos(This->nscontainer->hwnd, NULL, ew, eh,
177 LOWORD(lParam) - 2*ew, HIWORD(lParam) - 2*eh,
179 }
180 break;
181 case WM_TIMER:
182 return on_timer(This);
183 case WM_SETFOCUS:
184 TRACE("(%p) WM_SETFOCUS\n", This);
185 nsIWebBrowserFocus_Activate(This->nscontainer->focus);
186 break;
187 case WM_MOUSEACTIVATE:
188 return MA_ACTIVATE;
189 }
190
192}
#define msg(x)
Definition: auth_time.c:54
WPARAM wParam
Definition: combotst.c:138
LPARAM lParam
Definition: combotst.c:139
static LRESULT on_timer(HTMLDocumentObj *This)
Definition: view.c:98
static void paint_document(HTMLDocumentObj *This)
Definition: view.c:35
#define LOWORD(l)
Definition: pedump.c:82
int32_t INT
Definition: typedefs.h:58
#define HIWORD(l)
Definition: typedefs.h:247
_In_ LONG _In_ HWND hwnd
Definition: winddi.h:4023
#define WM_PAINT
Definition: winuser.h:1620
#define SM_CYEDGE
Definition: winuser.h:1009
LRESULT WINAPI DefWindowProcW(_In_ HWND, _In_ UINT, _In_ WPARAM, _In_ LPARAM)
#define SM_CXEDGE
Definition: winuser.h:1008
#define WM_CREATE
Definition: winuser.h:1608
#define WM_SIZE
Definition: winuser.h:1611
#define MA_ACTIVATE
Definition: winuser.h:2501
#define WM_SETFOCUS
Definition: winuser.h:1613
#define WM_TIMER
Definition: winuser.h:1742
#define WM_MOUSEACTIVATE
Definition: winuser.h:1637
HANDLE WINAPI GetPropW(_In_ HWND, _In_ LPCWSTR)
int WINAPI GetSystemMetrics(_In_ int)

Referenced by register_serverwnd_class().

◆ show_tooltip()

void show_tooltip ( HTMLDocumentObj This,
DWORD  x,
DWORD  y,
LPCWSTR  text 
)

Definition at line 368 of file view.c.

369{
370 TTTOOLINFOW toolinfo = {
371 sizeof(TTTOOLINFOW), 0, This->hwnd, 0xdeadbeef,
372 {x>2 ? x-2 : 0, y>0 ? y-2 : 0, x+2, y+2}, /* FIXME */
373 NULL, (LPWSTR)text, 0};
374 MSG msg = {This->hwnd, WM_MOUSEMOVE, 0, MAKELPARAM(x,y), 0, {x,y}};
375
376 TRACE("(%p)->(%d %d %s)\n", This, x, y, debugstr_w(text));
377
378 if(!This->tooltips_hwnd)
380
381 SendMessageW(This->tooltips_hwnd, TTM_ADDTOOLW, 0, (LPARAM)&toolinfo);
382 SendMessageW(This->tooltips_hwnd, TTM_ACTIVATE, TRUE, 0);
383 SendMessageW(This->tooltips_hwnd, TTM_RELAYEVENT, 0, (LPARAM)&msg);
384}
static void create_tooltips_window(HTMLDocumentObj *This)
Definition: view.c:349
const WCHAR * text
Definition: package.c:1799
GLint GLint GLint GLint GLint x
Definition: gl.h:1548
GLint GLint GLint GLint GLint GLint y
Definition: gl.h:1548
#define debugstr_w
Definition: kernel32.h:32
#define TTM_RELAYEVENT
Definition: commctrl.h:1792
#define TTM_ADDTOOLW
Definition: commctrl.h:1787
TW_UINT32 TW_UINT16 TW_UINT16 MSG
Definition: twain.h:1829
#define MAKELPARAM(l, h)
Definition: winuser.h:4008
#define WM_MOUSEMOVE
Definition: winuser.h:1775
WCHAR * LPWSTR
Definition: xmlstorage.h:184

Referenced by nsTooltipListener_OnShowTooltip().

◆ tooltips_proc()

static LRESULT WINAPI tooltips_proc ( HWND  hwnd,
UINT  msg,
WPARAM  wParam,
LPARAM  lParam 
)
static

Definition at line 327 of file view.c.

328{
330
331 TRACE("%d %p\n", msg, data);
332
333 if(msg == TTM_WINDOWFROMPOINT) {
334 RECT rect;
335 POINT *pt = (POINT*)lParam;
336
337 TRACE("TTM_WINDOWFROMPOINT (%d,%d)\n", pt->x, pt->y);
338
339 GetWindowRect(data->doc->hwnd, &rect);
340
341 if(rect.left <= pt->x && pt->x <= rect.right
342 && rect.top <= pt->y && pt->y <= rect.bottom)
343 return (LPARAM)data->doc->hwnd;
344 }
345
346 return CallWindowProcW(data->proc, hwnd, msg, wParam, lParam);
347}
#define pt(x, y)
Definition: drawing.c:79
#define TTM_WINDOWFROMPOINT
Definition: commctrl.h:1811
BOOL WINAPI GetWindowRect(_In_ HWND, _Out_ LPRECT)
LRESULT WINAPI CallWindowProcW(_In_ WNDPROC, _In_ HWND, _In_ UINT, _In_ WPARAM, _In_ LPARAM)

Referenced by create_tooltips_window().

◆ update_doc()

◆ update_title()

void update_title ( HTMLDocumentObj This)

Definition at line 70 of file view.c.

71{
72 IOleCommandTarget *olecmd;
74
75 if(!(This->update & UPDATE_TITLE))
76 return;
77
78 This->update &= ~UPDATE_TITLE;
79
80 if(!This->client)
81 return;
82
83 hres = IOleClientSite_QueryInterface(This->client, &IID_IOleCommandTarget, (void**)&olecmd);
84 if(SUCCEEDED(hres)) {
86 WCHAR empty[] = {0};
87
88 V_VT(&title) = VT_BSTR;
90 IOleCommandTarget_Exec(olecmd, NULL, OLECMDID_SETTITLE, OLECMDEXECOPT_DONTPROMPTUSER,
91 &title, NULL);
93
94 IOleCommandTarget_Release(olecmd);
95 }
96}
#define UPDATE_TITLE
static const WCHAR empty[]
Definition: main.c:47
@ VT_BSTR
Definition: compat.h:2303
BSTR WINAPI SysAllocString(LPCOLESTR str)
Definition: oleaut.c:238
void WINAPI DECLSPEC_HOTPATCH SysFreeString(BSTR str)
Definition: oleaut.c:271
#define V_BSTR(A)
Definition: oleauto.h:226
static char title[]
Definition: ps.c:92

Referenced by handle_load(), and on_timer().

◆ ViewObject_AddRef()

static ULONG WINAPI ViewObject_AddRef ( IViewObjectEx iface)
static

Definition at line 739 of file view.c.

740{
742 return htmldoc_addref(This);
743}
static HTMLDocument * impl_from_IViewObjectEx(IViewObjectEx *iface)
Definition: view.c:728

◆ ViewObject_Draw()

static HRESULT WINAPI ViewObject_Draw ( IViewObjectEx iface,
DWORD  dwDrawAspect,
LONG  lindex,
void pvAspect,
DVTARGETDEVICE *  ptd,
HDC  hdcTargetDev,
HDC  hdcDraw,
LPCRECTL  lprcBounds,
LPCRECTL  lprcWBounds,
BOOL(CALLBACK *pfnContinue)(ULONG_PTR dwContinue)  ,
ULONG_PTR  dwContinue 
)
static

Definition at line 751 of file view.c.

754{
756 FIXME("(%p)->(%d %d %p %p %p %p %p %p %p %ld)\n", This, dwDrawAspect, lindex, pvAspect,
757 ptd, hdcTargetDev, hdcDraw, lprcBounds, lprcWBounds, pfnContinue, dwContinue);
758 return E_NOTIMPL;
759}

◆ ViewObject_Freeze()

static HRESULT WINAPI ViewObject_Freeze ( IViewObjectEx iface,
DWORD  dwDrawAspect,
LONG  lindex,
void pvAspect,
DWORD pdwFreeze 
)
static

Definition at line 769 of file view.c.

771{
773 FIXME("(%p)->(%d %d %p %p)\n", This, dwDrawAspect, lindex, pvAspect, pdwFreeze);
774 return E_NOTIMPL;
775}

◆ ViewObject_GetAdvise()

static HRESULT WINAPI ViewObject_GetAdvise ( IViewObjectEx iface,
DWORD pAspects,
DWORD pAdvf,
IAdviseSink **  ppAdvSink 
)
static

Definition at line 802 of file view.c.

803{
805 FIXME("(%p)->(%p %p %p)\n", This, pAspects, pAdvf, ppAdvSink);
806 return E_NOTIMPL;
807}

◆ ViewObject_GetColorSet()

static HRESULT WINAPI ViewObject_GetColorSet ( IViewObjectEx iface,
DWORD  dwDrawAspect,
LONG  lindex,
void pvAspect,
DVTARGETDEVICE *  ptd,
HDC  hicTargetDev,
LOGPALETTE **  ppColorSet 
)
static

Definition at line 761 of file view.c.

763{
765 FIXME("(%p)->(%d %d %p %p %p %p)\n", This, dwDrawAspect, lindex, pvAspect, ptd, hicTargetDev, ppColorSet);
766 return E_NOTIMPL;
767}

◆ ViewObject_GetExtent()

static HRESULT WINAPI ViewObject_GetExtent ( IViewObjectEx iface,
DWORD  dwDrawAspect,
LONG  lindex,
DVTARGETDEVICE *  ptd,
LPSIZEL  lpsizel 
)
static

Definition at line 809 of file view.c.

811{
813 FIXME("(%p)->(%d %d %p %p)\n", This, dwDrawAspect, lindex, ptd, lpsizel);
814 return E_NOTIMPL;
815}

◆ ViewObject_GetNaturalExtent()

static HRESULT WINAPI ViewObject_GetNaturalExtent ( IViewObjectEx iface,
DWORD  dwAspect,
LONG  lindex,
DVTARGETDEVICE *  ptd,
HDC  hicTargetDev,
DVEXTENTINFO *  pExtentInfo,
LPSIZEL  pSizel 
)
static

Definition at line 848 of file view.c.

850{
852 FIXME("(%p)->(%d %d %p %p %p %p\n", This, dwAspect,lindex, ptd,
853 hicTargetDev, pExtentInfo, pSizel);
854 return E_NOTIMPL;
855}

◆ ViewObject_GetRect()

static HRESULT WINAPI ViewObject_GetRect ( IViewObjectEx iface,
DWORD  dwAspect,
LPRECTL  pRect 
)
static

Definition at line 817 of file view.c.

818{
820 FIXME("(%p)->(%d %p)\n", This, dwAspect, pRect);
821 return E_NOTIMPL;
822}

◆ ViewObject_GetViewStatus()

static HRESULT WINAPI ViewObject_GetViewStatus ( IViewObjectEx iface,
DWORD pdwStatus 
)
static

Definition at line 824 of file view.c.

825{
827 FIXME("(%p)->(%p)\n", This, pdwStatus);
828 return E_NOTIMPL;
829}

◆ ViewObject_QueryHitPoint()

static HRESULT WINAPI ViewObject_QueryHitPoint ( IViewObjectEx iface,
DWORD  dwAspect,
LPCRECT  pRectBounds,
POINT  ptlLoc,
LONG  lCloseHint,
DWORD pHitResult 
)
static

Definition at line 831 of file view.c.

833{
835 FIXME("(%p)->(%d %p (%d %d) %d %p)\n", This, dwAspect, pRectBounds, ptlLoc.x,
836 ptlLoc.y, lCloseHint, pHitResult);
837 return E_NOTIMPL;
838}
long y
Definition: polytest.cpp:48
long x
Definition: polytest.cpp:48

◆ ViewObject_QueryHitRect()

static HRESULT WINAPI ViewObject_QueryHitRect ( IViewObjectEx iface,
DWORD  dwAspect,
LPCRECT  pRectBounds,
LPCRECT  pRectLoc,
LONG  lCloseHint,
DWORD pHitResult 
)
static

Definition at line 840 of file view.c.

842{
844 FIXME("(%p)->(%d %p %p %d %p)\n", This, dwAspect, pRectBounds, pRectLoc, lCloseHint, pHitResult);
845 return E_NOTIMPL;
846}

◆ ViewObject_QueryInterface()

static HRESULT WINAPI ViewObject_QueryInterface ( IViewObjectEx iface,
REFIID  riid,
void **  ppv 
)
static

Definition at line 733 of file view.c.

734{
737}
REFIID LPVOID * ppv
Definition: atlbase.h:39

◆ ViewObject_Release()

static ULONG WINAPI ViewObject_Release ( IViewObjectEx iface)
static

Definition at line 745 of file view.c.

746{
748 return htmldoc_release(This);
749}

◆ ViewObject_SetAdvise()

static HRESULT WINAPI ViewObject_SetAdvise ( IViewObjectEx iface,
DWORD  aspects,
DWORD  advf,
IAdviseSink pAdvSink 
)
static

Definition at line 784 of file view.c.

785{
787
788 TRACE("(%p)->(%d %d %p)\n", This, aspects, advf, pAdvSink);
789
790 if(aspects != DVASPECT_CONTENT || advf != ADVF_PRIMEFIRST)
791 FIXME("unsupported arguments\n");
792
793 if(This->doc_obj->view_sink)
794 IAdviseSink_Release(This->doc_obj->view_sink);
795 if(pAdvSink)
796 IAdviseSink_AddRef(pAdvSink);
797
798 This->doc_obj->view_sink = pAdvSink;
799 return S_OK;
800}

◆ ViewObject_Unfreeze()

static HRESULT WINAPI ViewObject_Unfreeze ( IViewObjectEx iface,
DWORD  dwFreeze 
)
static

Definition at line 777 of file view.c.

778{
780 FIXME("(%p)->(%d)\n", This, dwFreeze);
781 return E_NOTIMPL;
782}

◆ WindowForBindingUI_AddRef()

static ULONG WINAPI WindowForBindingUI_AddRef ( IWindowForBindingUI iface)
static

Definition at line 906 of file view.c.

907{
909 return htmldoc_addref(&This->basedoc);
910}
static HTMLDocumentObj * impl_from_IWindowForBindingUI(IWindowForBindingUI *iface)
Definition: view.c:881

◆ WindowForBindingUI_GetWindow()

static HRESULT WINAPI WindowForBindingUI_GetWindow ( IWindowForBindingUI iface,
REFGUID  rguidReason,
HWND phwnd 
)
static

Definition at line 918 of file view.c.

919{
921
922 TRACE("(%p)->(%s %p)\n", This, debugstr_guid(rguidReason), phwnd);
923
924 *phwnd = This->hwnd;
925 return S_OK;
926}
#define debugstr_guid
Definition: kernel32.h:35

◆ WindowForBindingUI_QueryInterface()

static HRESULT WINAPI WindowForBindingUI_QueryInterface ( IWindowForBindingUI iface,
REFIID  riid,
void **  ppv 
)
static

Definition at line 886 of file view.c.

887{
889
891 TRACE("(%p)->(IID_IUnknown %p)\n", This, ppv);
892 *ppv = &This->IWindowForBindingUI_iface;
893 }else if(IsEqualGUID(&IID_IWindowForBindingUI, riid)) {
894 TRACE("(%p)->(IID_IWindowForBindingUI %p)\n", This, ppv);
895 *ppv = &This->IWindowForBindingUI_iface;
896 }else {
897 WARN("(%p)->(%s %p)\n", This, debugstr_guid(riid), ppv);
898 *ppv = NULL;
899 return E_NOINTERFACE;
900 }
901
902 IUnknown_AddRef((IUnknown*)*ppv);
903 return S_OK;
904}
const GUID IID_IUnknown
#define IsEqualGUID(rguid1, rguid2)
Definition: guiddef.h:147

◆ WindowForBindingUI_Release()

static ULONG WINAPI WindowForBindingUI_Release ( IWindowForBindingUI iface)
static

Definition at line 912 of file view.c.

913{
915 return htmldoc_release(&This->basedoc);
916}

Variable Documentation

◆ OleDocumentViewVtbl

const IOleDocumentViewVtbl OleDocumentViewVtbl
static
Initial value:
= {
}
static HRESULT WINAPI OleDocumentView_Open(IOleDocumentView *iface)
Definition: view.c:658
static HRESULT WINAPI OleDocumentView_SetRect(IOleDocumentView *iface, LPRECT prcView)
Definition: view.c:481
static HRESULT WINAPI OleDocumentView_GetDocument(IOleDocumentView *iface, IUnknown **ppunk)
Definition: view.c:468
static HRESULT WINAPI OleDocumentView_GetInPlaceSite(IOleDocumentView *iface, IOleInPlaceSite **ppIPSite)
Definition: view.c:453
static HRESULT WINAPI OleDocumentView_Clone(IOleDocumentView *iface, IOleInPlaceSite *pIPSiteNew, IOleDocumentView **ppViewNew)
Definition: view.c:697
static HRESULT WINAPI OleDocumentView_CloseView(IOleDocumentView *iface, DWORD dwReserved)
Definition: view.c:665
static ULONG WINAPI OleDocumentView_Release(IOleDocumentView *iface)
Definition: view.c:431
static HRESULT WINAPI OleDocumentView_UIActivate(IOleDocumentView *iface, BOOL fUIActivate)
Definition: view.c:554
static HRESULT WINAPI OleDocumentView_QueryInterface(IOleDocumentView *iface, REFIID riid, void **ppvObject)
Definition: view.c:419
static HRESULT WINAPI OleDocumentView_ApplyViewState(IOleDocumentView *iface, LPSTREAM pstm)
Definition: view.c:690
static HRESULT WINAPI OleDocumentView_SetInPlaceSite(IOleDocumentView *iface, IOleInPlaceSite *pIPSite)
Definition: view.c:437
static ULONG WINAPI OleDocumentView_AddRef(IOleDocumentView *iface)
Definition: view.c:425
static HRESULT WINAPI OleDocumentView_GetRect(IOleDocumentView *iface, LPRECT prcView)
Definition: view.c:503
static HRESULT WINAPI OleDocumentView_SetRectComplex(IOleDocumentView *iface, LPRECT prcView, LPRECT prcHScroll, LPRECT prcVScroll, LPRECT prcSizeBox)
Definition: view.c:516
static HRESULT WINAPI OleDocumentView_SaveViewState(IOleDocumentView *iface, LPSTREAM pstm)
Definition: view.c:683
static HRESULT WINAPI OleDocumentView_Show(IOleDocumentView *iface, BOOL fShow)
Definition: view.c:524

Definition at line 705 of file view.c.

Referenced by HTMLDocument_View_Init().

◆ serverwnd_class

ATOM serverwnd_class = 0
static

Definition at line 28 of file view.c.

Referenced by activate_window(), and register_serverwnd_class().

◆ ViewObjectVtbl

const IViewObjectExVtbl ViewObjectVtbl
static
Initial value:
= {
}
static HRESULT WINAPI ViewObject_QueryInterface(IViewObject2 *iface, REFIID riid, void **ppv)
Definition: view.c:35
static HRESULT WINAPI ViewObject_Freeze(IViewObject2 *iface, DWORD dwDrawAspect, LONG lindex, void *pvAspect, DWORD *pdwFreeze)
Definition: view.c:76
static HRESULT WINAPI ViewObject_SetAdvise(IViewObject2 *iface, DWORD aspects, DWORD advf, IAdviseSink *pAdvSink)
Definition: view.c:91
static ULONG WINAPI ViewObject_AddRef(IViewObject2 *iface)
Definition: view.c:41
static HRESULT WINAPI ViewObject_Draw(IViewObject2 *iface, DWORD dwDrawAspect, LONG lindex, void *pvAspect, DVTARGETDEVICE *ptd, HDC hdcTargetDev, HDC hdcDraw, LPCRECTL lprcBounds, LPCRECTL lprcWBounds, BOOL(STDMETHODCALLTYPE *pfnContinue)(ULONG_PTR), ULONG_PTR dwContinue)
Definition: view.c:53
static HRESULT WINAPI ViewObject_GetAdvise(IViewObject2 *iface, DWORD *pAspects, DWORD *pAdvf, IAdviseSink **ppAdvSink)
Definition: view.c:109
static HRESULT WINAPI ViewObject_Unfreeze(IViewObject2 *iface, DWORD dwFreeze)
Definition: view.c:84
static HRESULT WINAPI ViewObject_GetExtent(IViewObject2 *iface, DWORD dwAspect, LONG lindex, DVTARGETDEVICE *ptd, LPSIZEL lpsizel)
Definition: view.c:127
static ULONG WINAPI ViewObject_Release(IViewObject2 *iface)
Definition: view.c:47
static HRESULT WINAPI ViewObject_GetColorSet(IViewObject2 *iface, DWORD dwAspect, LONG lindex, void *pvAspect, DVTARGETDEVICE *ptd, HDC hicTargetDev, LOGPALETTE **ppColorSet)
Definition: view.c:66
static HRESULT WINAPI ViewObject_GetNaturalExtent(IViewObjectEx *iface, DWORD dwAspect, LONG lindex, DVTARGETDEVICE *ptd, HDC hicTargetDev, DVEXTENTINFO *pExtentInfo, LPSIZEL pSizel)
Definition: view.c:848
static HRESULT WINAPI ViewObject_QueryHitPoint(IViewObjectEx *iface, DWORD dwAspect, LPCRECT pRectBounds, POINT ptlLoc, LONG lCloseHint, DWORD *pHitResult)
Definition: view.c:831
static HRESULT WINAPI ViewObject_GetViewStatus(IViewObjectEx *iface, DWORD *pdwStatus)
Definition: view.c:824
static HRESULT WINAPI ViewObject_GetRect(IViewObjectEx *iface, DWORD dwAspect, LPRECTL pRect)
Definition: view.c:817
static HRESULT WINAPI ViewObject_QueryHitRect(IViewObjectEx *iface, DWORD dwAspect, LPCRECT pRectBounds, LPCRECT pRectLoc, LONG lCloseHint, DWORD *pHitResult)
Definition: view.c:840

Definition at line 857 of file view.c.

◆ WindowForBindingUIVtbl

const IWindowForBindingUIVtbl WindowForBindingUIVtbl
static
Initial value:
= {
}
static ULONG WINAPI WindowForBindingUI_AddRef(IWindowForBindingUI *iface)
Definition: view.c:906
static ULONG WINAPI WindowForBindingUI_Release(IWindowForBindingUI *iface)
Definition: view.c:912
static HRESULT WINAPI WindowForBindingUI_GetWindow(IWindowForBindingUI *iface, REFGUID rguidReason, HWND *phwnd)
Definition: view.c:918
static HRESULT WINAPI WindowForBindingUI_QueryInterface(IWindowForBindingUI *iface, REFIID riid, void **ppv)
Definition: view.c:886

Definition at line 928 of file view.c.

Referenced by init_binding_ui().

◆ wszInternetExplorer_Server

const WCHAR wszInternetExplorer_Server[]
static
Initial value:
=
{'I','n','t','e','r','n','e','t',' ','E','x','p','l','o','r','e','r','_','S','e','r','v','e','r',0}

Definition at line 23 of file view.c.

Referenced by activate_window(), and register_serverwnd_class().

◆ wszTooltipData

const WCHAR wszTooltipData[] = {'t','o','o','l','t','i','p','_','d','a','t','a',0}
static

Definition at line 26 of file view.c.

Referenced by create_tooltips_window(), and tooltips_proc().