21#define NSCMD_COPY "cmd_copy"
22#define NSCMD_SELECTALL "cmd_selectAll"
31 if(!
This->doc_obj || !
This->doc_obj->nscontainer)
36 ERR(
"Could not get nsICommandManager: %08x\n", nsres);
40 nsres = nsICommandManager_DoCommand(cmdmgr,
cmd, nsparam,
This->window->nswindow);
44 nsICommandManager_Release(cmdmgr);
55 ERR(
"Could not get nsIDocShell interface\n");
59 nsres = nsIDocShell_QueryInterface(doc_shell, &IID_nsIClipboardCommands, (
void**)&clipboard_commands);
60 nsIDocShell_Release(doc_shell);
62 ERR(
"Could not get nsIClipboardCommands interface\n");
66 return clipboard_commands;
80 FIXME(
"(%p)->(%d %p %p)\n",
This, nCmdexecopt, pvaIn, pvaOut);
86 FIXME(
"(%p)->(%d %p %p)\n",
This, nCmdexecopt, pvaIn, pvaOut);
92 FIXME(
"(%p)->(%d %p %p)\n",
This, nCmdexecopt, pvaIn, pvaOut);
98 FIXME(
"(%p)->(%d %p %p)\n",
This, nCmdexecopt, pvaIn, pvaOut);
104 FIXME(
"(%p)->(%d %p %p)\n",
This, nCmdexecopt, pvaIn, pvaOut);
113 return nsIPrintSettings_SetHeaderStrLeft(
settings,
template);
115 return nsIPrintSettings_SetHeaderStrRight(
settings,
template);
117 return nsIPrintSettings_SetHeaderStrCenter(
settings,
template);
122 return nsIPrintSettings_SetFooterStrLeft(
settings,
template);
124 return nsIPrintSettings_SetFooterStrRight(
settings,
template);
126 return nsIPrintSettings_SetFooterStrCenter(
settings,
template);
163 sizeof(nstemplate)-(
p-nstemplate)*
sizeof(
WCHAR));
232 FIXME(
"unsupported pvaOut\n");
234 if(!
This->doc_obj->nscontainer)
240 ERR(
"Could not get nsIWebBrowserPrint: %08x\n", nsres);
246 ERR(
"Aborting print, to work around CORE-16884\n");
247 nsIWebBrowserPrint_Release(nsprint);
251 nsres = nsIWebBrowserPrint_GetGlobalPrintSettings(nsprint, &
settings);
253 ERR(
"GetCurrentPrintSettings failed: %08x\n", nsres);
258 switch(
V_VT(pvaIn)) {
267 opts_cnt =
V_ARRAY(pvaIn)->rgsabound[0].cElements;
283 switch(
V_VT(opts+1)) {
296 FIXME(
"Unsupported opts_cnt %d\n", opts_cnt);
306 nsres = nsIWebBrowserPrint_Print(nsprint,
settings,
NULL);
308 ERR(
"Print failed: %08x\n", nsres);
310 nsIWebBrowserPrint_Release(nsprint);
317 FIXME(
"(%p)->(%d %p %p)\n",
This, nCmdexecopt, pvaIn, pvaOut);
323 FIXME(
"(%p)->(%d %p %p)\n",
This, nCmdexecopt, pvaIn, pvaOut);
329 FIXME(
"(%p)->(%d %p %p)\n",
This, nCmdexecopt, pvaIn, pvaOut);
335 FIXME(
"(%p)->(%d %p %p)\n",
This, nCmdexecopt, pvaIn, pvaOut);
341 FIXME(
"(%p)->(%d %p %p)\n",
This, nCmdexecopt, pvaIn, pvaOut);
355 FIXME(
"(%p)->(%d %p %p)\n",
This, nCmdexecopt, pvaIn, pvaOut);
361 FIXME(
"(%p)->(%d %p %p)\n",
This, nCmdexecopt, pvaIn, pvaOut);
367 FIXME(
"(%p)->(%d %p %p)\n",
This, nCmdexecopt, pvaIn, pvaOut);
373 FIXME(
"(%p)->(%d %p %p)\n",
This, nCmdexecopt, pvaIn, pvaOut);
382 FIXME(
"unsupported args\n");
384 if(
This->doc_obj->nscontainer)
393 FIXME(
"(%p)->(%d %p %p)\n",
This, nCmdexecopt, pvaIn, pvaOut);
399 FIXME(
"(%p)->(%d %p %p)\n",
This, nCmdexecopt, pvaIn, pvaOut);
405 FIXME(
"(%p)->(%d %p %p)\n",
This, nCmdexecopt, pvaIn, pvaOut);
421 window->readystate = READYSTATE_UNINITIALIZED;
428 IOleCommandTarget_Exec(
window->doc_obj->client_cmdtrg, &CGID_ShellDocView, 37, 0, &
var,
NULL);
449 if(
This->doc_obj->client) {
452 hres = IOleClientSite_QueryInterface(
This->doc_obj->client, &IID_IOleCommandTarget, (
void**)&olecmd);
454 hres = IOleCommandTarget_Exec(olecmd, &CGID_DocHostCommandHandler, 2300, nCmdexecopt, pvaIn, pvaOut);
455 IOleCommandTarget_Release(olecmd);
468 IHTMLWindow2_AddRef(&
This->window->base.IHTMLWindow2_iface);
476 FIXME(
"(%p)->(%d %p %p)\n",
This, nCmdexecopt, pvaIn, pvaOut);
482 FIXME(
"(%p)->(%d %p %p)\n",
This, nCmdexecopt, pvaIn, pvaOut);
488 FIXME(
"(%p)->(%d %p %p)\n",
This, nCmdexecopt, pvaIn, pvaOut);
494 FIXME(
"(%p)->(%d %p %p)\n",
This, nCmdexecopt, pvaIn, pvaOut);
500 FIXME(
"(%p)->(%d %p %p)\n",
This, nCmdexecopt, pvaIn, pvaOut);
506 TRACE(
"(%p)->(%d %p %p)\n",
This, nCmdexecopt, pvaIn, pvaOut);
512 V_BOOL(pvaOut) = VARIANT_TRUE;
520 FIXME(
"(%p)->(%d %p %p)\n",
This, nCmdexecopt, pvaIn, pvaOut);
526 FIXME(
"(%p)->(%d %p %p)\n",
This, nCmdexecopt, pvaIn, pvaOut);
532 FIXME(
"(%p)->(%d %p %p)\n",
This, nCmdexecopt, pvaIn, pvaOut);
538 FIXME(
"(%p)->(%d %p %p)\n",
This, nCmdexecopt, pvaIn, pvaOut);
544 FIXME(
"(%p)->(%d %p %p)\n",
This, nCmdexecopt, pvaIn, pvaOut);
564 cmd->cmdf = OLECMDF_SUPPORTED|OLECMDF_ENABLED;
582 cmd->cmdf = OLECMDF_SUPPORTED|OLECMDF_ENABLED;
597 if(!clipboard_commands)
600 nsres = nsIClipboardCommands_CutSelection(clipboard_commands);
601 nsIClipboardCommands_Release(clipboard_commands);
603 ERR(
"Paste failed: %08x\n", nsres);
613 cmd->cmdf = OLECMDF_SUPPORTED|OLECMDF_ENABLED;
628 if(!clipboard_commands)
631 nsres = nsIClipboardCommands_Paste(clipboard_commands);
632 nsIClipboardCommands_Release(clipboard_commands);
634 ERR(
"Paste failed: %08x\n", nsres);
645 cmd->cmdf = OLECMDF_SUPPORTED|OLECMDF_ENABLED;
654 FIXME(
"unsupported args\n");
666 FIXME(
"unsupported args\n");
699 FIXME(
"CGID_MSHTML: IDM_PRINT\n");
700 cmd->cmdf = OLECMDF_SUPPORTED|OLECMDF_ENABLED;
703 FIXME(
"CGID_MSHTML: IDM_BLOCKDIRLTR\n");
704 cmd->cmdf = OLECMDF_SUPPORTED|OLECMDF_ENABLED;
707 FIXME(
"CGID_MSHTML: IDM_BLOCKDIRRTL\n");
708 cmd->cmdf = OLECMDF_SUPPORTED|OLECMDF_ENABLED;
725 { OLECMDF_SUPPORTED|OLECMDF_ENABLED,
exec_print },
742 { OLECMDF_SUPPORTED|OLECMDF_ENABLED,
exec_stop },
743 {0},{0},{0},{0},{0},{0},
746 { OLECMDF_SUPPORTED|OLECMDF_ENABLED,
exec_find },
759 {0},{0},{0},{0},{0},{0},{0},{0},{0},{0},
803 while(iter->
id && iter->
id !=
cmd->cmdID)
807 return OLECMDERR_E_NOTSUPPORTED;
813 ULONG cCmds, OLECMD prgCmds[], OLECMDTEXT *pCmdText)
821 FIXME(
"Unsupported pCmdText\n");
828 for(
i=0;
i<cCmds;
i++) {
830 WARN(
"Unsupported cmdID = %d\n", prgCmds[
i].cmdID);
833 if(prgCmds[
i].cmdID == OLECMDID_OPEN || prgCmds[
i].cmdID == OLECMDID_NEW) {
837 prgCmds[
i].cmdf = OLECMDF_SUPPORTED;
838 if(
This->doc_obj->client) {
839 hres = IOleClientSite_QueryInterface(
This->doc_obj->client, &IID_IOleCommandTarget,
842 olecmd.cmdID = prgCmds[
i].cmdID;
845 hres = IOleCommandTarget_QueryStatus(cmdtrg,
NULL, 1, &olecmd,
NULL);
847 prgCmds[
i].cmdf = olecmd.cmdf;
850 ERR(
"This->client == NULL, native would crash\n");
854 TRACE(
"cmdID = %d returning %x\n", prgCmds[
i].cmdID, prgCmds[
i].
cmdf);
859 return (prgCmds[cCmds-1].
cmdf & OLECMDF_SUPPORTED) ?
S_OK : OLECMDERR_E_NOTSUPPORTED;
865 for(
i=0;
i<cCmds;
i++) {
867 if(
hres == OLECMDERR_E_NOTSUPPORTED)
869 if(
hres == OLECMDERR_E_NOTSUPPORTED)
870 FIXME(
"CGID_MSHTML: unsupported cmdID %d\n", prgCmds[
i].cmdID);
873 return (prgCmds[cCmds-1].
cmdf & OLECMDF_SUPPORTED) ?
S_OK : OLECMDERR_E_NOTSUPPORTED;
877 return OLECMDERR_E_UNKNOWNGROUP;
885 while(iter->
id && iter->
id != cmdid)
888 if(!iter->
id || !iter->
exec)
889 return OLECMDERR_E_NOTSUPPORTED;
901 WARN(
"Unsupported cmdID = %d\n", nCmdID);
902 return OLECMDERR_E_NOTSUPPORTED;
906 }
else if(
IsEqualGUID(&CGID_Explorer, pguidCmdGroup)) {
907 FIXME(
"unsupported nCmdID %d of CGID_Explorer group\n", nCmdID);
908 TRACE(
"%p %p\n", pvaIn, pvaOut);
909 return OLECMDERR_E_NOTSUPPORTED;
910 }
else if(
IsEqualGUID(&CGID_ShellDocView, pguidCmdGroup)) {
911 FIXME(
"unsupported nCmdID %d of CGID_ShellDocView group\n", nCmdID);
912 return OLECMDERR_E_NOTSUPPORTED;
913 }
else if(
IsEqualGUID(&CGID_MSHTML, pguidCmdGroup)) {
915 if(
hres == OLECMDERR_E_NOTSUPPORTED)
917 nCmdexecopt, pvaIn, pvaOut);
918 if(
hres == OLECMDERR_E_NOTSUPPORTED)
919 FIXME(
"unsupported nCmdID %d of CGID_MSHTML group\n", nCmdID);
925 return OLECMDERR_E_UNKNOWNGROUP;
938 HMENU menu_res, menu;
941 if(
This->hostui &&
S_OK == IDocHostUIHandler_ShowContextMenu(
This->hostui,
953 IOleCommandTarget_Exec(&
This->basedoc.IOleCommandTarget_iface, &CGID_MSHTML, cmdid, 0,
struct mke2fs_defaults settings[]
struct outqueuenode * head
static void * heap_alloc(size_t len)
static BOOL heap_free(void *mem)
HRESULT load_uri(HTMLOuterWindow *, IUri *, DWORD) DECLSPEC_HIDDEN
static const WCHAR empty[]
VOID WINAPI GetLocalTime(OUT LPSYSTEMTIME lpSystemTime)
HRESULT setup_edit_mode(HTMLDocumentObj *doc)
HRESULT editor_exec_paste(HTMLDocument *This, DWORD cmdexecopt, VARIANT *in, VARIANT *out)
HRESULT editor_exec_cut(HTMLDocument *This, DWORD cmdexecopt, VARIANT *in, VARIANT *out)
HRESULT editor_exec_copy(HTMLDocument *This, DWORD cmdexecopt, VARIANT *in, VARIANT *out)
const cmdtable_t editmode_cmds[]
HINSTANCE get_shdoclc(void)
#define IDR_BROWSE_CONTEXT_MENU
#define IDS_PRINT_HEADER_TEMPLATE
#define IDS_PRINT_FOOTER_TEMPLATE
HRESULT WINAPI SafeArrayAccessData(SAFEARRAY *psa, void **ppvData)
HRESULT WINAPI SafeArrayUnaccessData(SAFEARRAY *psa)
GLenum GLuint GLenum GLsizei const GLchar * buf
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
static const char * debugstr_variant(const VARIANT *var)
static IHTMLWindow2 * window
static const CLSID *static CLSID *static const GUID VARIANT VARIANT *static IServiceProvider DWORD *static HMENU
#define IDM_BASELINEFONT3
#define IDM_RESPECTVISIBILITY_INDESIGN
static HRESULT htmldoc_query_interface(HTMLDocument *This, REFIID riid, void **ppv)
static ULONG htmldoc_addref(HTMLDocument *This)
nsresult get_nsinterface(nsISupports *, REFIID, void **) DECLSPEC_HIDDEN
static ULONG htmldoc_release(HTMLDocument *This)
void set_viewer_zoom(NSContainer *, float) DECLSPEC_HIDDEN
HRESULT push_task(task_t *, task_proc_t, task_proc_t, LONG) DECLSPEC_HIDDEN
void update_doc(HTMLDocument *, DWORD) DECLSPEC_HIDDEN
#define LOCALE_SYSTEM_DEFAULT
static HRESULT query_from_table(HTMLDocument *This, const cmdtable_t *cmdtable, OLECMD *cmd)
static HRESULT exec_optical_zoom(HTMLDocument *This, DWORD nCmdexecopt, VARIANT *pvaIn, VARIANT *pvaOut)
static const cmdtable_t base_cmds[]
static ULONG WINAPI OleCommandTarget_AddRef(IOleCommandTarget *iface)
static HRESULT exec_zoom(HTMLDocument *This, DWORD nCmdexecopt, VARIANT *pvaIn, VARIANT *pvaOut)
static HRESULT exec_rendo(HTMLDocument *This, DWORD nCmdexecopt, VARIANT *pvaIn, VARIANT *pvaOut)
static nsIClipboardCommands * get_clipboard_commands(HTMLDocument *doc)
static HRESULT exec_htmleditmode(HTMLDocument *This, DWORD cmdexecopt, VARIANT *in, VARIANT *out)
static HRESULT WINAPI OleCommandTarget_QueryStatus(IOleCommandTarget *iface, const GUID *pguidCmdGroup, ULONG cCmds, OLECMD prgCmds[], OLECMDTEXT *pCmdText)
static HRESULT exec_stop_download(HTMLDocument *This, DWORD nCmdexecopt, VARIANT *pvaIn, VARIANT *pvaOut)
static HRESULT exec_stop(HTMLDocument *This, DWORD nCmdexecopt, VARIANT *pvaIn, VARIANT *pvaOut)
static HRESULT exec_mshtml_cut(HTMLDocument *This, DWORD cmdexecopt, VARIANT *in, VARIANT *out)
static HRESULT exec_find(HTMLDocument *This, DWORD nCmdexecopt, VARIANT *pvaIn, VARIANT *pvaOut)
static HRESULT exec_new(HTMLDocument *This, DWORD nCmdexecopt, VARIANT *pvaIn, VARIANT *pvaOut)
static HRESULT exec_get_zoom_range(HTMLDocument *This, DWORD nCmdexecopt, VARIANT *pvaIn, VARIANT *pvaOut)
static HRESULT exec_print_preview(HTMLDocument *This, DWORD nCmdexecopt, VARIANT *pvaIn, VARIANT *pvaOut)
static HRESULT exec_refresh(HTMLDocument *This, DWORD nCmdexecopt, VARIANT *pvaIn, VARIANT *pvaOut)
static HRESULT exec_show_page_setup(HTMLDocument *This, DWORD nCmdexecopt, VARIANT *pvaIn, VARIANT *pvaOut)
static HRESULT exec_save_copy_as(HTMLDocument *This, DWORD nCmdexecopt, VARIANT *pvaIn, VARIANT *pvaOut)
static HRESULT exec_paste(HTMLDocument *This, DWORD nCmdexecopt, VARIANT *pvaIn, VARIANT *pvaOut)
static HRESULT exec_mshtml_paste(HTMLDocument *This, DWORD cmdexecopt, VARIANT *in, VARIANT *out)
static HRESULT exec_select_all(HTMLDocument *This, DWORD nCmdexecopt, VARIANT *in, VARIANT *out)
static void set_print_template(nsIPrintSettings *settings, LPCWSTR template, BOOL head)
static HRESULT exec_enable_interaction(HTMLDocument *This, DWORD nCmdexecopt, VARIANT *pvaIn, VARIANT *pvaOut)
static HRESULT WINAPI OleCommandTarget_QueryInterface(IOleCommandTarget *iface, REFIID riid, void **ppv)
static HRESULT exec_save(HTMLDocument *This, DWORD nCmdexecopt, VARIANT *pvaIn, VARIANT *pvaOut)
static const struct @497 exec_table[]
static HRESULT exec_undo(HTMLDocument *This, DWORD nCmdexecopt, VARIANT *pvaIn, VARIANT *pvaOut)
static HRESULT exec_open(HTMLDocument *This, DWORD nCmdexecopt, VARIANT *pvaIn, VARIANT *pvaOut)
static HRESULT exec_page_setup(HTMLDocument *This, DWORD nCmdexecopt, VARIANT *pvaIn, VARIANT *pvaOut)
static HRESULT exec_editmode(HTMLDocument *This, DWORD cmdexecopt, VARIANT *in, VARIANT *out)
static HRESULT exec_baselinefont3(HTMLDocument *This, DWORD cmdexecopt, VARIANT *in, VARIANT *out)
static HRESULT exec_print(HTMLDocument *This, DWORD nCmdexecopt, VARIANT *pvaIn, VARIANT *pvaOut)
void HTMLDocument_OleCmd_Init(HTMLDocument *This)
static HRESULT query_enabled_stub(HTMLDocument *This, OLECMD *cmd)
static HRESULT exec_delete(HTMLDocument *This, DWORD nCmdexecopt, VARIANT *pvaIn, VARIANT *pvaOut)
static ULONG WINAPI OleCommandTarget_Release(IOleCommandTarget *iface)
static HRESULT exec_close(HTMLDocument *This, DWORD nCmdexecopt, VARIANT *pvaIn, VARIANT *pvaOut)
static HRESULT query_mshtml_copy(HTMLDocument *This, OLECMD *cmd)
static HRESULT query_mshtml_cut(HTMLDocument *This, OLECMD *cmd)
static HRESULT exec_browsemode(HTMLDocument *This, DWORD cmdexecopt, VARIANT *in, VARIANT *out)
static HRESULT exec_copy(HTMLDocument *This, DWORD nCmdexecopt, VARIANT *pvaIn, VARIANT *pvaOut)
static void refresh_proc(task_t *_task)
static HRESULT exec_get_print_template(HTMLDocument *This, DWORD nCmdexecopt, VARIANT *pvaIn, VARIANT *pvaOut)
static HRESULT exec_clear_selection(HTMLDocument *This, DWORD nCmdexecopt, VARIANT *pvaIn, VARIANT *pvaOut)
static HRESULT WINAPI OleCommandTarget_Exec(IOleCommandTarget *iface, const GUID *pguidCmdGroup, DWORD nCmdID, DWORD nCmdexecopt, VARIANT *pvaIn, VARIANT *pvaOut)
static HTMLDocument * impl_from_IOleCommandTarget(IOleCommandTarget *iface)
static HRESULT exec_respectvisibility_indesign(HTMLDocument *This, DWORD cmdexecopt, VARIANT *in, VARIANT *out)
static HRESULT exec_paste_special(HTMLDocument *This, DWORD nCmdexecopt, VARIANT *pvaIn, VARIANT *pvaOut)
static void set_default_templates(nsIPrintSettings *settings)
void show_context_menu(HTMLDocumentObj *This, DWORD dwID, POINT *ppt, IDispatch *elem)
static HRESULT exec_from_table(HTMLDocument *This, const cmdtable_t *cmdtable, DWORD cmdid, DWORD cmdexecopt, VARIANT *in, VARIANT *out)
static HRESULT exec_set_print_template(HTMLDocument *This, DWORD nCmdexecopt, VARIANT *pvaIn, VARIANT *pvaOut)
static const IOleCommandTargetVtbl OleCommandTargetVtbl
void do_ns_command(HTMLDocument *This, const char *cmd, nsICommandParams *nsparam)
static HRESULT exec_save_as(HTMLDocument *This, DWORD nCmdexecopt, VARIANT *pvaIn, VARIANT *pvaOut)
static HRESULT exec_spell(HTMLDocument *This, DWORD nCmdexecopt, VARIANT *pvaIn, VARIANT *pvaOut)
static HRESULT query_selall_status(HTMLDocument *This, OLECMD *cmd)
static HRESULT exec_properties(HTMLDocument *This, DWORD nCmdexecopt, VARIANT *pvaIn, VARIANT *pvaOut)
static HRESULT exec_on_unload(HTMLDocument *This, DWORD nCmdexecopt, VARIANT *pvaIn, VARIANT *pvaOut)
static void refresh_destr(task_t *_task)
static HRESULT exec_show_print(HTMLDocument *This, DWORD nCmdexecopt, VARIANT *pvaIn, VARIANT *pvaOut)
static HRESULT query_mshtml_paste(HTMLDocument *This, OLECMD *cmd)
static HRESULT exec_mshtml_copy(HTMLDocument *This, DWORD cmdexecopt, VARIANT *in, VARIANT *out)
static HRESULT exec_cut(HTMLDocument *This, DWORD nCmdexecopt, VARIANT *pvaIn, VARIANT *pvaOut)
static nsresult set_head_text(nsIPrintSettings *settings, LPCWSTR template, BOOL head, int pos)
#define IsEqualGUID(rguid1, rguid2)
IHTMLWindow2 IHTMLWindow2_iface
HRESULT(* exec)(HTMLDocument *, DWORD, VARIANT *, VARIANT *)
HRESULT(* query)(HTMLDocument *, OLECMD *)
#define CONTAINING_RECORD(address, type, field)
int WINAPI LoadStringW(_In_opt_ HINSTANCE hInstance, _In_ UINT uID, _Out_writes_to_(cchBufferMax, return+1) LPWSTR lpBuffer, _In_ int cchBufferMax)
HMENU WINAPI GetSubMenu(_In_ HMENU, _In_ int)
BOOL WINAPI DestroyMenu(_In_ HMENU)
BOOL WINAPI TrackPopupMenu(_In_ HMENU, _In_ UINT, _In_ int, _In_ int, _Reserved_ int, _In_ HWND, _Reserved_ LPCRECT)
#define MAKEINTRESOURCEW(i)
HMENU WINAPI LoadMenuW(_In_opt_ HINSTANCE, _In_ LPCWSTR)