ReactOS  0.4.14-dev-114-gc8cbd56
mshtml_private.h File Reference
#include <wine/config.h>
#include <assert.h>
#include <stdarg.h>
#include <stdio.h>
#include <math.h>
#include <windef.h>
#include <winbase.h>
#include <winreg.h>
#include <wingdi.h>
#include <ole2.h>
#include <docobjectservice.h>
#include <mshtmhst.h>
#include <mshtmcid.h>
#include <mshtmdid.h>
#include <perhist.h>
#include <objsafe.h>
#include <htiframe.h>
#include <tlogstg.h>
#include <shdeprecated.h>
#include <shlguid.h>
#include <shlwapi.h>
#include <optary.h>
#include <idispids.h>
#include <wininet.h>
#include <nsiface.h>
#include <wine/debug.h>
#include <wine/list.h>
#include <wine/unicode.h>
#include "binding.h"
#include "htmlevent.h"
#include "htmlscript.h"
#include "htmlstyle.h"
#include "pluginhost.h"
#include "resource.h"
Include dependency graph for mshtml_private.h:

Go to the source code of this file.

Classes

struct  dispex_static_data_vtbl_t
 
struct  dispex_static_data_t
 
struct  DispatchEx
 
struct  nsCycleCollectingAutoRefCnt
 
struct  ExternalCycleCollectionParticipant
 
struct  CCObjCallback
 
struct  global_prop_t
 
struct  EventTarget
 
struct  HTMLOptionElementFactory
 
struct  HTMLImageElementFactory
 
struct  HTMLXMLHttpRequestFactory
 
struct  HTMLLocation
 
struct  OmHistory
 
struct  windowref_t
 
struct  HTMLWindow
 
struct  HTMLOuterWindow
 
struct  HTMLInnerWindow
 
struct  _cp_static_data_t
 
struct  cpc_entry_t
 
struct  ConnectionPointContainer
 
struct  ConnectionPoint< T >
 
struct  HTMLDocument
 
struct  HTMLDocumentObj
 
struct  NSContainer
 
struct  NodeImplVtbl
 
struct  HTMLDOMNode
 
struct  HTMLElement
 
struct  HTMLTextContainer
 
struct  HTMLFrameBase
 
struct  HTMLDocumentNode
 
struct  HTMLAttributeCollection
 
struct  HTMLDOMAttribute
 
struct  cmdtable_t
 
struct  task_t
 
struct  docobj_task_t
 
struct  thread_data_t
 

Macros

#define WIN32_NO_STATUS
 
#define _INC_WINDOWS
 
#define COBJMACROS
 
#define NONAMELESSUNION
 
#define NONAMELESSSTRUCT
 
#define NO_SHLWAPI_REG
 
#define NS_ERROR_GENERATE_FAILURE(module, code)   ((nsresult) (((UINT32)(1u<<31)) | ((UINT32)(module+0x45)<<16) | ((UINT32)(code))))
 
#define NS_OK   ((nsresult)0x00000000L)
 
#define NS_ERROR_FAILURE   ((nsresult)0x80004005L)
 
#define NS_ERROR_OUT_OF_MEMORY   ((nsresult)0x8007000EL)
 
#define NS_ERROR_NOT_IMPLEMENTED   ((nsresult)0x80004001L)
 
#define NS_NOINTERFACE   ((nsresult)0x80004002L)
 
#define NS_ERROR_INVALID_POINTER   ((nsresult)0x80004003L)
 
#define NS_ERROR_NULL_POINTER   NS_ERROR_INVALID_POINTER
 
#define NS_ERROR_NOT_AVAILABLE   ((nsresult)0x80040111L)
 
#define NS_ERROR_INVALID_ARG   ((nsresult)0x80070057L)
 
#define NS_ERROR_UNEXPECTED   ((nsresult)0x8000ffffL)
 
#define NS_ERROR_MODULE_NETWORK   6
 
#define NS_BINDING_ABORTED   NS_ERROR_GENERATE_FAILURE(NS_ERROR_MODULE_NETWORK, 2)
 
#define NS_ERROR_UNKNOWN_PROTOCOL   NS_ERROR_GENERATE_FAILURE(NS_ERROR_MODULE_NETWORK, 18)
 
#define NS_FAILED(res)   ((res) & 0x80000000)
 
#define NS_SUCCEEDED(res)   (!NS_FAILED(res))
 
#define NSAPI   WINAPI
 
#define MSHTML_E_NODOC   0x800a025c
 
#define TID_LIST
 
#define XIID(iface)   iface ## _tid,
 
#define XDIID(iface)   iface ## _tid,
 
#define MSHTML_DISPID_CUSTOM_MIN   0x60000000
 
#define MSHTML_DISPID_CUSTOM_MAX   0x6fffffff
 
#define MSHTML_CUSTOM_DISPID_CNT   (MSHTML_DISPID_CUSTOM_MAX-MSHTML_DISPID_CUSTOM_MIN)
 
#define HTMLELEMENT_TIDS
 
#define HTMLELEMENT_CPC   {&DIID_HTMLElementEvents2, &HTMLElementEvents2_data}
 
#define ATTRFLAG_CASESENSITIVE   0x0001
 
#define ATTRFLAG_ASSTRING   0x0002
 
#define ATTRFLAG_EXPANDURL   0x0004
 
#define UPDATE_UI   0x0001
 
#define UPDATE_TITLE   0x0002
 

Typedefs

typedef struct HTMLDOMNode HTMLDOMNode
 
typedef struct ConnectionPoint ConnectionPoint
 
typedef struct BSCallback BSCallback
 
typedef struct event_target_t event_target_t
 
typedef struct dispex_data_t dispex_data_t
 
typedef struct dispex_dynamic_data_t dispex_dynamic_data_t
 
typedef struct DispatchEx DispatchEx
 
typedef struct nsCycleCollectionTraversalCallback nsCycleCollectionTraversalCallback
 
typedef struct HTMLWindow HTMLWindow
 
typedef struct HTMLInnerWindow HTMLInnerWindow
 
typedef struct HTMLOuterWindow HTMLOuterWindow
 
typedef struct HTMLDocumentNode HTMLDocumentNode
 
typedef struct HTMLDocumentObj HTMLDocumentObj
 
typedef struct HTMLFrameBase HTMLFrameBase
 
typedef struct NSContainer NSContainer
 
typedef struct HTMLAttributeCollection HTMLAttributeCollection
 
typedef struct ScriptHost ScriptHost
 
typedef struct nsChannelBSC nsChannelBSC
 
typedef struct _cp_static_data_t cp_static_data_t
 
typedef struct ConnectionPointContainer ConnectionPointContainer
 
typedef struct nsWeakReference nsWeakReference
 
typedef struct nsDocumentEventListener nsDocumentEventListener
 
typedef struct task_t task_t
 
typedef void(* task_proc_t) (task_t *)
 

Enumerations

enum  tid_t {
  LAST_tid, LAST_tid, Database_tid, Installer_tid,
  Record_tid, Session_tid, StringList_tid, SummaryInfo_tid,
  View_tid, LAST_tid, NULL_tid, IXMLDOMAttribute_tid,
  IXMLDOMCDATASection_tid, IXMLDOMComment_tid, IXMLDOMDocument_tid, IXMLDOMDocument2_tid,
  IXMLDOMDocument3_tid, IXMLDOMDocumentFragment_tid, IXMLDOMDocumentType_tid, IXMLDOMElement_tid,
  IXMLDOMEntityReference_tid, IXMLDOMImplementation_tid, IXMLDOMNamedNodeMap_tid, IXMLDOMNode_tid,
  IXMLDOMNodeList_tid, IXMLDOMParseError2_tid, IXMLDOMProcessingInstruction_tid, IXMLDOMSchemaCollection_tid,
  IXMLDOMSchemaCollection2_tid, IXMLDOMSelection_tid, IXMLDOMText_tid, IXMLElement_tid,
  IXMLDocument_tid, IXMLHTTPRequest_tid, IXSLProcessor_tid, IXSLTemplate_tid,
  IVBSAXAttributes_tid, IVBSAXContentHandler_tid, IVBSAXDeclHandler_tid, IVBSAXDTDHandler_tid,
  IVBSAXEntityResolver_tid, IVBSAXErrorHandler_tid, IVBSAXLexicalHandler_tid, IVBSAXLocator_tid,
  IVBSAXXMLFilter_tid, IVBSAXXMLReader_tid, IMXAttributes_tid, IMXReaderControl_tid,
  IMXWriter_tid, IVBMXNamespaceManager_tid, IServerXMLHTTPRequest_tid, LAST_tid,
  NULL_tid, ITextDocument_tid, ITextRange_tid, ITextSelection_tid,
  ITextFont_tid, ITextPara_tid, LAST_tid, NULL_tid,
  IDictionary_tid, IDrive_tid, IDriveCollection_tid, IFile_tid,
  IFileCollection_tid, IFileSystem3_tid, IFolder_tid, IFolderCollection_tid,
  ITextStream_tid, LAST_tid, LAST_tid, NULL_tid,
  IWshCollection_tid, IWshEnvironment_tid, IWshExec_tid, IWshShell3_tid,
  IWshShortcut_tid, LAST_tid
}
 
enum  dispex_prop_type_t { DISPEXPROP_CUSTOM, DISPEXPROP_DYNAMIC, DISPEXPROP_BUILTIN }
 
enum  SCRIPTMODE { SCRIPTMODE_GECKO, SCRIPTMODE_ACTIVESCRIPT }
 
enum  global_prop_type_t { GLOBAL_SCRIPTVAR, GLOBAL_ELEMENTVAR, GLOBAL_DISPEXVAR, GLOBAL_FRAMEVAR }
 
enum  USERMODE { UNKNOWN_USERMODE, BROWSEMODE, EDITMODE }
 

Functions

 WINE_DEFAULT_DEBUG_CHANNEL (mshtml)
 
 DEFINE_GUID (IID_nsXPCOMCycleCollectionParticipant, 0x9674489b, 0x1f6f, 0x4550, 0xa7, 0x30, 0xcc, 0xae, 0xdd, 0x10, 0x4c, 0xf9)
 
 nsrefcnt (__cdecl *ccref_incr)(nsCycleCollectingAutoRefCnt *
 
 void (__cdecl *ccref_init)(nsCycleCollectingAutoRefCnt *
 
void init_dispex (DispatchEx *, IUnknown *, dispex_static_data_t *) DECLSPEC_HIDDEN
 
void release_dispex (DispatchEx *) DECLSPEC_HIDDEN
 
BOOL dispex_query_interface (DispatchEx *, REFIID, void **) DECLSPEC_HIDDEN
 
HRESULT dispex_get_dprop_ref (DispatchEx *, const WCHAR *, BOOL, VARIANT **) DECLSPEC_HIDDEN
 
HRESULT get_dispids (tid_t, DWORD *, DISPID **) DECLSPEC_HIDDEN
 
HRESULT remove_attribute (DispatchEx *, DISPID, VARIANT_BOOL *) DECLSPEC_HIDDEN
 
HRESULT dispex_get_dynid (DispatchEx *, const WCHAR *, DISPID *) DECLSPEC_HIDDEN
 
void dispex_traverse (DispatchEx *, nsCycleCollectionTraversalCallback *) DECLSPEC_HIDDEN
 
void dispex_unlink (DispatchEx *) DECLSPEC_HIDDEN
 
void release_typelib (void) DECLSPEC_HIDDEN
 
HRESULT get_htmldoc_classinfo (ITypeInfo **typeinfo) DECLSPEC_HIDDEN
 
dispex_prop_type_t get_dispid_type (DISPID) DECLSPEC_HIDDEN
 
static HRESULT htmldoc_query_interface (HTMLDocument *This, REFIID riid, void **ppv)
 
static ULONG htmldoc_addref (HTMLDocument *This)
 
static ULONG htmldoc_release (HTMLDocument *This)
 
static void node_addref (HTMLDOMNode *node)
 
static void node_release (HTMLDOMNode *node)
 
HRESULT HTMLDocument_Create (IUnknown *, REFIID, void **) DECLSPEC_HIDDEN
 
HRESULT HTMLLoadOptions_Create (IUnknown *, REFIID, void **) DECLSPEC_HIDDEN
 
HRESULT create_doc_from_nsdoc (nsIDOMHTMLDocument *, HTMLDocumentObj *, HTMLInnerWindow *, HTMLDocumentNode **) DECLSPEC_HIDDEN
 
HRESULT HTMLOuterWindow_Create (HTMLDocumentObj *, nsIDOMWindow *, HTMLOuterWindow *, HTMLOuterWindow **) DECLSPEC_HIDDEN
 
HRESULT update_window_doc (HTMLInnerWindow *) DECLSPEC_HIDDEN
 
HTMLOuterWindownswindow_to_window (const nsIDOMWindow *) DECLSPEC_HIDDEN
 
void get_top_window (HTMLOuterWindow *, HTMLOuterWindow **) DECLSPEC_HIDDEN
 
HRESULT HTMLOptionElementFactory_Create (HTMLInnerWindow *, HTMLOptionElementFactory **) DECLSPEC_HIDDEN
 
HRESULT HTMLImageElementFactory_Create (HTMLInnerWindow *, HTMLImageElementFactory **) DECLSPEC_HIDDEN
 
HRESULT HTMLXMLHttpRequestFactory_Create (HTMLInnerWindow *, HTMLXMLHttpRequestFactory **) DECLSPEC_HIDDEN
 
HRESULT HTMLLocation_Create (HTMLInnerWindow *, HTMLLocation **) DECLSPEC_HIDDEN
 
IOmNavigator * OmNavigator_Create (void) DECLSPEC_HIDDEN
 
HRESULT HTMLScreen_Create (IHTMLScreen **) DECLSPEC_HIDDEN
 
HRESULT create_history (HTMLInnerWindow *, OmHistory **) DECLSPEC_HIDDEN
 
HRESULT create_dom_implementation (IHTMLDOMImplementation **) DECLSPEC_HIDDEN
 
HRESULT create_storage (IHTMLStorage **) DECLSPEC_HIDDEN
 
void HTMLDocument_Persist_Init (HTMLDocument *) DECLSPEC_HIDDEN
 
void HTMLDocument_OleCmd_Init (HTMLDocument *) DECLSPEC_HIDDEN
 
void HTMLDocument_OleObj_Init (HTMLDocument *) DECLSPEC_HIDDEN
 
void HTMLDocument_View_Init (HTMLDocument *) DECLSPEC_HIDDEN
 
void HTMLDocument_Window_Init (HTMLDocument *) DECLSPEC_HIDDEN
 
void HTMLDocument_Service_Init (HTMLDocument *) DECLSPEC_HIDDEN
 
void HTMLDocument_Hlink_Init (HTMLDocument *) DECLSPEC_HIDDEN
 
void TargetContainer_Init (HTMLDocumentObj *) DECLSPEC_HIDDEN
 
void init_binding_ui (HTMLDocumentObj *) DECLSPEC_HIDDEN
 
void HTMLDocumentNode_SecMgr_Init (HTMLDocumentNode *) DECLSPEC_HIDDEN
 
HRESULT HTMLCurrentStyle_Create (HTMLElement *, IHTMLCurrentStyle **) DECLSPEC_HIDDEN
 
void ConnectionPointContainer_Init (ConnectionPointContainer *, IUnknown *, const cpc_entry_t *) DECLSPEC_HIDDEN
 
void ConnectionPointContainer_Destroy (ConnectionPointContainer *) DECLSPEC_HIDDEN
 
HRESULT create_nscontainer (HTMLDocumentObj *, NSContainer **) DECLSPEC_HIDDEN
 
void NSContainer_Release (NSContainer *) DECLSPEC_HIDDEN
 
void init_mutation (nsIComponentManager *) DECLSPEC_HIDDEN
 
void init_document_mutation (HTMLDocumentNode *) DECLSPEC_HIDDEN
 
void release_document_mutation (HTMLDocumentNode *) DECLSPEC_HIDDEN
 
JSContextget_context_from_document (nsIDOMHTMLDocument *) DECLSPEC_HIDDEN
 
void HTMLDocument_LockContainer (HTMLDocumentObj *, BOOL) DECLSPEC_HIDDEN
 
void show_context_menu (HTMLDocumentObj *, DWORD, POINT *, IDispatch *) DECLSPEC_HIDDEN
 
void notif_focus (HTMLDocumentObj *) DECLSPEC_HIDDEN
 
void show_tooltip (HTMLDocumentObj *, DWORD, DWORD, LPCWSTR) DECLSPEC_HIDDEN
 
void hide_tooltip (HTMLDocumentObj *) DECLSPEC_HIDDEN
 
HRESULT get_client_disp_property (IOleClientSite *, DISPID, VARIANT *) DECLSPEC_HIDDEN
 
UINT get_document_charset (HTMLDocumentNode *) DECLSPEC_HIDDEN
 
HRESULT ProtocolFactory_Create (REFCLSID, REFIID, void **) DECLSPEC_HIDDEN
 
BOOL load_gecko (void) DECLSPEC_HIDDEN
 
void close_gecko (void) DECLSPEC_HIDDEN
 
void register_nsservice (nsIComponentRegistrar *, nsIServiceManager *) DECLSPEC_HIDDEN
 
void init_nsio (nsIComponentManager *, nsIComponentRegistrar *) DECLSPEC_HIDDEN
 
void release_nsio (void) DECLSPEC_HIDDEN
 
BOOL is_gecko_path (const char *) DECLSPEC_HIDDEN
 
void set_viewer_zoom (NSContainer *, float) DECLSPEC_HIDDEN
 
void init_node_cc (void) DECLSPEC_HIDDEN
 
HRESULT nsuri_to_url (LPCWSTR, BOOL, BSTR *) DECLSPEC_HIDDEN
 
HRESULT set_frame_doc (HTMLFrameBase *, nsIDOMDocument *) DECLSPEC_HIDDEN
 
void call_property_onchanged (ConnectionPointContainer *, DISPID) DECLSPEC_HIDDEN
 
HRESULT call_set_active_object (IOleInPlaceUIWindow *, IOleInPlaceActiveObject *) DECLSPEC_HIDDEN
 
voidnsalloc (size_t) __WINE_ALLOC_SIZE(1) DECLSPEC_HIDDEN
 
void nsfree (void *) DECLSPEC_HIDDEN
 
BOOL nsACString_Init (nsACString *str, const char *data) DECLSPEC_HIDDEN
 
void nsACString_InitDepend (nsACString *, const char *) DECLSPEC_HIDDEN
 
void nsACString_SetData (nsACString *, const char *) DECLSPEC_HIDDEN
 
UINT32 nsACString_GetData (const nsACString *, const char **) DECLSPEC_HIDDEN
 
void nsACString_Finish (nsACString *) DECLSPEC_HIDDEN
 
BOOL nsAString_Init (nsAString *, const PRUnichar *) DECLSPEC_HIDDEN
 
void nsAString_InitDepend (nsAString *, const PRUnichar *) DECLSPEC_HIDDEN
 
UINT32 nsAString_GetData (const nsAString *, const PRUnichar **) DECLSPEC_HIDDEN
 
void nsAString_Finish (nsAString *) DECLSPEC_HIDDEN
 
HRESULT return_nsstr (nsresult, nsAString *, BSTR *) DECLSPEC_HIDDEN
 
static HRESULT return_nsstr_variant (nsresult nsres, nsAString *nsstr, VARIANT *p)
 
nsICommandParamscreate_nscommand_params (void) DECLSPEC_HIDDEN
 
HRESULT nsnode_to_nsstring (nsIDOMNode *, nsAString *) DECLSPEC_HIDDEN
 
void get_editor_controller (NSContainer *) DECLSPEC_HIDDEN
 
nsresult get_nsinterface (nsISupports *, REFIID, void **) DECLSPEC_HIDDEN
 
nsIWritableVariantcreate_nsvariant (void) DECLSPEC_HIDDEN
 
nsIXMLHttpRequestcreate_nsxhr (nsIDOMWindow *nswindow) DECLSPEC_HIDDEN
 
nsresult create_nsfile (const PRUnichar *, nsIFile **) DECLSPEC_HIDDEN
 
charget_nscategory_entry (const char *, const char *) DECLSPEC_HIDDEN
 
HRESULT create_pending_window (HTMLOuterWindow *, nsChannelBSC *) DECLSPEC_HIDDEN
 
HRESULT start_binding (HTMLInnerWindow *, BSCallback *, IBindCtx *) DECLSPEC_HIDDEN
 
HRESULT async_start_doc_binding (HTMLOuterWindow *, HTMLInnerWindow *) DECLSPEC_HIDDEN
 
void abort_window_bindings (HTMLInnerWindow *) DECLSPEC_HIDDEN
 
void set_download_state (HTMLDocumentObj *, int) DECLSPEC_HIDDEN
 
void call_docview_84 (HTMLDocumentObj *) DECLSPEC_HIDDEN
 
void set_ready_state (HTMLOuterWindow *, READYSTATE) DECLSPEC_HIDDEN
 
HRESULT get_readystate_string (READYSTATE, BSTR *) DECLSPEC_HIDDEN
 
HRESULT HTMLSelectionObject_Create (HTMLDocumentNode *, nsISelection *, IHTMLSelectionObject **) DECLSPEC_HIDDEN
 
HRESULT HTMLTxtRange_Create (HTMLDocumentNode *, nsIDOMRange *, IHTMLTxtRange **) DECLSPEC_HIDDEN
 
IHTMLStyleSheet * HTMLStyleSheet_Create (nsIDOMStyleSheet *) DECLSPEC_HIDDEN
 
IHTMLStyleSheetsCollection * HTMLStyleSheetsCollection_Create (nsIDOMStyleSheetList *) DECLSPEC_HIDDEN
 
void detach_selection (HTMLDocumentNode *) DECLSPEC_HIDDEN
 
void detach_ranges (HTMLDocumentNode *) DECLSPEC_HIDDEN
 
HRESULT get_node_text (HTMLDOMNode *, BSTR *) DECLSPEC_HIDDEN
 
HRESULT replace_node_by_html (nsIDOMHTMLDocument *, nsIDOMNode *, const WCHAR *) DECLSPEC_HIDDEN
 
HRESULT create_nselem (HTMLDocumentNode *, const WCHAR *, nsIDOMHTMLElement **) DECLSPEC_HIDDEN
 
HRESULT create_element (HTMLDocumentNode *, const WCHAR *, HTMLElement **) DECLSPEC_HIDDEN
 
HRESULT HTMLDOMTextNode_Create (HTMLDocumentNode *, nsIDOMNode *, HTMLDOMNode **) DECLSPEC_HIDDEN
 
BOOL variant_to_nscolor (const VARIANT *v, nsAString *nsstr) DECLSPEC_HIDDEN
 
HRESULT nscolor_to_str (LPCWSTR color, BSTR *ret) DECLSPEC_HIDDEN
 
HRESULT HTMLDOMAttribute_Create (const WCHAR *, HTMLElement *, DISPID, HTMLDOMAttribute **) DECLSPEC_HIDDEN
 
HRESULT HTMLElement_Create (HTMLDocumentNode *, nsIDOMNode *, BOOL, HTMLElement **) DECLSPEC_HIDDEN
 
HRESULT HTMLCommentElement_Create (HTMLDocumentNode *, nsIDOMNode *, HTMLElement **) DECLSPEC_HIDDEN
 
HRESULT HTMLAnchorElement_Create (HTMLDocumentNode *, nsIDOMHTMLElement *, HTMLElement **) DECLSPEC_HIDDEN
 
HRESULT HTMLAreaElement_Create (HTMLDocumentNode *, nsIDOMHTMLElement *, HTMLElement **) DECLSPEC_HIDDEN
 
HRESULT HTMLBodyElement_Create (HTMLDocumentNode *, nsIDOMHTMLElement *, HTMLElement **) DECLSPEC_HIDDEN
 
HRESULT HTMLButtonElement_Create (HTMLDocumentNode *, nsIDOMHTMLElement *, HTMLElement **) DECLSPEC_HIDDEN
 
HRESULT HTMLEmbedElement_Create (HTMLDocumentNode *, nsIDOMHTMLElement *, HTMLElement **) DECLSPEC_HIDDEN
 
HRESULT HTMLFormElement_Create (HTMLDocumentNode *, nsIDOMHTMLElement *, HTMLElement **) DECLSPEC_HIDDEN
 
HRESULT HTMLFrameElement_Create (HTMLDocumentNode *, nsIDOMHTMLElement *, HTMLElement **) DECLSPEC_HIDDEN
 
HRESULT HTMLHeadElement_Create (HTMLDocumentNode *, nsIDOMHTMLElement *, HTMLElement **) DECLSPEC_HIDDEN
 
HRESULT HTMLIFrame_Create (HTMLDocumentNode *, nsIDOMHTMLElement *, HTMLElement **) DECLSPEC_HIDDEN
 
HRESULT HTMLStyleElement_Create (HTMLDocumentNode *, nsIDOMHTMLElement *, HTMLElement **) DECLSPEC_HIDDEN
 
HRESULT HTMLImgElement_Create (HTMLDocumentNode *, nsIDOMHTMLElement *, HTMLElement **) DECLSPEC_HIDDEN
 
HRESULT HTMLInputElement_Create (HTMLDocumentNode *, nsIDOMHTMLElement *, HTMLElement **) DECLSPEC_HIDDEN
 
HRESULT HTMLLabelElement_Create (HTMLDocumentNode *, nsIDOMHTMLElement *, HTMLElement **) DECLSPEC_HIDDEN
 
HRESULT HTMLLinkElement_Create (HTMLDocumentNode *, nsIDOMHTMLElement *, HTMLElement **) DECLSPEC_HIDDEN
 
HRESULT HTMLMetaElement_Create (HTMLDocumentNode *, nsIDOMHTMLElement *, HTMLElement **) DECLSPEC_HIDDEN
 
HRESULT HTMLObjectElement_Create (HTMLDocumentNode *, nsIDOMHTMLElement *, HTMLElement **) DECLSPEC_HIDDEN
 
HRESULT HTMLOptionElement_Create (HTMLDocumentNode *, nsIDOMHTMLElement *, HTMLElement **) DECLSPEC_HIDDEN
 
HRESULT HTMLScriptElement_Create (HTMLDocumentNode *, nsIDOMHTMLElement *, HTMLElement **) DECLSPEC_HIDDEN
 
HRESULT HTMLSelectElement_Create (HTMLDocumentNode *, nsIDOMHTMLElement *, HTMLElement **) DECLSPEC_HIDDEN
 
HRESULT HTMLTable_Create (HTMLDocumentNode *, nsIDOMHTMLElement *, HTMLElement **) DECLSPEC_HIDDEN
 
HRESULT HTMLTableCell_Create (HTMLDocumentNode *, nsIDOMHTMLElement *, HTMLElement **) DECLSPEC_HIDDEN
 
HRESULT HTMLTableRow_Create (HTMLDocumentNode *, nsIDOMHTMLElement *, HTMLElement **) DECLSPEC_HIDDEN
 
HRESULT HTMLTextAreaElement_Create (HTMLDocumentNode *, nsIDOMHTMLElement *, HTMLElement **) DECLSPEC_HIDDEN
 
HRESULT HTMLTitleElement_Create (HTMLDocumentNode *, nsIDOMHTMLElement *, HTMLElement **) DECLSPEC_HIDDEN
 
HRESULT HTMLGenericElement_Create (HTMLDocumentNode *, nsIDOMHTMLElement *, HTMLElement **) DECLSPEC_HIDDEN
 
void HTMLDOMNode_Init (HTMLDocumentNode *, HTMLDOMNode *, nsIDOMNode *) DECLSPEC_HIDDEN
 
void HTMLElement_Init (HTMLElement *, HTMLDocumentNode *, nsIDOMHTMLElement *, dispex_static_data_t *) DECLSPEC_HIDDEN
 
void HTMLTextContainer_Init (HTMLTextContainer *, HTMLDocumentNode *, nsIDOMHTMLElement *, dispex_static_data_t *) DECLSPEC_HIDDEN
 
void HTMLFrameBase_Init (HTMLFrameBase *, HTMLDocumentNode *, nsIDOMHTMLElement *, dispex_static_data_t *) DECLSPEC_HIDDEN
 
HRESULT HTMLDOMNode_QI (HTMLDOMNode *, REFIID, void **) DECLSPEC_HIDDEN
 
void HTMLDOMNode_destructor (HTMLDOMNode *) DECLSPEC_HIDDEN
 
HRESULT HTMLElement_QI (HTMLDOMNode *, REFIID, void **) DECLSPEC_HIDDEN
 
void HTMLElement_destructor (HTMLDOMNode *) DECLSPEC_HIDDEN
 
HRESULT HTMLElement_clone (HTMLDOMNode *, nsIDOMNode *, HTMLDOMNode **) DECLSPEC_HIDDEN
 
HRESULT HTMLElement_get_attr_col (HTMLDOMNode *, HTMLAttributeCollection **) DECLSPEC_HIDDEN
 
HRESULT HTMLElement_handle_event (HTMLDOMNode *, DWORD, nsIDOMEvent *, BOOL *) DECLSPEC_HIDDEN
 
HRESULT HTMLFrameBase_QI (HTMLFrameBase *, REFIID, void **) DECLSPEC_HIDDEN
 
void HTMLFrameBase_destructor (HTMLFrameBase *) DECLSPEC_HIDDEN
 
HRESULT get_node (HTMLDocumentNode *, nsIDOMNode *, BOOL, HTMLDOMNode **) DECLSPEC_HIDDEN
 
HRESULT get_elem (HTMLDocumentNode *, nsIDOMElement *, HTMLElement **) DECLSPEC_HIDDEN
 
HTMLElementunsafe_impl_from_IHTMLElement (IHTMLElement *) DECLSPEC_HIDDEN
 
HRESULT search_window_props (HTMLInnerWindow *, BSTR, DWORD, DISPID *) DECLSPEC_HIDDEN
 
HRESULT get_frame_by_name (HTMLOuterWindow *, const WCHAR *, BOOL, HTMLOuterWindow **) DECLSPEC_HIDDEN
 
HRESULT get_doc_elem_by_id (HTMLDocumentNode *, const WCHAR *, HTMLElement **) DECLSPEC_HIDDEN
 
HTMLOuterWindowget_target_window (HTMLOuterWindow *, nsAString *, BOOL *) DECLSPEC_HIDDEN
 
HRESULT handle_link_click_event (HTMLElement *, nsAString *, nsAString *, nsIDOMEvent *, BOOL *) DECLSPEC_HIDDEN
 
HRESULT wrap_iface (IUnknown *, IUnknown *, IUnknown **) DECLSPEC_HIDDEN
 
IHTMLElementCollection * create_all_collection (HTMLDOMNode *, BOOL) DECLSPEC_HIDDEN
 
IHTMLElementCollection * create_collection_from_nodelist (HTMLDocumentNode *, nsIDOMNodeList *) DECLSPEC_HIDDEN
 
IHTMLElementCollection * create_collection_from_htmlcol (HTMLDocumentNode *, nsIDOMHTMLCollection *) DECLSPEC_HIDDEN
 
HRESULT get_elem_attr_value_by_dispid (HTMLElement *, DISPID, DWORD, VARIANT *) DECLSPEC_HIDDEN
 
HRESULT get_elem_source_index (HTMLElement *, LONG *) DECLSPEC_HIDDEN
 
nsresult get_elem_attr_value (nsIDOMHTMLElement *, const WCHAR *, nsAString *, const PRUnichar **) DECLSPEC_HIDDEN
 
HRESULT elem_string_attr_getter (HTMLElement *, const WCHAR *, BOOL, BSTR *) DECLSPEC_HIDDEN
 
HRESULT elem_string_attr_setter (HTMLElement *, const WCHAR *, const WCHAR *) DECLSPEC_HIDDEN
 
void do_ns_command (HTMLDocument *, const char *, nsICommandParams *) DECLSPEC_HIDDEN
 
void update_doc (HTMLDocument *, DWORD) DECLSPEC_HIDDEN
 
void update_title (HTMLDocumentObj *) DECLSPEC_HIDDEN
 
void set_document_navigation (HTMLDocumentObj *, BOOL) DECLSPEC_HIDDEN
 
HRESULT do_query_service (IUnknown *, REFGUID, REFIID, void **) DECLSPEC_HIDDEN
 
HRESULT setup_edit_mode (HTMLDocumentObj *) DECLSPEC_HIDDEN
 
void init_editor (HTMLDocument *) DECLSPEC_HIDDEN
 
void handle_edit_event (HTMLDocument *, nsIDOMEvent *) DECLSPEC_HIDDEN
 
HRESULT editor_exec_copy (HTMLDocument *, DWORD, VARIANT *, VARIANT *) DECLSPEC_HIDDEN
 
HRESULT editor_exec_cut (HTMLDocument *, DWORD, VARIANT *, VARIANT *) DECLSPEC_HIDDEN
 
HRESULT editor_exec_paste (HTMLDocument *, DWORD, VARIANT *, VARIANT *) DECLSPEC_HIDDEN
 
void handle_edit_load (HTMLDocument *) DECLSPEC_HIDDEN
 
HRESULT editor_is_dirty (HTMLDocument *) DECLSPEC_HIDDEN
 
void set_dirty (HTMLDocument *, VARIANT_BOOL) DECLSPEC_HIDDEN
 
thread_data_tget_thread_data (BOOL) DECLSPEC_HIDDEN
 
HWND get_thread_hwnd (void) DECLSPEC_HIDDEN
 
LONG get_task_target_magic (void) DECLSPEC_HIDDEN
 
HRESULT push_task (task_t *, task_proc_t, task_proc_t, LONG) DECLSPEC_HIDDEN
 
void remove_target_tasks (LONG) DECLSPEC_HIDDEN
 
void flush_pending_tasks (LONG) DECLSPEC_HIDDEN
 
HRESULT set_task_timer (HTMLInnerWindow *, DWORD, BOOL, IDispatch *, LONG *) DECLSPEC_HIDDEN
 
HRESULT clear_task_timer (HTMLInnerWindow *, BOOL, DWORD) DECLSPEC_HIDDEN
 
const chardebugstr_mshtml_guid (const GUID *) DECLSPEC_HIDDEN
 
 DEFINE_GUID (CLSID_AboutProtocol, 0x3050F406, 0x98B5, 0x11CF, 0xBB, 0x82, 0x00, 0xAA, 0x00, 0xBD, 0xCE, 0x0B)
 
 DEFINE_GUID (CLSID_JSProtocol, 0x3050F3B2, 0x98B5, 0x11CF, 0xBB, 0x82, 0x00, 0xAA, 0x00, 0xBD, 0xCE, 0x0B)
 
 DEFINE_GUID (CLSID_MailtoProtocol, 0x3050F3DA, 0x98B5, 0x11CF, 0xBB, 0x82, 0x00, 0xAA, 0x00, 0xBD, 0xCE, 0x0B)
 
 DEFINE_GUID (CLSID_ResProtocol, 0x3050F3BC, 0x98B5, 0x11CF, 0xBB, 0x82, 0x00, 0xAA, 0x00, 0xBD, 0xCE, 0x0B)
 
 DEFINE_GUID (CLSID_SysimageProtocol, 0x76E67A63, 0x06E9, 0x11D2, 0xA8, 0x40, 0x00, 0x60, 0x08, 0x05, 0x93, 0x82)
 
 DEFINE_GUID (CLSID_CMarkup, 0x3050f4fb, 0x98b5, 0x11cf, 0xbb, 0x82, 0x00, 0xaa, 0x00, 0xbd, 0xce, 0x0b)
 
 DEFINE_OLEGUID (CGID_DocHostCmdPriv, 0x000214D4L, 0, 0)
 
 DEFINE_GUID (CLSID_JScript, 0xf414c260, 0x6ac0, 0x11cf, 0xb6, 0xd1, 0x00, 0xaa, 0x00, 0xbb, 0xbb, 0x58)
 
 DEFINE_GUID (CLSID_VBScript, 0xb54f3741, 0x5b07, 0x11cf, 0xa4, 0xb0, 0x00, 0xaa, 0x00, 0x4a, 0x55, 0xe8)
 
 DEFINE_GUID (IID_UndocumentedScriptIface, 0x719c3050, 0xf9d3, 0x11cf, 0xa4, 0x93, 0x00, 0x40, 0x05, 0x23, 0xa8, 0xa0)
 
 DEFINE_GUID (IID_IDispatchJS, 0x719c3050, 0xf9d3, 0x11cf, 0xa4, 0x93, 0x00, 0x40, 0x05, 0x23, 0xa8, 0xa6)
 
static void__WINE_ALLOC_SIZE (1) heap_alloc(size_t len)
 
static void__WINE_ALLOC_SIZE (2) heap_realloc(void *mem
 
static BOOL heap_free (void *mem)
 
static LPWSTR heap_strdupW (LPCWSTR str)
 
static LPWSTR heap_strndupW (LPCWSTR str, unsigned len)
 
static charheap_strdupA (const char *str)
 
static WCHARheap_strdupAtoW (const char *str)
 
static charheap_strdupWtoA (LPCWSTR str)
 
static WCHARheap_strdupUtoW (const char *str)
 
static charheap_strdupWtoU (const WCHAR *str)
 
static charheap_strndupWtoU (LPCWSTR str, unsigned len)
 
static void windowref_addref (windowref_t *ref)
 
static void windowref_release (windowref_t *ref)
 
UINT cp_from_charset_string (BSTR) DECLSPEC_HIDDEN
 
HDC get_display_dc (void) DECLSPEC_HIDDEN
 
HINSTANCE get_shdoclc (void) DECLSPEC_HIDDEN
 
void set_statustext (HTMLDocumentObj *, INT, LPCWSTR) DECLSPEC_HIDDEN
 

Variables

typedef helpstring
 
nsISupportsDECLSPEC_HIDDEN
 
static void size_t len
 

Macro Definition Documentation

◆ _INC_WINDOWS

#define _INC_WINDOWS

Definition at line 30 of file mshtml_private.h.

◆ ATTRFLAG_ASSTRING

#define ATTRFLAG_ASSTRING   0x0002

Definition at line 1031 of file mshtml_private.h.

◆ ATTRFLAG_CASESENSITIVE

#define ATTRFLAG_CASESENSITIVE   0x0001

Definition at line 1030 of file mshtml_private.h.

◆ ATTRFLAG_EXPANDURL

#define ATTRFLAG_EXPANDURL   0x0004

Definition at line 1032 of file mshtml_private.h.

◆ COBJMACROS

#define COBJMACROS

Definition at line 32 of file mshtml_private.h.

◆ HTMLELEMENT_CPC

#define HTMLELEMENT_CPC   {&DIID_HTMLElementEvents2, &HTMLElementEvents2_data}

Definition at line 748 of file mshtml_private.h.

◆ HTMLELEMENT_TIDS

#define HTMLELEMENT_TIDS
Value:
IHTMLDOMNode_tid, \
IHTMLDOMNode2_tid, \
IHTMLElement_tid, \
IHTMLElement2_tid, \
IHTMLElement3_tid, \
IHTMLElement4_tid

Definition at line 739 of file mshtml_private.h.

◆ MSHTML_CUSTOM_DISPID_CNT

#define MSHTML_CUSTOM_DISPID_CNT   (MSHTML_DISPID_CUSTOM_MAX-MSHTML_DISPID_CUSTOM_MIN)

Definition at line 251 of file mshtml_private.h.

◆ MSHTML_DISPID_CUSTOM_MAX

#define MSHTML_DISPID_CUSTOM_MAX   0x6fffffff

Definition at line 250 of file mshtml_private.h.

◆ MSHTML_DISPID_CUSTOM_MIN

#define MSHTML_DISPID_CUSTOM_MIN   0x60000000

Definition at line 249 of file mshtml_private.h.

◆ MSHTML_E_NODOC

#define MSHTML_E_NODOC   0x800a025c

Definition at line 88 of file mshtml_private.h.

◆ NO_SHLWAPI_REG

#define NO_SHLWAPI_REG

Definition at line 51 of file mshtml_private.h.

◆ NONAMELESSSTRUCT

#define NONAMELESSSTRUCT

Definition at line 34 of file mshtml_private.h.

◆ NONAMELESSUNION

#define NONAMELESSUNION

Definition at line 33 of file mshtml_private.h.

◆ NS_BINDING_ABORTED

Definition at line 80 of file mshtml_private.h.

◆ NS_ERROR_FAILURE

#define NS_ERROR_FAILURE   ((nsresult)0x80004005L)

Definition at line 68 of file mshtml_private.h.

◆ NS_ERROR_GENERATE_FAILURE

#define NS_ERROR_GENERATE_FAILURE (   module,
  code 
)    ((nsresult) (((UINT32)(1u<<31)) | ((UINT32)(module+0x45)<<16) | ((UINT32)(code))))

Definition at line 64 of file mshtml_private.h.

◆ NS_ERROR_INVALID_ARG

#define NS_ERROR_INVALID_ARG   ((nsresult)0x80070057L)

Definition at line 75 of file mshtml_private.h.

◆ NS_ERROR_INVALID_POINTER

#define NS_ERROR_INVALID_POINTER   ((nsresult)0x80004003L)

Definition at line 72 of file mshtml_private.h.

◆ NS_ERROR_MODULE_NETWORK

#define NS_ERROR_MODULE_NETWORK   6

Definition at line 78 of file mshtml_private.h.

◆ NS_ERROR_NOT_AVAILABLE

#define NS_ERROR_NOT_AVAILABLE   ((nsresult)0x80040111L)

Definition at line 74 of file mshtml_private.h.

◆ NS_ERROR_NOT_IMPLEMENTED

#define NS_ERROR_NOT_IMPLEMENTED   ((nsresult)0x80004001L)

Definition at line 70 of file mshtml_private.h.

◆ NS_ERROR_NULL_POINTER

#define NS_ERROR_NULL_POINTER   NS_ERROR_INVALID_POINTER

Definition at line 73 of file mshtml_private.h.

◆ NS_ERROR_OUT_OF_MEMORY

#define NS_ERROR_OUT_OF_MEMORY   ((nsresult)0x8007000EL)

Definition at line 69 of file mshtml_private.h.

◆ NS_ERROR_UNEXPECTED

#define NS_ERROR_UNEXPECTED   ((nsresult)0x8000ffffL)

Definition at line 76 of file mshtml_private.h.

◆ NS_ERROR_UNKNOWN_PROTOCOL

#define NS_ERROR_UNKNOWN_PROTOCOL   NS_ERROR_GENERATE_FAILURE(NS_ERROR_MODULE_NETWORK, 18)

Definition at line 81 of file mshtml_private.h.

◆ NS_FAILED

#define NS_FAILED (   res)    ((res) & 0x80000000)

Definition at line 83 of file mshtml_private.h.

◆ NS_NOINTERFACE

#define NS_NOINTERFACE   ((nsresult)0x80004002L)

Definition at line 71 of file mshtml_private.h.

◆ NS_OK

#define NS_OK   ((nsresult)0x00000000L)

Definition at line 67 of file mshtml_private.h.

◆ NS_SUCCEEDED

#define NS_SUCCEEDED (   res)    (!NS_FAILED(res))

Definition at line 84 of file mshtml_private.h.

◆ NSAPI

#define NSAPI   WINAPI

Definition at line 86 of file mshtml_private.h.

◆ TID_LIST

#define TID_LIST

Definition at line 95 of file mshtml_private.h.

◆ UPDATE_TITLE

#define UPDATE_TITLE   0x0002

Definition at line 1054 of file mshtml_private.h.

◆ UPDATE_UI

#define UPDATE_UI   0x0001

Definition at line 1053 of file mshtml_private.h.

◆ WIN32_NO_STATUS

#define WIN32_NO_STATUS

Definition at line 29 of file mshtml_private.h.

◆ XDIID

#define XDIID (   iface)    iface ## _tid,

Definition at line 239 of file mshtml_private.h.

◆ XIID

#define XIID (   iface)    iface ## _tid,

Definition at line 238 of file mshtml_private.h.

Typedef Documentation

◆ BSCallback

Definition at line 92 of file mshtml_private.h.

◆ ConnectionPoint

Definition at line 91 of file mshtml_private.h.

◆ ConnectionPointContainer

◆ cp_static_data_t

◆ DispatchEx

Definition at line 253 of file mshtml_private.h.

◆ dispex_data_t

Definition at line 246 of file mshtml_private.h.

◆ dispex_dynamic_data_t

◆ event_target_t

Definition at line 93 of file mshtml_private.h.

◆ HTMLAttributeCollection

◆ HTMLDocumentNode

Definition at line 331 of file mshtml_private.h.

◆ HTMLDocumentObj

Definition at line 332 of file mshtml_private.h.

◆ HTMLDOMNode

Definition at line 90 of file mshtml_private.h.

◆ HTMLFrameBase

Definition at line 333 of file mshtml_private.h.

◆ HTMLInnerWindow

Definition at line 329 of file mshtml_private.h.

◆ HTMLOuterWindow

Definition at line 330 of file mshtml_private.h.

◆ HTMLWindow

Definition at line 328 of file mshtml_private.h.

◆ nsChannelBSC

Definition at line 413 of file mshtml_private.h.

◆ NSContainer

Definition at line 334 of file mshtml_private.h.

◆ nsCycleCollectionTraversalCallback

◆ nsDocumentEventListener

◆ nsWeakReference

Definition at line 648 of file mshtml_private.h.

◆ ScriptHost

Definition at line 342 of file mshtml_private.h.

◆ task_proc_t

typedef void(* task_proc_t) (task_t *)

Definition at line 1076 of file mshtml_private.h.

◆ task_t

typedef struct task_t task_t

Definition at line 1075 of file mshtml_private.h.

Enumeration Type Documentation

◆ dispex_prop_type_t

Enumerator
DISPEXPROP_CUSTOM 
DISPEXPROP_DYNAMIC 
DISPEXPROP_BUILTIN 

Definition at line 320 of file mshtml_private.h.

◆ global_prop_type_t

Enumerator
GLOBAL_SCRIPTVAR 
GLOBAL_ELEMENTVAR 
GLOBAL_DISPEXVAR 
GLOBAL_FRAMEVAR 

Definition at line 344 of file mshtml_private.h.

◆ SCRIPTMODE

Enumerator
SCRIPTMODE_GECKO 
SCRIPTMODE_ACTIVESCRIPT 

Definition at line 337 of file mshtml_private.h.

◆ tid_t

Enumerator
LAST_tid 
LAST_tid 
Database_tid 
Installer_tid 
Record_tid 
Session_tid 
StringList_tid 
SummaryInfo_tid 
View_tid 
LAST_tid 
NULL_tid 
IXMLDOMAttribute_tid 
IXMLDOMCDATASection_tid 
IXMLDOMComment_tid 
IXMLDOMDocument_tid 
IXMLDOMDocument2_tid 
IXMLDOMDocument3_tid 
IXMLDOMDocumentFragment_tid 
IXMLDOMDocumentType_tid 
IXMLDOMElement_tid 
IXMLDOMEntityReference_tid 
IXMLDOMImplementation_tid 
IXMLDOMNamedNodeMap_tid 
IXMLDOMNode_tid 
IXMLDOMNodeList_tid 
IXMLDOMParseError2_tid 
IXMLDOMProcessingInstruction_tid 
IXMLDOMSchemaCollection_tid 
IXMLDOMSchemaCollection2_tid 
IXMLDOMSelection_tid 
IXMLDOMText_tid 
IXMLElement_tid 
IXMLDocument_tid 
IXMLHTTPRequest_tid 
IXSLProcessor_tid 
IXSLTemplate_tid 
IVBSAXAttributes_tid 
IVBSAXContentHandler_tid 
IVBSAXDeclHandler_tid 
IVBSAXDTDHandler_tid 
IVBSAXEntityResolver_tid 
IVBSAXErrorHandler_tid 
IVBSAXLexicalHandler_tid 
IVBSAXLocator_tid 
IVBSAXXMLFilter_tid 
IVBSAXXMLReader_tid 
IMXAttributes_tid 
IMXReaderControl_tid 
IMXWriter_tid 
IVBMXNamespaceManager_tid 
IServerXMLHTTPRequest_tid 
LAST_tid 
NULL_tid 
ITextDocument_tid 
ITextRange_tid 
ITextSelection_tid 
ITextFont_tid 
ITextPara_tid 
LAST_tid 
NULL_tid 
IDictionary_tid 
IDrive_tid 
IDriveCollection_tid 
IFile_tid 
IFileCollection_tid 
IFileSystem3_tid 
IFolder_tid 
IFolderCollection_tid 
ITextStream_tid 
LAST_tid 
LAST_tid 
NULL_tid 
IWshCollection_tid 
IWshEnvironment_tid 
IWshExec_tid 
IWshShell3_tid 
IWshShortcut_tid 
LAST_tid 

Definition at line 237 of file mshtml_private.h.

237  {
238 #define XIID(iface) iface ## _tid,
239 #define XDIID(iface) iface ## _tid,
240 TID_LIST
241 #undef XIID
242 #undef XDIID
243  LAST_tid
244 } tid_t;
#define TID_LIST
tid_t

◆ USERMODE

Enumerator
UNKNOWN_USERMODE 
BROWSEMODE 
EDITMODE 

Definition at line 497 of file mshtml_private.h.

Function Documentation

◆ __WINE_ALLOC_SIZE() [1/2]

static void* __WINE_ALLOC_SIZE ( )
inlinestatic

Definition at line 1127 of file mshtml_private.h.

1128 {
1129  return HeapAlloc(GetProcessHeap(), 0, len);
1130 }
#define GetProcessHeap()
Definition: compat.h:395
PVOID WINAPI HeapAlloc(HANDLE, DWORD, SIZE_T)
GLenum GLsizei len
Definition: glext.h:6722

◆ __WINE_ALLOC_SIZE() [2/2]

static void* __WINE_ALLOC_SIZE ( )
inlinestatic

◆ abort_window_bindings()

void abort_window_bindings ( HTMLInnerWindow )

Definition at line 1775 of file navigate.c.

1776 {
1777  BSCallback *iter;
1778 
1779  remove_target_tasks(window->task_magic);
1780 
1781  while(!list_empty(&window->bindings)) {
1782  iter = LIST_ENTRY(window->bindings.next, BSCallback, entry);
1783 
1784  TRACE("Aborting %p\n", iter);
1785 
1786  IBindStatusCallback_AddRef(&iter->IBindStatusCallback_iface);
1787 
1788  if(iter->binding)
1789  IBinding_Abort(iter->binding);
1790  else
1791  iter->vtbl->stop_binding(iter, E_ABORT);
1792 
1793  iter->window = NULL;
1794  list_remove(&iter->entry);
1795  list_init(&iter->entry);
1796 
1797  IBindStatusCallback_Release(&iter->IBindStatusCallback_iface);
1798  }
1799 
1800  if(window->bscallback) {
1801  IBindStatusCallback_Release(&window->bscallback->bsc.IBindStatusCallback_iface);
1802  window->bscallback = NULL;
1803  }
1804 
1805  if(window->mon) {
1806  IMoniker_Release(window->mon);
1807  window->mon = NULL;
1808  }
1809 }
IBinding * binding
Definition: binding.h:88
HTMLInnerWindow * window
Definition: binding.h:90
struct list entry
Definition: binding.h:92
smooth NULL
Definition: ftsmooth.c:416
void remove_target_tasks(LONG) DECLSPEC_HIDDEN
Definition: task.c:107
__WINE_SERVER_LIST_INLINE void list_remove(struct list *elem)
Definition: list.h:108
const BSCallbackVtbl * vtbl
Definition: binding.h:77
#define TRACE(s)
Definition: solgame.cpp:4
uint32_t entry
Definition: isohybrid.c:63
static IHTMLWindow2 * window
Definition: events.c:77
#define E_ABORT
Definition: winerror.h:2366
HRESULT(* stop_binding)(BSCallback *, HRESULT)
Definition: binding.h:114
__WINE_SERVER_LIST_INLINE int list_empty(const struct list *list)
Definition: list.h:143
IBindStatusCallback IBindStatusCallback_iface
Definition: binding.h:72
__WINE_SERVER_LIST_INLINE void list_init(struct list *list)
Definition: list.h:149
#define LIST_ENTRY(type)
Definition: queue.h:175

Referenced by create_pending_window(), detach_inner_window(), release_outer_window(), and set_moniker().

◆ async_start_doc_binding()

HRESULT async_start_doc_binding ( HTMLOuterWindow ,
HTMLInnerWindow  
)

Definition at line 1758 of file navigate.c.

1759 {
1761 
1762  TRACE("%p\n", pending_window);
1763 
1764  task = heap_alloc(sizeof(start_doc_binding_task_t));
1765  if(!task)
1766  return E_OUTOFMEMORY;
1767 
1768  task->window = window;
1769  task->pending_window = pending_window;
1770  IHTMLWindow2_AddRef(&pending_window->base.IHTMLWindow2_iface);
1771 
1772  return push_task(&task->header, start_doc_binding_proc, start_doc_binding_task_destr, pending_window->task_magic);
1773 }
HTMLInnerWindow * pending_window
Definition: navigate.c:1739
static void start_doc_binding_proc(task_t *_task)
Definition: navigate.c:1742
static void * heap_alloc(size_t len)
Definition: appwiz.h:65
#define E_OUTOFMEMORY
Definition: ddrawi.h:100
#define TRACE(s)
Definition: solgame.cpp:4
static IHTMLWindow2 * window
Definition: events.c:77
HTMLOuterWindow * window
Definition: navigate.c:1738
HRESULT push_task(task_t *, task_proc_t, task_proc_t, LONG) DECLSPEC_HIDDEN
Definition: task.c:39
static void start_doc_binding_task_destr(task_t *_task)
Definition: navigate.c:1750

Referenced by async_open().

◆ call_docview_84()

void call_docview_84 ( HTMLDocumentObj )

Definition at line 173 of file oleobj.c.

174 {
175  IOleCommandTarget *olecmd;
176  VARIANT var;
177  HRESULT hres;
178 
179  if(!doc->client)
180  return;
181 
182  hres = IOleClientSite_QueryInterface(doc->client, &IID_IOleCommandTarget, (void**)&olecmd);
183  if(FAILED(hres))
184  return;
185 
186  VariantInit(&var);
187  hres = IOleCommandTarget_Exec(olecmd, &CGID_ShellDocView, 84, 0, NULL, &var);
188  IOleCommandTarget_Release(olecmd);
189  if(SUCCEEDED(hres) && V_VT(&var) != VT_NULL)
190  FIXME("handle result\n");
191 }
void WINAPI VariantInit(VARIANTARG *pVarg)
Definition: variant.c:571
#define FIXME(fmt,...)
Definition: debug.h:110
smooth NULL
Definition: ftsmooth.c:416
HRESULT hres
Definition: protocol.c:465
LONG HRESULT
Definition: typedefs.h:77
#define V_VT(A)
Definition: oleauto.h:211
#define SUCCEEDED(hr)
Definition: intsafe.h:57

Referenced by OleObject_SetClientSite(), PersistMoniker_Load(), and super_navigate().

◆ call_property_onchanged()

void call_property_onchanged ( ConnectionPointContainer ,
DISPID   
)

Definition at line 342 of file conpoint.c.

343 {
345  DWORD i;
346 
348  if(!cp)
349  return;
350 
351  for(i=0; i<cp->sinks_size; i++) {
352  if(cp->sinks[i].propnotif)
353  IPropertyNotifySink_OnChanged(cp->sinks[i].propnotif, dispid);
354  }
355 }
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
Definition: glfuncs.h:248
static ConnectionPoint * get_cp(ConnectionPointContainer *container, REFIID riid, BOOL do_create)
Definition: conpoint.c:312
unsigned long DWORD
Definition: ntddk_ex.h:95
const GUID IID_IPropertyNotifySink
POINT cp
Definition: magnifier.c:59

Referenced by HTMLDocument_put_designMode(), notif_readystate(), and parse_complete().

◆ call_set_active_object()

HRESULT call_set_active_object ( IOleInPlaceUIWindow ,
IOleInPlaceActiveObject  
)

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 }
int WINAPI LoadStringW(_In_opt_ HINSTANCE hInstance, _In_ UINT uID, _Out_writes_to_(cchBufferMax, return+1) LPWSTR lpBuffer, _In_ int cchBufferMax)
smooth NULL
Definition: ftsmooth.c:416
__wchar_t WCHAR
Definition: xmlstorage.h:180
#define IDS_HTMLDOCUMENT
Definition: resource.h:21
static IHTMLWindow2 * window
Definition: events.c:77
HINSTANCE hInst
Definition: dxdiag.c:13

Referenced by OleDocumentView_UIActivate(), and setup_edit_mode().

◆ clear_task_timer()

HRESULT clear_task_timer ( HTMLInnerWindow ,
BOOL  ,
DWORD   
)

Definition at line 201 of file task.c.

202 {
204  task_timer_t *iter;
205 
206  if(!thread_data)
207  return S_OK;
208 
209  LIST_FOR_EACH_ENTRY(iter, &thread_data->timer_list, task_timer_t, entry) {
210  if(iter->id == id && iter->window == window && !iter->interval == !interval) {
211  release_task_timer(thread_data->thread_hwnd, iter);
212  return S_OK;
213  }
214  }
215 
216  WARN("timet not found\n");
217  return S_OK;
218 }
thread_data_t * get_thread_data(BOOL create)
Definition: task.c:352
static void release_task_timer(HWND thread_hwnd, task_timer_t *timer)
Definition: task.c:79
#define WARN(fmt,...)
Definition: debug.h:111
DWORD id
Definition: task.c:26
#define LIST_FOR_EACH_ENTRY(elem, list, type, field)
Definition: list.h:198
HTMLInnerWindow * window
Definition: task.c:25
DWORD interval
Definition: task.c:28
uint32_t entry
Definition: isohybrid.c:63
static IHTMLWindow2 * window
Definition: events.c:77
#define S_OK
Definition: intsafe.h:59

Referenced by HTMLWindow2_clearInterval(), and HTMLWindow2_clearTimeout().

◆ close_gecko()

void close_gecko ( void  )

Definition at line 1076 of file nsembed.c.

1077 {
1078  TRACE("()\n");
1079 
1080  release_nsio();
1082 
1083  if(profile_directory) {
1084  nsIFile_Release(profile_directory);
1086  }
1087 
1088  if(plugin_directory) {
1089  nsIFile_Release(plugin_directory);
1091  }
1092 
1093  if(pCompMgr)
1094  nsIComponentManager_Release(pCompMgr);
1095 
1096  if(pServMgr)
1097  nsIServiceManager_Release(pServMgr);
1098 
1099  if(cat_mgr)
1100  nsICategoryManager_Release(cat_mgr);
1101 
1102  /* Gecko doesn't really support being unloaded */
1103  /* if (hXPCOM) FreeLibrary(hXPCOM); */
1104 
1106 }
static nsICategoryManager * cat_mgr
Definition: nsembed.c:63
static nsIServiceManager * pServMgr
Definition: nsembed.c:61
smooth NULL
Definition: ftsmooth.c:416
void release_nsio(void) DECLSPEC_HIDDEN
Definition: nsio.c:4085
static nsIComponentManager * pCompMgr
Definition: nsembed.c:62
#define TRACE(s)
Definition: solgame.cpp:4
void WINAPI DeleteCriticalSection(PCRITICAL_SECTION)
static nsIFile * profile_directory
Definition: nsembed.c:64
static nsIFile * plugin_directory
Definition: nsembed.c:64
void init_mutation(nsIComponentManager *) DECLSPEC_HIDDEN
Definition: mutation.c:774
static CRITICAL_SECTION cs_load_gecko
Definition: nsembed.c:733

Referenced by process_detach().

◆ ConnectionPointContainer_Destroy()

void ConnectionPointContainer_Destroy ( ConnectionPointContainer )

Definition at line 442 of file events.c.

443 {
447 }
static void ConnectionPoint_Destroy(ConnectionPoint *This)
Definition: events.c:418

Referenced by destroy_htmldoc(), DocHost_Release(), and HTMLElement_destructor().

◆ ConnectionPointContainer_Init()

void ConnectionPointContainer_Init ( ConnectionPointContainer ,
IUnknown ,
const cpc_entry_t  
)

Definition at line 421 of file conpoint.c.

422 {
423  This->IConnectionPointContainer_iface.lpVtbl = &ConnectionPointContainerVtbl;
424  This->cp_entries = cp_entries;
425  This->cps = NULL;
426  This->outer = outer;
427  This->forward_container = NULL;
428 }
smooth NULL
Definition: ftsmooth.c:416
static const IConnectionPointContainerVtbl ConnectionPointContainerVtbl
Definition: conpoint.c:413

◆ cp_from_charset_string()

UINT cp_from_charset_string ( BSTR  )

Definition at line 38 of file main.c.

39 {
40  MIMECSETINFO info;
41  HRESULT hres;
42 
43  if(!mlang) {
44  IMultiLanguage2 *new_mlang;
45 
46  hres = CoCreateInstance(&CLSID_CMultiLanguage, NULL, CLSCTX_INPROC_SERVER,
47  &IID_IMultiLanguage2, (void**)&new_mlang);
48  if(FAILED(hres)) {
49  ERR("Could not create CMultiLanguage instance\n");
50  return CP_UTF8;
51  }
52 
53  if(InterlockedCompareExchangePointer((void**)&mlang, new_mlang, NULL))
54  IMultiLanguage2_Release(new_mlang);
55  }
56 
57  hres = IMultiLanguage2_GetCharsetInfo(mlang, charset, &info);
58  if(FAILED(hres)) {
59  FIXME("GetCharsetInfo failed: %08x\n", hres);
60  return CP_UTF8;
61  }
62 
63  return info.uiInternetEncoding;
64 }
CFF_Charset charset
Definition: cffcmap.c:138
struct _test_info info[]
Definition: SetCursorPos.c:19
#define CP_UTF8
Definition: nls.h:20
#define FIXME(fmt,...)
Definition: debug.h:110
#define InterlockedCompareExchangePointer
Definition: interlocked.h:129
smooth NULL
Definition: ftsmooth.c:416
HRESULT hres
Definition: protocol.c:465
LONG HRESULT
Definition: typedefs.h:77
static IMultiLanguage2 * mlang
Definition: main.c:36
HRESULT WINAPI DECLSPEC_HOTPATCH CoCreateInstance(REFCLSID rclsid, LPUNKNOWN pUnkOuter, DWORD dwClsContext, REFIID iid, LPVOID *ppv)
Definition: compobj.c:3234
#define ERR(fmt,...)
Definition: debug.h:109

Referenced by get_document_charset(), and nsIOService_NewURI().

◆ create_all_collection()

IHTMLElementCollection* create_all_collection ( HTMLDOMNode ,
BOOL   
)

Definition at line 654 of file htmlelemcol.c.

655 {
656  elem_vector_t buf = {NULL, 0, 8};
657 
658  buf.buf = heap_alloc(buf.size*sizeof(HTMLElement*));
659 
660  if(include_root) {
661  node_addref(node);
663  }
664  create_all_list(node->doc, node, &buf);
666 
667  return HTMLElementCollection_Create(buf.buf, buf.len);
668 }
GLenum GLuint GLenum GLsizei const GLchar * buf
Definition: glext.h:7751
static void create_all_list(HTMLDocumentNode *doc, HTMLDOMNode *elem, elem_vector_t *buf)
Definition: htmlelemcol.c:614
static void node_addref(HTMLDOMNode *node)
static void * heap_alloc(size_t len)
Definition: appwiz.h:65
static void elem_vector_normalize(elem_vector_t *buf)
Definition: htmlelemcol.c:64
smooth NULL
Definition: ftsmooth.c:416
static HTMLElement * elem_from_HTMLDOMNode(HTMLDOMNode *iface)
Definition: htmlelemcol.c:47
static void elem_vector_add(elem_vector_t *buf, HTMLElement *elem)
Definition: htmlelemcol.c:54
static IHTMLElementCollection * HTMLElementCollection_Create(HTMLElement **elems, DWORD len)
Definition: htmlelemcol.c:809
Definition: dlist.c:348

Referenced by HTMLDocument_get_all(), and HTMLElement_get_all().

◆ create_collection_from_htmlcol()

IHTMLElementCollection* create_collection_from_htmlcol ( HTMLDocumentNode ,
nsIDOMHTMLCollection  
)

Definition at line 705 of file htmlelemcol.c.

706 {
707  UINT32 length = 0, i;
709  HTMLDOMNode *node;
710  HRESULT hres = S_OK;
711 
712  nsIDOMHTMLCollection_GetLength(nscol, &length);
713 
714  buf.len = buf.size = length;
715  if(buf.len) {
716  nsIDOMNode *nsnode;
717 
718  buf.buf = heap_alloc(buf.size*sizeof(HTMLElement*));
719 
720  for(i=0; i<length; i++) {
721  nsIDOMHTMLCollection_Item(nscol, i, &nsnode);
722  hres = get_node(doc, nsnode, TRUE, &node);
723  nsIDOMNode_Release(nsnode);
724  if(FAILED(hres))
725  break;
727  }
728  }else {
729  buf.buf = NULL;
730  }
731 
732  if(FAILED(hres)) {
733  heap_free(buf.buf);
734  return NULL;
735  }
736 
737  return HTMLElementCollection_Create(buf.buf, buf.len);
738 }
#define TRUE
Definition: types.h:120
GLenum GLuint GLenum GLsizei const GLchar * buf
Definition: glext.h:7751
static void * heap_alloc(size_t len)
Definition: appwiz.h:65
struct node node
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
Definition: glfuncs.h:248
unsigned int UINT32
smooth NULL
Definition: ftsmooth.c:416
HRESULT hres
Definition: protocol.c:465
LONG HRESULT
Definition: typedefs.h:77
GLenum GLuint GLenum GLsizei length
Definition: glext.h:5579
static HTMLElement * elem_from_HTMLDOMNode(HTMLDOMNode *iface)
Definition: htmlelemcol.c:47
#define S_OK
Definition: intsafe.h:59
HRESULT get_node(HTMLDocumentNode *This, nsIDOMNode *nsnode, BOOL create, HTMLDOMNode **ret)
Definition: htmlnode.c:1339
static IHTMLElementCollection * HTMLElementCollection_Create(HTMLElement **elems, DWORD len)
Definition: htmlelemcol.c:809
static BOOL heap_free(void *mem)
Definition: appwiz.h:75
Definition: dlist.c:348

Referenced by HTMLDocument_get_anchors(), HTMLDocument_get_applets(), HTMLDocument_get_forms(), HTMLDocument_get_images(), HTMLDocument_get_links(), HTMLDocument_get_scripts(), HTMLElement2_getElementsByTagName(), HTMLTable_get_rows(), HTMLTable_get_tBodies(), and HTMLTableRow_get_cells().

◆ create_collection_from_nodelist()

IHTMLElementCollection* create_collection_from_nodelist ( HTMLDocumentNode ,
nsIDOMNodeList  
)

Definition at line 670 of file htmlelemcol.c.

671 {
672  UINT32 length = 0, i;
673  HTMLDOMNode *node;
675  HRESULT hres;
676 
677  nsIDOMNodeList_GetLength(nslist, &length);
678 
679  buf.len = 0;
680  buf.size = length;
681  if(length) {
682  nsIDOMNode *nsnode;
683 
684  buf.buf = heap_alloc(buf.size*sizeof(HTMLElement*));
685 
686  for(i=0; i<length; i++) {
687  nsIDOMNodeList_Item(nslist, i, &nsnode);
688  if(is_elem_node(nsnode)) {
689  hres = get_node(doc, nsnode, TRUE, &node);
690  if(FAILED(hres))
691  continue;
692  buf.buf[buf.len++] = elem_from_HTMLDOMNode(node);
693  }
694  nsIDOMNode_Release(nsnode);
695  }
696 
698  }else {
699  buf.buf = NULL;
700  }
701 
702  return HTMLElementCollection_Create(buf.buf, buf.len);
703 }
#define TRUE
Definition: types.h:120
GLenum GLuint GLenum GLsizei const GLchar * buf
Definition: glext.h:7751
static void * heap_alloc(size_t len)
Definition: appwiz.h:65
struct node node
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
Definition: glfuncs.h:248
unsigned int UINT32
static void elem_vector_normalize(elem_vector_t *buf)
Definition: htmlelemcol.c:64
smooth NULL
Definition: ftsmooth.c:416
HRESULT hres
Definition: protocol.c:465
LONG HRESULT
Definition: typedefs.h:77
GLenum GLuint GLenum GLsizei length
Definition: glext.h:5579
static HTMLElement * elem_from_HTMLDOMNode(HTMLDOMNode *iface)
Definition: htmlelemcol.c:47
static BOOL is_elem_node(nsIDOMNode *node)
Definition: htmlelemcol.c:76
HRESULT get_node(HTMLDocumentNode *This, nsIDOMNode *nsnode, BOOL create, HTMLDOMNode **ret)
Definition: htmlnode.c:1339
static IHTMLElementCollection * HTMLElementCollection_Create(HTMLElement **elems, DWORD len)
Definition: htmlelemcol.c:809
Definition: dlist.c:348

Referenced by HTMLDocument3_getElementsByName(), HTMLDocument3_getElementsByTagName(), and HTMLElement_get_children().

◆ create_doc_from_nsdoc()

HRESULT create_doc_from_nsdoc ( nsIDOMHTMLDocument ,
HTMLDocumentObj ,
HTMLInnerWindow ,
HTMLDocumentNode **   
)

Definition at line 4620 of file htmldoc.c.

4621 {
4622  HTMLDocumentNode *doc;
4623 
4624  doc = alloc_doc_node(doc_obj, window);
4625  if(!doc)
4626  return E_OUTOFMEMORY;
4627 
4628  if(!doc_obj->basedoc.window || window->base.outer_window == doc_obj->basedoc.window)
4629  doc->basedoc.cp_container.forward_container = &doc_obj->basedoc.cp_container;
4630 
4631  HTMLDOMNode_Init(doc, &doc->node, (nsIDOMNode*)nsdoc);
4632 
4633  nsIDOMHTMLDocument_AddRef(nsdoc);
4634  doc->nsdoc = nsdoc;
4635 
4637  doc_init_events(doc);
4638 
4640  doc->node.cp_container = &doc->basedoc.cp_container;
4641 
4642  *ret = doc;
4643  return S_OK;
4644 }
nsIDOMHTMLDocument * nsdoc
void HTMLDOMNode_Init(HTMLDocumentNode *doc, HTMLDOMNode *node, nsIDOMNode *nsnode)
Definition: htmlnode.c:1196
HTMLDocument basedoc
ConnectionPointContainer * cp_container
#define E_OUTOFMEMORY
Definition: ddrawi.h:100
static const NodeImplVtbl HTMLDocumentNodeImplVtbl
Definition: htmldoc.c:4473
void init_document_mutation(HTMLDocumentNode *) DECLSPEC_HIDDEN
Definition: mutation.c:726
ConnectionPointContainer cp_container
int ret
HRESULT doc_init_events(HTMLDocumentNode *doc)
Definition: htmlevent.c:1591
HTMLDOMNode node
static IHTMLWindow2 * window
Definition: events.c:77
struct ConnectionPointContainer * forward_container
#define S_OK
Definition: intsafe.h:59
const NodeImplVtbl * vtbl
static HTMLDocumentNode * alloc_doc_node(HTMLDocumentObj *doc_obj, HTMLInnerWindow *window)
Definition: htmldoc.c:4593

Referenced by update_window_doc().

◆ create_dom_implementation()

HRESULT create_dom_implementation ( IHTMLDOMImplementation **  )

Definition at line 168 of file omnavigator.c.

169 {
170  HTMLDOMImplementation *dom_implementation;
171 
172  dom_implementation = heap_alloc_zero(sizeof(*dom_implementation));
173  if(!dom_implementation)
174  return E_OUTOFMEMORY;
175 
176  dom_implementation->IHTMLDOMImplementation_iface.lpVtbl = &HTMLDOMImplementationVtbl;
177  dom_implementation->ref = 1;
178 
179  init_dispex(&dom_implementation->dispex, (IUnknown*)&dom_implementation->IHTMLDOMImplementation_iface,
181 
182  *ret = &dom_implementation->IHTMLDOMImplementation_iface;
183  return S_OK;
184 }
IHTMLDOMImplementation IHTMLDOMImplementation_iface
Definition: omnavigator.c:46
#define E_OUTOFMEMORY
Definition: ddrawi.h:100
static const IHTMLDOMImplementationVtbl HTMLDOMImplementationVtbl
Definition: omnavigator.c:146
int ret
#define S_OK
Definition: intsafe.h:59
HRESULT init_dispex(jsdisp_t *dispex, script_ctx_t *ctx, const builtin_info_t *builtin_info, jsdisp_t *prototype)
Definition: dispex.c:940
static dispex_static_data_t HTMLDOMImplementation_dispex
Definition: omnavigator.c:161

Referenced by HTMLDocument5_get_implementation().

◆ create_element()

HRESULT create_element ( HTMLDocumentNode ,
const WCHAR ,
HTMLElement **   
)

Definition at line 275 of file htmlelem.c.

276 {
277  nsIDOMHTMLElement *nselem;
278  HRESULT hres;
279 
280  /* Use owner doc if called on document fragment */
281  if(!doc->nsdoc)
282  doc = doc->node.doc;
283 
284  hres = create_nselem(doc, tag, &nselem);
285  if(FAILED(hres))
286  return hres;
287 
288  hres = HTMLElement_Create(doc, (nsIDOMNode*)nselem, TRUE, ret);
289  nsIDOMHTMLElement_Release(nselem);
290  return hres;
291 }
#define TRUE
Definition: types.h:120
HRESULT create_nselem(HTMLDocumentNode *doc, const WCHAR *tag, nsIDOMHTMLElement **ret)
Definition: htmlelem.c:246
Definition: ecma_167.h:138
HRESULT hres
Definition: protocol.c:465
HRESULT HTMLElement_Create(HTMLDocumentNode *doc, nsIDOMNode *nsnode, BOOL use_generic, HTMLElement **ret)
Definition: htmlelem.c:4032
LONG HRESULT
Definition: typedefs.h:77
int ret

Referenced by HTMLDocument_createElement(), and HTMLDocument_createStyleSheet().

◆ create_history()

HRESULT create_history ( HTMLInnerWindow ,
OmHistory **   
)

Definition at line 334 of file omnavigator.c.

335 {
336  OmHistory *history;
337 
338  history = heap_alloc_zero(sizeof(*history));
339  if(!history)
340  return E_OUTOFMEMORY;
341 
342  init_dispex(&history->dispex, (IUnknown*)&history->IOmHistory_iface, &OmHistory_dispex);
343  history->IOmHistory_iface.lpVtbl = &OmHistoryVtbl;
344  history->ref = 1;
345 
346  history->window = window;
347 
348  *ret = history;
349  return S_OK;
350 }
IOmHistory IOmHistory_iface
#define E_OUTOFMEMORY
Definition: ddrawi.h:100
static const IOmHistoryVtbl OmHistoryVtbl
Definition: omnavigator.c:308
HTMLInnerWindow * window
int ret
static IHTMLWindow2 * window
Definition: events.c:77
#define S_OK
Definition: intsafe.h:59
HRESULT init_dispex(jsdisp_t *dispex, script_ctx_t *ctx, const builtin_info_t *builtin_info, jsdisp_t *prototype)
Definition: dispex.c:940
static dispex_static_data_t OmHistory_dispex
Definition: omnavigator.c:326
DispatchEx dispex

Referenced by HTMLWindow2_get_history().

◆ create_nscommand_params()

nsICommandParams* create_nscommand_params ( void  )

Definition at line 865 of file nsembed.c.

866 {
868  nsresult nsres;
869 
870  if(!pCompMgr)
871  return NULL;
872 
873  nsres = nsIComponentManager_CreateInstanceByContractID(pCompMgr,
874  NS_COMMANDPARAMS_CONTRACTID, NULL, &IID_nsICommandParams,
875  (void**)&ret);
876  if(NS_FAILED(nsres))
877  ERR("Could not get nsICommandParams\n");
878 
879  return ret;
880 }
smooth NULL
Definition: ftsmooth.c:416
static nsIComponentManager * pCompMgr
Definition: nsembed.c:62
#define NS_FAILED(res)
int ret
#define ERR(fmt,...)
Definition: debug.h:109
#define NS_COMMANDPARAMS_CONTRACTID
Definition: nsembed.c:28
HRESULT nsresult
Definition: nsiface.idl:39

Referenced by exec_fontname(), exec_forecolor(), query_ns_edit_status(), set_ns_align(), and set_ns_fontname().

◆ create_nscontainer()

HRESULT create_nscontainer ( HTMLDocumentObj ,
NSContainer **   
)

Definition at line 2076 of file nsembed.c.

2077 {
2078  NSContainer *ret;
2079  HRESULT hres;
2080 
2081  if(!load_gecko())
2083 
2084  ret = heap_alloc_zero(sizeof(NSContainer));
2085  if(!ret)
2086  return E_OUTOFMEMORY;
2087 
2088  ret->nsIWebBrowserChrome_iface.lpVtbl = &nsWebBrowserChromeVtbl;
2089  ret->nsIContextMenuListener_iface.lpVtbl = &nsContextMenuListenerVtbl;
2090  ret->nsIURIContentListener_iface.lpVtbl = &nsURIContentListenerVtbl;
2091  ret->nsIEmbeddingSiteWindow_iface.lpVtbl = &nsEmbeddingSiteWindowVtbl;
2092  ret->nsITooltipListener_iface.lpVtbl = &nsTooltipListenerVtbl;
2093  ret->nsIInterfaceRequestor_iface.lpVtbl = &nsInterfaceRequestorVtbl;
2094  ret->nsISupportsWeakReference_iface.lpVtbl = &nsSupportsWeakReferenceVtbl;
2095 
2096  ret->doc = doc;
2097  ret->ref = 1;
2098 
2100  if(SUCCEEDED(hres))
2101  *_ret = ret;
2102  else
2103  nsIWebBrowserChrome_Release(&ret->nsIWebBrowserChrome_iface);
2104  return hres;
2105 }
static HRESULT init_nscontainer(NSContainer *nscontainer)
Definition: nsembed.c:1968
#define CLASS_E_CLASSNOTAVAILABLE
Definition: winerror.h:2663
#define E_OUTOFMEMORY
Definition: ddrawi.h:100
static const nsIInterfaceRequestorVtbl nsInterfaceRequestorVtbl
Definition: nsembed.c:1908
static const nsIContextMenuListenerVtbl nsContextMenuListenerVtbl
Definition: nsembed.c:1509
HRESULT hres
Definition: protocol.c:465
LONG HRESULT
Definition: typedefs.h:77
int ret
static const nsIURIContentListenerVtbl nsURIContentListenerVtbl
Definition: nsembed.c:1673
static const nsIEmbeddingSiteWindowVtbl nsEmbeddingSiteWindowVtbl
Definition: nsembed.c:1804
static const nsIWebBrowserChromeVtbl nsWebBrowserChromeVtbl
Definition: nsembed.c:1399
static const nsISupportsWeakReferenceVtbl nsSupportsWeakReferenceVtbl
Definition: nsembed.c:1961
#define _ret
BOOL load_gecko(void)
Definition: nsembed.c:742
static const nsITooltipListenerVtbl nsTooltipListenerVtbl
Definition: nsembed.c:1863
#define SUCCEEDED(hr)
Definition: intsafe.h:57

Referenced by HTMLDocument_Create().

◆ create_nselem()

HRESULT create_nselem ( HTMLDocumentNode ,
const WCHAR ,
nsIDOMHTMLElement **   
)

Definition at line 246 of file htmlelem.c.

247 {
248  nsIDOMElement *nselem;
249  nsAString tag_str;
250  nsresult nsres;
251 
252  if(!doc->nsdoc) {
253  WARN("NULL nsdoc\n");
254  return E_UNEXPECTED;
255  }
256 
257  nsAString_InitDepend(&tag_str, tag);
258  nsres = nsIDOMHTMLDocument_CreateElement(doc->nsdoc, &tag_str, &nselem);
259  nsAString_Finish(&tag_str);
260  if(NS_FAILED(nsres)) {
261  ERR("CreateElement failed: %08x\n", nsres);
262  return E_FAIL;
263  }
264 
265  nsres = nsIDOMElement_QueryInterface(nselem, &IID_nsIDOMHTMLElement, (void**)ret);
266  nsIDOMElement_Release(nselem);
267  if(NS_FAILED(nsres)) {
268  ERR("Could not get nsIDOMHTMLElement iface: %08x\n", nsres);
269  return E_FAIL;
270  }
271 
272  return S_OK;
273 }
#define WARN(fmt,...)
Definition: debug.h:111
Definition: ecma_167.h:138
#define E_FAIL
Definition: ddrawi.h:102
#define NS_FAILED(res)
int ret
#define ERR(fmt,...)
Definition: debug.h:109
#define S_OK
Definition: intsafe.h:59
void nsAString_InitDepend(nsAString *, const PRUnichar *) DECLSPEC_HIDDEN
Definition: nsembed.c:826
#define E_UNEXPECTED
Definition: winerror.h:2456
void nsAString_Finish(nsAString *) DECLSPEC_HIDDEN
Definition: nsembed.c:836
HRESULT nsresult
Definition: nsiface.idl:39

Referenced by create_element(), exec_hyperlink(), exec_indent(), HTMLImageElementFactory_create(), HTMLOptionElementFactory_create(), and set_font_size().

◆ create_nsfile()

nsresult create_nsfile ( const PRUnichar ,
nsIFile **   
)

Definition at line 72 of file nsembed.c.

73 {
74  nsAString str;
75  nsresult nsres;
76 
78  nsres = NS_NewLocalFile(&str, FALSE, ret);
80 
81  if(NS_FAILED(nsres))
82  WARN("NS_NewLocalFile failed: %08x\n", nsres);
83  return nsres;
84 }
#define WARN(fmt,...)
Definition: debug.h:111
void nsAString_InitDepend(nsAString *str, const PRUnichar *data)
Definition: nsembed.c:826
const WCHAR * str
#define NS_FAILED(res)
int ret
Definition: services.c:325
void nsAString_Finish(nsAString *str)
Definition: nsembed.c:836
HRESULT nsresult
Definition: nsiface.idl:39

Referenced by create_profile_directory(), init_xpcom(), nsDirectoryServiceProvider2_GetFiles(), and nsFileURL_GetFile().

◆ create_nsvariant()

nsIWritableVariant* create_nsvariant ( void  )

Definition at line 882 of file nsembed.c.

883 {
885  nsresult nsres;
886 
887  if(!pCompMgr)
888  return NULL;
889 
890  nsres = nsIComponentManager_CreateInstanceByContractID(pCompMgr,
891  NS_VARIANT_CONTRACTID, NULL, &IID_nsIWritableVariant, (void**)&ret);
892  if(NS_FAILED(nsres))
893  ERR("Could not get nsIVariant\n");
894 
895  return ret;
896 }
smooth NULL
Definition: ftsmooth.c:416
static nsIComponentManager * pCompMgr
Definition: nsembed.c:62
#define NS_FAILED(res)
int ret
#define ERR(fmt,...)
Definition: debug.h:109
#define NS_VARIANT_CONTRACTID
Definition: nsembed.c:32
HRESULT nsresult
Definition: nsiface.idl:39

Referenced by HTMLSelectElement_add().

◆ create_nsxhr()

nsIXMLHttpRequest* create_nsxhr ( nsIDOMWindow nswindow)

Definition at line 2156 of file nsembed.c.

2157 {
2158  nsIScriptSecurityManager *secman;
2159  nsIPrincipal *nspri;
2160  nsIGlobalObject *nsglo;
2161  nsIXMLHttpRequest *nsxhr;
2162  nsresult nsres;
2163 
2164  nsres = nsIServiceManager_GetServiceByContractID(pServMgr,
2166  &IID_nsIScriptSecurityManager, (void**)&secman);
2167  if(NS_FAILED(nsres)) {
2168  ERR("Could not get sec manager service: %08x\n", nsres);
2169  return NULL;
2170  }
2171 
2172  nsres = nsIScriptSecurityManager_GetSystemPrincipal(secman, &nspri);
2173  nsIScriptSecurityManager_Release(secman);
2174  if(NS_FAILED(nsres)) {
2175  ERR("GetSystemPrincipal failed: %08x\n", nsres);
2176  return NULL;
2177  }
2178 
2179  nsres = nsIDOMWindow_QueryInterface(nswindow, &IID_nsIGlobalObject, (void **)&nsglo);
2180  assert(nsres == NS_OK);
2181 
2182  nsres = nsIComponentManager_CreateInstanceByContractID(pCompMgr,
2183  NS_XMLHTTPREQUEST_CONTRACTID, NULL, &IID_nsIXMLHttpRequest,
2184  (void**)&nsxhr);
2185  if(NS_FAILED(nsres)) {
2186  ERR("Could not get nsIXMLHttpRequest: %08x\n", nsres);
2187  nsISupports_Release(nspri);
2188  nsIGlobalObject_Release(nsglo);
2189  return NULL;
2190  }
2191 
2192  nsres = nsIXMLHttpRequest_Init(nsxhr, nspri, NULL, nsglo, NULL, NULL);
2193 
2194  nsISupports_Release(nspri);
2195  nsIGlobalObject_Release(nsglo);
2196  if(NS_FAILED(nsres)) {
2197  ERR("nsIXMLHttpRequest_Init failed: %08x\n", nsres);
2198  nsIXMLHttpRequest_Release(nsxhr);
2199  return NULL;
2200  }
2201  return nsxhr;
2202 }
#define NS_SCRIPTSECURITYMANAGER_CONTRACTID
Definition: nsembed.c:35
#define assert(x)
Definition: debug.h:53
#define NS_OK
static nsIServiceManager * pServMgr
Definition: nsembed.c:61
smooth NULL
Definition: ftsmooth.c:416
static nsIComponentManager * pCompMgr
Definition: nsembed.c:62
#define NS_FAILED(res)
#define ERR(fmt,...)
Definition: debug.h:109
#define NS_XMLHTTPREQUEST_CONTRACTID
Definition: nsembed.c:34
HRESULT nsresult
Definition: nsiface.idl:39

Referenced by HTMLXMLHttpRequestFactory_create().

◆ create_pending_window()

HRESULT create_pending_window ( HTMLOuterWindow ,
nsChannelBSC  
)

Definition at line 3009 of file htmlwindow.c.

3010 {
3011  HTMLInnerWindow *pending_window;
3012  HRESULT hres;
3013 
3014  hres = create_inner_window(outer_window, outer_window->mon /* FIXME */, &pending_window);
3015  if(FAILED(hres))
3016  return hres;
3017 
3018  if(channelbsc) {
3019  IBindStatusCallback_AddRef(&channelbsc->bsc.IBindStatusCallback_iface);
3020  pending_window->bscallback = channelbsc;
3021  }
3022 
3023  if(outer_window->pending_window) {
3024  abort_window_bindings(outer_window->pending_window);
3025  outer_window->pending_window->base.outer_window = NULL;
3026  IHTMLWindow2_Release(&outer_window->pending_window->base.IHTMLWindow2_iface);
3027  }
3028 
3029  outer_window->pending_window = pending_window;
3030  return S_OK;
3031 }
static HRESULT create_inner_window(HTMLOuterWindow *outer_window, IMoniker *mon, HTMLInnerWindow **ret)
Definition: htmlwindow.c:2917
smooth NULL
Definition: ftsmooth.c:416
HRESULT hres
Definition: protocol.c:465
LONG HRESULT
Definition: typedefs.h:77
void abort_window_bindings(HTMLInnerWindow *) DECLSPEC_HIDDEN
Definition: navigate.c:1775
#define S_OK
Definition: intsafe.h:59
nsChannelBSC * bscallback

Referenced by async_open(), HTMLOuterWindow_Create(), and set_moniker().

◆ create_storage()

HRESULT create_storage ( IHTMLStorage **  )

Definition at line 188 of file htmlstorage.c.

189 {
190  HTMLStorage *storage;
191 
192  storage = heap_alloc_zero(sizeof(*storage));
193  if(!storage)
194  return E_OUTOFMEMORY;
195 
196  storage->IHTMLStorage_iface.lpVtbl = &HTMLStorageVtbl;
197  storage->ref = 1;
199 
200  *p = &storage->IHTMLStorage_iface;
201  return S_OK;
202 }
DispatchEx dispex
Definition: htmlstorage.c:22
static const IHTMLStorageVtbl HTMLStorageVtbl
Definition: htmlstorage.c:160
#define E_OUTOFMEMORY
Definition: ddrawi.h:100
static dispex_static_data_t HTMLStorage_dispex
Definition: htmlstorage.c:181
#define S_OK
Definition: intsafe.h:59
HRESULT init_dispex(jsdisp_t *dispex, script_ctx_t *ctx, const builtin_info_t *builtin_info, jsdisp_t *prototype)
Definition: dispex.c:940
GLfloat GLfloat p
Definition: glext.h:8902
IHTMLStorage IHTMLStorage_iface
Definition: htmlstorage.c:23

Referenced by HTMLWindow6_get_sessionStorage().

◆ debugstr_mshtml_guid()

const char* debugstr_mshtml_guid ( const GUID )

Definition at line 535 of file main.c.

536 {
537 #define X(x) if(IsEqualGUID(iid, &x)) return #x
538  X(DIID_HTMLDocumentEvents);
539  X(DIID_HTMLDocumentEvents2);
540  X(DIID_HTMLTableEvents);
541  X(DIID_HTMLTextContainerEvents);
542  X(IID_HTMLPluginContainer);
545  X(IID_ICustomDoc);
546  X(IID_IDispatch);
547  X(IID_IDispatchEx);
548  X(IID_IDispatchJS);
549  X(IID_UndocumentedScriptIface);
551  X(IID_IEnumVARIANT);
552  X(IID_IHlinkTarget);
553  X(IID_IHTMLDocument6);
554  X(IID_IHTMLDocument7);
555  X(IID_IHTMLEditServices);
556  X(IID_IHTMLFramesCollection2);
557  X(IID_IHTMLPrivateWindow);
558  X(IID_IHtmlLoadOptions);
559  X(IID_IInternetHostSecurityManager);
560  X(IID_IMonikerProp);
561  X(IID_IObjectIdentity);
562  X(IID_IObjectSafety);
565  X(IID_IOleCommandTarget);
567  X(IID_IOleDocument);
568  X(IID_IOleDocumentView);
572  X(IID_IOleInPlaceObjectWindowless);
574  X(IID_IOleObject);
575  X(IID_IOleWindow);
576  X(IID_IOptionArray);
577  X(IID_IPersist);
579  X(IID_IPersistHistory);
580  X(IID_IPersistMoniker);
584  X(IID_IServiceProvider);
585  X(IID_ISupportErrorInfo);
586  X(IID_ITargetContainer);
587  X(IID_ITravelLogClient);
588  X(IID_IUnknown);
591  X(IID_IViewObjectEx);
592  X(IID_nsCycleCollectionISupports);
593  X(IID_nsXPCOMCycleCollectionParticipant);
594 #define XIID(x) X(IID_##x);
595 #define XDIID(x) X(DIID_##x);
596  TID_LIST
597 #undef XIID
598 #undef XDIID
599 #undef X
600 
601  return debugstr_guid(iid);
602 }
const GUID IID_IOleInPlaceFrame
const GUID IID_IViewObject
const GUID IID_IPersist
Definition: proxy.cpp:14
const GUID IID_IConnectionPointContainer
#define X(x)
const GUID IID_IEnumConnections
const GUID IID_IProvideClassInfo
#define debugstr_guid
Definition: kernel32.h:35
#define TID_LIST
Definition: ieframe.h:306
const GUID IID_IOleInPlaceObject
const GUID IID_IOleObject
const GUID IID_IOleContainer
const GUID IID_IUnknown
const IID IID_IObjectWithSite
const GUID IID_IDispatch
const GUID IID_IOleControl
const GUID IID_IPersistStreamInit
const GUID IID_IConnectionPoint
const GUID IID_IViewObject2
const GUID IID_IPropertyNotifySink
const GUID IID_IPersistFile
const GUID IID_IOleWindow
const GUID IID_IOleInPlaceUIWindow
const GUID IID_IOleInPlaceActiveObject

Referenced by ClassFactory_QueryInterface(), ConnectionPoint_QueryInterface(), ConnectionPointContainer_FindConnectionPoint(), CustomDoc_QueryInterface(), DllGetClassObject(), editsvcs_QueryInterface(), EnumConnections_QueryInterface(), Function_QueryInterface(), get_typeinfo(), HTMLAttributeCollection_QueryInterface(), HTMLCurrentStyle_QueryInterface(), HTMLDocument_Create(), HTMLDocumentNode_QI(), HTMLDOMAttribute_QueryInterface(), HTMLDOMChildrenCollection_QueryInterface(), HTMLDOMChildrenCollectionEnum_QueryInterface(), HTMLDOMImplementation_QueryInterface(), HTMLDOMNode_QI(), HTMLDOMTextNode_QI(), HTMLElementCollection_QueryInterface(), HTMLElementCollectionEnum_QueryInterface(), HTMLEmbedElement_QI(), HTMLEventObj_QueryInterface(), HTMLFiltersCollection_QueryInterface(), HTMLHeadElement_QI(), HTMLImageElementFactory_QueryInterface(), HTMLLoadOptions_Create(), HtmlLoadOptions_QueryInterface(), HTMLLocation_QueryInterface(), HTMLMimeTypesCollection_QueryInterface(), HTMLObjectElement_QI(), HTMLOptionElementFactory_QueryInterface(), HTMLPluginsCollection_QueryInterface(), HTMLRect_QueryInterface(), HTMLScreen_QueryInterface(), HTMLSelectionObject_QueryInterface(), HTMLStorage_QueryInterface(), HTMLStyle_QueryInterface(), HTMLStyleSheet_QueryInterface(), HTMLStyleSheetRulesCollection_QueryInterface(), HTMLStyleSheetsCollection_QueryInterface(), HTMLTitleElement_QI(), HTMLTxtRange_QueryInterface(), HTMLWindow2_QueryInterface(), HTMLWindowSP_QueryService(), HTMLXMLHttpRequest_QueryInterface(), HTMLXMLHttpRequestFactory_QueryInterface(), InPlaceFrame_QueryInterface(), InPlaceUIWindow_QueryInterface(), OmHistory_QueryInterface(), OmNavigator_QueryInterface(), SupportErrorInfo_InterfaceSupportsErrorInfo(), typeinfo_invoke(), and wrapper_QueryInterface().

◆ DEFINE_GUID() [1/11]

DEFINE_GUID ( IID_nsXPCOMCycleCollectionParticipant  ,
0x9674489b  ,
0x1f6f  ,
0x4550  ,
0xa7  ,
0x30  ,
0xcc  ,
0xae  ,
0xdd  ,
0x10  ,
0x4c  ,
0xf9   
)

◆ DEFINE_GUID() [2/11]

DEFINE_GUID ( CLSID_AboutProtocol  ,
0x3050F406  ,
0x98B5  ,
0x11CF  ,
0xBB  ,
0x82  ,
0x00  ,
0xAA  ,
0x00  ,
0xBD  ,
0xCE  ,
0x0B   
)

◆ DEFINE_GUID() [3/11]

DEFINE_GUID ( CLSID_JSProtocol  ,
0x3050F3B2  ,
0x98B5  ,
0x11CF  ,
0xBB  ,
0x82  ,
0x00  ,
0xAA  ,
0x00  ,
0xBD  ,
0xCE  ,
0x0B   
)

◆ DEFINE_GUID() [4/11]

DEFINE_GUID ( CLSID_MailtoProtocol  ,
0x3050F3DA  ,
0x98B5  ,
0x11CF  ,
0xBB  ,
0x82  ,
0x00  ,
0xAA  ,
0x00  ,
0xBD  ,
0xCE  ,
0x0B   
)

◆ DEFINE_GUID() [5/11]

DEFINE_GUID ( CLSID_ResProtocol  ,
0x3050F3BC  ,
0x98B5  ,
0x11CF  ,
0xBB  ,
0x82  ,
0x00  ,
0xAA  ,
0x00  ,
0xBD  ,
0xCE  ,
0x0B   
)

◆ DEFINE_GUID() [6/11]

DEFINE_GUID ( CLSID_SysimageProtocol  ,
0x76E67A63  ,
0x06E9  ,
0x11D2  ,
0xA8  ,
0x40  ,
0x00  ,
0x60  ,
0x08  ,
0x05  ,
0x93  ,
0x82   
)

◆ DEFINE_GUID() [7/11]

DEFINE_GUID ( CLSID_CMarkup  ,
0x3050f4fb  ,
0x98b5  ,
0x11cf  ,
0xbb  ,
0x82  ,
0x00  ,
0xaa  ,
0x00  ,
0xbd  ,
0xce  ,
0x0b   
)

◆ DEFINE_GUID() [8/11]

DEFINE_GUID ( CLSID_JScript  ,
0xf414c260  ,
0x6ac0  ,
0x11cf  ,
0xb6  ,
0xd1  ,
0x00  ,
0xaa  ,
0x00  ,
0xbb  ,
0xbb  ,
0x58   
)

◆ DEFINE_GUID() [9/11]

DEFINE_GUID ( CLSID_VBScript  ,
0xb54f3741  ,
0x5b07  ,
0x11cf  ,
0xa4  ,
0xb0  ,
0x00  ,
0xaa  ,
0x00  ,
0x4a  ,
0x55  ,
0xe8   
)

◆ DEFINE_GUID() [10/11]

DEFINE_GUID ( IID_UndocumentedScriptIface  ,
0x719c3050  ,
0xf9d3  ,
0x11cf  ,
0xa4  ,
0x93  ,
0x00  ,
0x40  ,
0x05  ,
0x23  ,
0xa8  ,
0xa0   
)

◆ DEFINE_GUID() [11/11]

DEFINE_GUID ( IID_IDispatchJS  ,
0x719c3050  ,
0xf9d3  ,
0x11cf  ,
0xa4  ,
0x93  ,
0x00  ,
0x40  ,
0x05  ,
0x23  ,
0xa8  ,
0xa6   
)

◆ DEFINE_OLEGUID()

DEFINE_OLEGUID ( CGID_DocHostCmdPriv  ,
0x000214D4L  ,
,
 
)

◆ detach_ranges()

void detach_ranges ( HTMLDocumentNode )

Definition at line 1747 of file txtrange.c.

1748 {
1749  HTMLTxtRange *iter;
1750 
1751  LIST_FOR_EACH_ENTRY(iter, &This->range_list, HTMLTxtRange, entry) {
1752  iter->doc = NULL;
1753  }
1754 }
#define LIST_FOR_EACH_ENTRY(elem, list, type, field)
Definition: list.h:198
smooth NULL
Definition: ftsmooth.c:416
uint32_t entry
Definition: isohybrid.c:63
HTMLDocumentNode * doc
Definition: txtrange.c:32

Referenced by HTMLDocumentNode_destructor().

◆ detach_selection()

void detach_selection ( HTMLDocumentNode )

Definition at line 347 of file selection.c.

348 {
349  HTMLSelectionObject *iter;
350 
351  LIST_FOR_EACH_ENTRY(iter, &This->selection_list, HTMLSelectionObject, entry) {
352  iter->doc = NULL;
353  }
354 }
#define LIST_FOR_EACH_ENTRY(elem, list, type, field)
Definition: list.h:198
HTMLDocumentNode * doc
Definition: selection.c:29
smooth NULL
Definition: ftsmooth.c:416
uint32_t entry
Definition: isohybrid.c:63

Referenced by HTMLDocumentNode_destructor().

◆ dispex_get_dprop_ref()

HRESULT dispex_get_dprop_ref ( DispatchEx ,
const WCHAR ,
BOOL  ,
VARIANT **   
)

Definition at line 555 of file dispex.c.

556 {
557  dynamic_prop_t *prop;
558  HRESULT hres;
559 
560  hres = get_dynamic_prop(This, name, alloc ? fdexNameEnsure : 0, &prop);
561  if(FAILED(hres))
562  return hres;
563 
564  *ret = &prop->var;
565  return S_OK;
566 }
HRESULT hres
Definition: protocol.c:465
LONG HRESULT
Definition: typedefs.h:77
int ret
static HRESULT get_dynamic_prop(DispatchEx *This, const WCHAR *name, DWORD flags, dynamic_prop_t **ret)
Definition: dispex.c:499
#define S_OK
Definition: intsafe.h:59
VARIANT var
Definition: dispex.c:58
#define alloc
Definition: rosglue.h:13
Definition: name.c:36

Referenced by get_event_handler(), HTMLElement3_get_disabled(), HTMLElement3_put_disabled(), HTMLElement_get_title(), HTMLElement_put_title(), HTMLStyle3_get_zoom(), HTMLStyle3_put_zoom(), remove_event_handler(), and set_event_handler().

◆ dispex_get_dynid()

HRESULT dispex_get_dynid ( DispatchEx ,
const WCHAR ,
DISPID  
)

Definition at line 568 of file dispex.c.

569 {
570  dynamic_prop_t *prop;
571  HRESULT hres;
572 
573  hres = get_dynamic_prop(This, name, fdexNameEnsure, &prop);
574  if(FAILED(hres))
575  return hres;
576 
577  *id = DISPID_DYNPROP_0 + (prop - This->dynamic_data->props);
578  return S_OK;
579 }
#define DISPID_DYNPROP_0
Definition: dispex.c:85
HRESULT hres
Definition: protocol.c:465
LONG HRESULT
Definition: typedefs.h:77
static HRESULT get_dynamic_prop(DispatchEx *This, const WCHAR *name, DWORD flags, dynamic_prop_t **ret)
Definition: dispex.c:499
#define S_OK
Definition: intsafe.h:59
Definition: name.c:36

Referenced by HTMLWindow_invoke().

◆ dispex_query_interface()

BOOL dispex_query_interface ( DispatchEx ,
REFIID  ,
void **   
)

Definition at line 1656 of file dispex.c.

1657 {
1659  *ppv = &This->IDispatchEx_iface;
1660  else if(IsEqualGUID(&IID_IDispatchEx, riid))
1661  *ppv = &This->IDispatchEx_iface;
1662  else if(IsEqualGUID(&IID_IDispatchJS, riid))
1663  *ppv = NULL;
1664  else if(IsEqualGUID(&IID_UndocumentedScriptIface, riid))
1665  *ppv = NULL;
1666  else
1667  return FALSE;
1668 
1669  if(*ppv)
1670  IUnknown_AddRef((IUnknown*)*ppv);
1671  return TRUE;
1672 }
#define TRUE
Definition: types.h:120
REFIID riid
Definition: precomp.h:44
REFIID LPVOID * ppv
Definition: atlbase.h:39
smooth NULL
Definition: ftsmooth.c:416
const GUID IID_IDispatch
BOOL WINAPI IsEqualGUID(REFGUID rguid1, REFGUID rguid2)
Definition: compobj.c:4021

◆ dispex_traverse()

void dispex_traverse ( DispatchEx ,
nsCycleCollectionTraversalCallback  
)

Definition at line 1674 of file dispex.c.

1675 {
1676  dynamic_prop_t *prop;
1677 
1678  if(!This->dynamic_data)
1679  return;
1680 
1681  for(prop = This->dynamic_data->props; prop < This->dynamic_data->props + This->dynamic_data->prop_cnt; prop++) {
1682  if(V_VT(&prop->var) == VT_DISPATCH)
1683  note_cc_edge((nsISupports*)V_DISPATCH(&prop->var), "dispex_data", cb);
1684  }
1685 
1686  /* FIXME: Traverse func_disps */
1687 }
#define V_DISPATCH(A)
Definition: oleauto.h:239
static DWORD cb
Definition: integrity.c:41
#define V_VT(A)
Definition: oleauto.h:211
VARIANT var
Definition: dispex.c:58

Referenced by HTMLDOMNode_traverse().

◆ dispex_unlink()

void dispex_unlink ( DispatchEx )

Definition at line 1689 of file dispex.c.

1690 {
1691  dynamic_prop_t *prop;
1692 
1693  if(!This->dynamic_data)
1694  return;
1695 
1696  for(prop = This->dynamic_data->props; prop < This->dynamic_data->props + This->dynamic_data->prop_cnt; prop++) {
1697  if(V_VT(&prop->var) == VT_DISPATCH) {
1698  V_VT(&prop->var) = VT_EMPTY;
1699  IDispatch_Release(V_DISPATCH(&prop->var));
1700  }else {
1701  VariantClear(&prop->var);
1702  }
1703  }
1704 }
#define V_DISPATCH(A)
Definition: oleauto.h:239
HRESULT WINAPI DECLSPEC_HOTPATCH VariantClear(VARIANTARG *pVarg)
Definition: variant.c:651
#define V_VT(A)
Definition: oleauto.h:211
VARIANT var
Definition: dispex.c:58

Referenced by HTMLDOMNode_unlink().

◆ do_ns_command()

void do_ns_command ( HTMLDocument ,
const char ,
nsICommandParams  
)

Definition at line 24 of file olecmd.c.

25 {
26  nsICommandManager *cmdmgr;
27  nsresult nsres;
28 
29  TRACE("(%p)\n", This);
30 
31  if(!This->doc_obj || !This->doc_obj->nscontainer)
32  return;
33 
34  nsres = get_nsinterface((nsISupports*)This->doc_obj->nscontainer->webbrowser, &IID_nsICommandManager, (void**)&cmdmgr);
35  if(NS_FAILED(nsres)) {
36  ERR("Could not get nsICommandManager: %08x\n", nsres);
37  return;
38  }
39 
40  nsres = nsICommandManager_DoCommand(cmdmgr, cmd, nsparam, This->window->nswindow);
41  if(NS_FAILED(nsres))
42  ERR("DoCommand(%s) failed: %08x\n", debugstr_a(cmd), nsres);
43 
44  nsICommandManager_Release(cmdmgr);
45 }
Definition: ftp_var.h:139
#define NS_FAILED(res)
#define TRACE(s)
Definition: solgame.cpp:4
#define debugstr_a
Definition: kernel32.h:31
#define ERR(fmt,...)
Definition: debug.h:109
nsresult get_nsinterface(nsISupports *, REFIID, void **) DECLSPEC_HIDDEN
Definition: nsembed.c:907
HRESULT nsresult
Definition: nsiface.idl:39

Referenced by exec_bold(), exec_copy(), exec_forecolor(), exec_horizontalline(), exec_indent(), exec_italic(), exec_mshtml_copy(), exec_orderlist(), exec_outdent(), exec_select_all(), exec_underline(), exec_unorderlist(), set_ns_align(), and set_ns_fontname().

◆ do_query_service()

HRESULT do_query_service ( IUnknown ,
REFGUID  ,
REFIID  ,
void **   
)

Definition at line 141 of file main.c.

142 {
144  HRESULT hres;
145 
146  hres = IUnknown_QueryInterface(unk, &IID_IServiceProvider, (void**)&sp);
147  if(FAILED(hres))
148  return hres;
149 
150  hres = IServiceProvider_QueryService(sp, guid_service, riid, ppv);
151  IServiceProvider_Release(sp);
152  return hres;
153 }
REFIID riid
Definition: precomp.h:44
REFIID LPVOID * ppv
Definition: atlbase.h:39
HRESULT hres
Definition: protocol.c:465
LONG HRESULT
Definition: typedefs.h:77
static const WCHAR sp[]
Definition: suminfo.c:288

Referenced by hlink_frame_navigate(), HTMLWindow2_open(), navigate_new_window(), OleObject_SetClientSite(), and ServiceProvider_QueryService().

◆ editor_exec_copy()

HRESULT editor_exec_copy ( HTMLDocument ,
DWORD  ,
VARIANT ,
VARIANT  
)

Definition at line 870 of file editor.c.

871 {
873 
874  if(!This->doc_obj->nscontainer)
875  return E_FAIL;
876 
877  do_ns_editor_command(This->doc_obj->nscontainer, NSCMD_COPY);
878  return S_OK;
879 }
#define UPDATE_UI
void update_doc(HTMLDocument *, DWORD) DECLSPEC_HIDDEN
Definition: view.c:62
#define NSCMD_COPY
Definition: editor.c:26
static void do_ns_editor_command(NSContainer *This, const char *cmd)
Definition: editor.c:99
#define E_FAIL
Definition: ddrawi.h:102
#define S_OK
Definition: intsafe.h:59

Referenced by exec_mshtml_copy().

◆ editor_exec_cut()

HRESULT editor_exec_cut ( HTMLDocument ,
DWORD  ,
VARIANT ,
VARIANT  
)

Definition at line 881 of file editor.c.

882 {
884 
885  if(!This->doc_obj->nscontainer)
886  return E_FAIL;
887 
888  do_ns_editor_command(This->doc_obj->nscontainer, NSCMD_CUT);
889  return S_OK;
890 }
#define UPDATE_UI
void update_doc(HTMLDocument *, DWORD) DECLSPEC_HIDDEN
Definition: view.c:62
static void do_ns_editor_command(NSContainer *This, const char *cmd)
Definition: editor.c:99
#define E_FAIL
Definition: ddrawi.h:102
#define NSCMD_CUT
Definition: editor.c:27
#define S_OK
Definition: intsafe.h:59

Referenced by exec_mshtml_cut().

◆ editor_exec_paste()

HRESULT editor_exec_paste ( HTMLDocument ,
DWORD  ,
VARIANT ,
VARIANT  
)

Definition at line 892 of file editor.c.

893 {
895 
896  if(!This->doc_obj->nscontainer)
897  return E_FAIL;
898 
899  do_ns_editor_command(This->doc_obj->nscontainer, NSCMD_PASTE);
900  return S_OK;
901 }
#define UPDATE_UI
void update_doc(HTMLDocument *, DWORD) DECLSPEC_HIDDEN
Definition: view.c:62
static void do_ns_editor_command(NSContainer *This, const char *cmd)
Definition: editor.c:99
#define E_FAIL
Definition: ddrawi.h:102
#define S_OK
Definition: intsafe.h:59
#define NSCMD_PASTE
Definition: editor.c:45

Referenced by exec_mshtml_paste().

◆ editor_is_dirty()

HRESULT editor_is_dirty ( HTMLDocument )

Definition at line 1209 of file editor.c.

1210 {
1211  cpp_bool modified;
1212 
1213  if(!This->doc_obj->nscontainer || !This->doc_obj->nscontainer->editor)
1214  return S_FALSE;
1215 
1216  nsIEditor_GetDocumentModified(This->doc_obj->nscontainer->editor, &modified);
1217 
1218  return modified ? S_OK : S_FALSE;
1219 }
#define S_FALSE
Definition: winerror.h:2357
unsigned char cpp_bool
Definition: atl.c:39
#define S_OK
Definition: intsafe.h:59

Referenced by PersistStreamInit_IsDirty().

◆ elem_string_attr_getter()

HRESULT elem_string_attr_getter ( HTMLElement ,
const WCHAR ,
BOOL  ,
BSTR  
)

Definition at line 162 of file htmlelem.c.

163 {
164  const PRUnichar *val;
165  nsAString val_str;
166  nsresult nsres;
167  HRESULT hres = S_OK;
168 
169  nsres = get_elem_attr_value(elem->nselem, name, &val_str, &val);
170  if(NS_FAILED(nsres))
171  return E_FAIL;
172 
173  TRACE("%s: returning %s\n", debugstr_w(name), debugstr_w(val));
174 
175  if(*val || !use_null) {
176  *p = SysAllocString(val);
177  if(!*p)
179  }else {
180  *p = NULL;
181  }
182  nsAString_Finish(&val_str);
183  return hres;
184 }
nsresult get_elem_attr_value(nsIDOMHTMLElement *nselem, const WCHAR *name, nsAString *val_str, const PRUnichar **val)
Definition: htmlelem.c:143
#define E_FAIL
Definition: ddrawi.h:102
#define E_OUTOFMEMORY
Definition: ddrawi.h:100
#define debugstr_w
Definition: kernel32.h:32
static size_t elem
Definition: string.c:68
smooth NULL
Definition: ftsmooth.c:416
BSTR WINAPI SysAllocString(LPCOLESTR str)
Definition: oleaut.c:241
GLuint GLfloat * val
Definition: glext.h:7180
#define NS_FAILED(res)
#define TRACE(s)
Definition: solgame.cpp:4
HRESULT hres
Definition: protocol.c:465
LONG HRESULT
Definition: typedefs.h:77
#define S_OK
Definition: intsafe.h:59
void nsAString_Finish(nsAString *) DECLSPEC_HIDDEN
Definition: nsembed.c:836
Definition: name.c:36
HRESULT nsresult
Definition: nsiface.idl:39
WCHAR PRUnichar
Definition: nsiface.idl:48
GLfloat GLfloat p
Definition: glext.h:8902

Referenced by HTMLElement_get_language(), HTMLLabelElement_get_htmlFor(), HTMLMetaElement_get_charset(), HTMLMetaElement_get_content(), HTMLMetaElement_get_httpEquiv(), and HTMLMetaElement_get_name().

◆ elem_string_attr_setter()

HRESULT elem_string_attr_setter ( HTMLElement ,
const WCHAR ,
const WCHAR  
)

Definition at line 186 of file htmlelem.c.

187 {
188  nsAString name_str, val_str;
189  nsresult nsres;
190 
191  nsAString_InitDepend(&name_str, name);
192  nsAString_InitDepend(&val_str, value);
193  nsres = nsIDOMHTMLElement_SetAttribute(elem->nselem, &name_str, &val_str);
194  nsAString_Finish(&name_str);
195  nsAString_Finish(&val_str);
196 
197  if(NS_FAILED(nsres)) {
198  WARN("SetAttribute failed: %08x\n", nsres);
199  return E_FAIL;
200  }
201 
202  return S_OK;
203 }
#define WARN(fmt,...)
Definition: debug.h:111
#define E_FAIL
Definition: ddrawi.h:102
static size_t elem
Definition: string.c:68
#define NS_FAILED(res)
#define S_OK
Definition: intsafe.h:59
void nsAString_InitDepend(nsAString *, const PRUnichar *) DECLSPEC_HIDDEN
Definition: nsembed.c:826
void nsAString_Finish(nsAString *) DECLSPEC_HIDDEN
Definition: nsembed.c:836
Definition: name.c:36
HRESULT nsresult
Definition: nsiface.idl:39

Referenced by HTMLElement_put_language(), HTMLMetaElement_put_charset(), and HTMLObjectElement2_put_classid().

◆ flush_pending_tasks()

void flush_pending_tasks ( LONG  )

Definition at line 88 of file task.c.

89 {
91  struct list *liter, *ltmp;
92  task_t *task;
93 
94  if(!thread_data)
95  return;
96 
97  LIST_FOR_EACH_SAFE(liter, ltmp, &thread_data->task_list) {
98  task = LIST_ENTRY(liter, task_t, entry);
99  if(task->target_magic == target) {
100  list_remove(&task->entry);
101  task->proc(task);
102  task->destr(task);
103  }
104  }
105 }
#define LIST_FOR_EACH_SAFE(cursor, cursor2, list)
Definition: list.h:192
thread_data_t * get_thread_data(BOOL create)
Definition: task.c:352
task_proc_t proc
__WINE_SERVER_LIST_INLINE void list_remove(struct list *elem)
Definition: list.h:108
struct list entry
uint32_t entry
Definition: isohybrid.c:63
Definition: _list.h:228
task_proc_t destr
GLenum target
Definition: glext.h:7315
#define LIST_ENTRY(type)
Definition: queue.h:175
LONG target_magic

Referenced by handle_load().

◆ get_client_disp_property()

HRESULT get_client_disp_property ( IOleClientSite ,
DISPID  ,
VARIANT  
)

Definition at line 811 of file oleobj.c.

812 {
813  IDispatch *disp = NULL;
814  DISPPARAMS dispparams = {NULL, 0};
815  UINT err;
816  HRESULT hres;
817 
818  hres = IOleClientSite_QueryInterface(client, &IID_IDispatch, (void**)&disp);
819  if(FAILED(hres)) {
820  TRACE("Could not get IDispatch\n");
821  return hres;
822  }
823 
824  VariantInit(res);
825 
826  hres = IDispatch_Invoke(disp, dispid, &IID_NULL, LOCALE_SYSTEM_DEFAULT,
827  DISPATCH_PROPERTYGET, &dispparams, res, NULL, &err);
828 
829  IDispatch_Release(disp);
830 
831  return hres;
832 }
disp
Definition: i386-dis.c:3181
#define DISPATCH_PROPERTYGET
Definition: oleauto.h:1007
void WINAPI VariantInit(VARIANTARG *pVarg)
Definition: variant.c:571
smooth NULL
Definition: ftsmooth.c:416
#define TRACE(s)
Definition: solgame.cpp:4
HRESULT hres
Definition: protocol.c:465
LONG HRESULT
Definition: typedefs.h:77
#define LOCALE_SYSTEM_DEFAULT
static FILE * client
Definition: client.c:41
const GUID IID_IDispatch
#define IID_NULL
Definition: guiddef.h:98
#define err(...)
unsigned int UINT
Definition: ndis.h:50
GLuint res
Definition: glext.h:9613
struct stdole::DISPPARAMS DISPPARAMS

Referenced by OleControl_OnAmbientPropertyChange(), OleObject_SetClientSite(), and on_change_dlcontrol().

◆ get_context_from_document()

JSContext* get_context_from_document ( nsIDOMHTMLDocument )

Definition at line 758 of file mutation.c.

759 {
760  nsIDocument *doc;
761  JSContext *ctx;
762  nsresult nsres;
763 
764  nsres = nsIDOMHTMLDocument_QueryInterface(nsdoc, &IID_nsIDocument, (void**)&doc);
765  assert(nsres == NS_OK);
766 
767  ctx = nsIContentUtils_GetContextFromDocument(content_utils, doc);
768  nsIDocument_Release(doc);
769 
770  TRACE("ret %p\n", ctx);
771  return ctx;
772 }
#define assert(x)
Definition: debug.h:53
static nsIContentUtils * content_utils
Definition: mutation.c:27
#define NS_OK
#define TRACE(s)
Definition: solgame.cpp:4
HRESULT nsresult
Definition: nsiface.idl:39

Referenced by document_write(), and HTMLDocument_open().

◆ get_dispid_type()

dispex_prop_type_t get_dispid_type ( DISPID  )

Definition at line 464 of file dispex.c.

465 {
466  if(is_dynamic_dispid(id))
467  return DISPEXPROP_DYNAMIC;
468  if(is_custom_dispid(id))
469  return DISPEXPROP_CUSTOM;
470  return DISPEXPROP_BUILTIN;
471 }
static BOOL is_custom_dispid(DISPID id)
Definition: dispex.c:454
static BOOL is_dynamic_dispid(DISPID id)
Definition: dispex.c:459

Referenced by DispatchEx_InvokeEx(), HTMLDOMAttribute2_get_expando(), HTMLDOMAttribute_get_specified(), and remove_attribute().

◆ get_dispids()

HRESULT get_dispids ( tid_t  ,
DWORD ,
DISPID **   
)

Definition at line 389 of file dispex.c.

390 {
391  unsigned i, func_cnt;
392  FUNCDESC *funcdesc;
393  ITypeInfo *ti;
394  TYPEATTR *attr;
395  DISPID *ids;
396  HRESULT hres;
397 
398  hres = get_typeinfo(tid, &ti);
399  if(FAILED(hres))
400  return hres;
401 
402  hres = ITypeInfo_GetTypeAttr(ti, &attr);
403  if(FAILED(hres)) {
404  ITypeInfo_Release(ti);
405  return hres;
406  }
407 
408  func_cnt = attr->cFuncs;
409  ITypeInfo_ReleaseTypeAttr(ti, attr);
410 
411  ids = heap_alloc(func_cnt*sizeof(DISPID));
412  if(!ids) {
413  ITypeInfo_Release(ti);
414  return E_OUTOFMEMORY;
415  }
416 
417  for(i=0; i < func_cnt; i++) {
418  hres = ITypeInfo_GetFuncDesc(ti, i, &funcdesc);
419  if(FAILED(hres))
420  break;
421 
422  ids[i] = funcdesc->memid;
423  ITypeInfo_ReleaseFuncDesc(ti, funcdesc);
424  }
425 
426  ITypeInfo_Release(ti);
427  if(FAILED(hres)) {
428  heap_free(ids);
429  return hres;
430  }
431 
432  qsort(ids, func_cnt, sizeof(DISPID), id_cmp);
433 
434  *ret_size = func_cnt;
435  *ret = ids;
436  return S_OK;
437 }
static int id_cmp(const void *p1, const void *p2)
Definition: dispex.c:384
static void * heap_alloc(size_t len)
Definition: appwiz.h:65
GLuint * ids
Definition: glext.h:5907
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
Definition: glfuncs.h:248
#define E_OUTOFMEMORY
Definition: ddrawi.h:100
void __cdecl qsort(_Inout_updates_bytes_(_NumOfElements *_SizeOfElements) void *_Base, _In_ size_t _NumOfElements, _In_ size_t _SizeOfElements, _In_ int(__cdecl *_PtFuncCompare)(const void *, const void *))
HRESULT hres
Definition: protocol.c:465
LONG HRESULT
Definition: typedefs.h:77
Definition: cookie.c:170
int ret
__u8 attr
Definition: mkdosfs.c:359
#define S_OK
Definition: intsafe.h:59
static VARIANTARG static DISPID
Definition: ordinal.c:49
static HRESULT get_typeinfo(tid_t tid, ITypeInfo **typeinfo)
Definition: dispex.c:118
static TfClientId tid
static BOOL heap_free(void *mem)
Definition: appwiz.h:75

Referenced by is_cp_event().

◆ get_display_dc()

HDC get_display_dc ( void  )

Definition at line 166 of file main.c.

167 {
168  static const WCHAR displayW[] = {'D','I','S','P','L','A','Y',0};
169 
170  if(!display_dc) {
171  HDC hdc;
172 
175  DeleteObject(hdc);
176  }
177 
178  return display_dc;
179 }
static HDC
Definition: imagelist.c:92
BOOL WINAPI DeleteObject(_In_ HGDIOBJ)
static HDC display_dc
Definition: main.c:34
#define InterlockedCompareExchangePointer
Definition: interlocked.h:129
smooth NULL
Definition: ftsmooth.c:416
__wchar_t WCHAR
Definition: xmlstorage.h:180
static const WCHAR displayW[]
Definition: icm.c:30
HDC hdc
Definition: main.c:9
HDC WINAPI CreateICW(_In_opt_ LPCWSTR, _In_opt_ LPCWSTR, _In_opt_ LPCWSTR, _In_opt_ const DEVMODEW *)

Referenced by HTMLScreen_get_colorDepth(), HTMLScreen_get_height(), and HTMLScreen_get_width().

◆ get_doc_elem_by_id()

HRESULT get_doc_elem_by_id ( HTMLDocumentNode ,
const WCHAR ,
HTMLElement **   
)

Definition at line 23 of file htmldoc.c.

24 {
25  nsIDOMNodeList *nsnode_list;
26  nsIDOMElement *nselem;
27  nsIDOMNode *nsnode;
28  nsAString id_str;
29  nsresult nsres;
30  HRESULT hres;
31 
32  if(!doc->nsdoc) {
33  WARN("NULL nsdoc\n");
34  return E_UNEXPECTED;
35  }
36 
37  nsAString_InitDepend(&id_str, id);
38  /* get element by id attribute */
39  nsres = nsIDOMHTMLDocument_GetElementById(doc->nsdoc, &id_str, &nselem);
40  if(FAILED(nsres)) {
41  ERR("GetElementById failed: %08x\n", nsres);
42  nsAString_Finish(&id_str);
43  return E_FAIL;
44  }
45 
46  /* get first element by name attribute */
47  nsres = nsIDOMHTMLDocument_GetElementsByName(doc->nsdoc, &id_str, &nsnode_list);
48  nsAString_Finish(&id_str);
49  if(FAILED(nsres)) {
50  ERR("getElementsByName failed: %08x\n", nsres);
51  if(nselem)
52  nsIDOMElement_Release(nselem);
53  return E_FAIL;
54  }
55 
56  nsres = nsIDOMNodeList_Item(nsnode_list, 0, &nsnode);
57  nsIDOMNodeList_Release(nsnode_list);
58  assert(nsres == NS_OK);
59 
60  if(nsnode && nselem) {
61  UINT16 pos;
62 
63  nsres = nsIDOMNode_CompareDocumentPosition(nsnode, (nsIDOMNode*)nselem, &pos);
64  if(NS_FAILED(nsres)) {
65  FIXME("CompareDocumentPosition failed: 0x%08x\n", nsres);
66  nsIDOMNode_Release(nsnode);
67  nsIDOMElement_Release(nselem);
68  return E_FAIL;
69  }
70 
71  TRACE("CompareDocumentPosition gave: 0x%x\n", pos);
72  if(!(pos & (DOCUMENT_POSITION_PRECEDING | DOCUMENT_POSITION_CONTAINS))) {
73  nsIDOMElement_Release(nselem);
74  nselem = NULL;
75  }
76  }
77 
78  if(nsnode) {
79  if(!nselem) {
80  nsres = nsIDOMNode_QueryInterface(nsnode, &IID_nsIDOMElement, (void**)&nselem);
81  assert(nsres == NS_OK);
82  }
83  nsIDOMNode_Release(nsnode);
84  }
85 
86  if(!nselem) {
87  *ret = NULL;
88  return S_OK;
89  }
90 
91  hres = get_elem(doc, nselem, ret);
92  nsIDOMElement_Release(nselem);
93  return hres;
94 }
#define WARN(fmt,...)
Definition: debug.h:111
#define assert(x)
Definition: debug.h:53
#define E_FAIL
Definition: ddrawi.h:102
#define NS_OK
#define FIXME(fmt,...)
Definition: debug.h:110
smooth NULL
Definition: ftsmooth.c:416
HRESULT get_elem(HTMLDocumentNode *doc, nsIDOMElement *nselem, HTMLElement **ret)
Definition: htmlelem.c:4078
#define NS_FAILED(res)
#define TRACE(s)
Definition: solgame.cpp:4
HRESULT hres
Definition: protocol.c:465
LONG HRESULT
Definition: typedefs.h:77
int ret
#define ERR(fmt,...)
Definition: debug.h:109
#define S_OK
Definition: intsafe.h:59
void nsAString_InitDepend(nsAString *, const PRUnichar *) DECLSPEC_HIDDEN
Definition: nsembed.c:826
unsigned short UINT16
#define E_UNEXPECTED
Definition: winerror.h:2456
void nsAString_Finish(nsAString *) DECLSPEC_HIDDEN
Definition: nsembed.c:836
HRESULT nsresult
Definition: nsiface.idl:39

Referenced by find_event_target(), and HTMLDocument3_getElementById().

◆ get_document_charset()

UINT get_document_charset ( HTMLDocumentNode )

Definition at line 96 of file htmldoc.c.

97 {
98  nsAString charset_str;
99  UINT ret = 0;
100  nsresult nsres;
101 
102  if(doc->charset)
103  return doc->charset;
104 
105  nsAString_Init(&charset_str, NULL);
106  nsres = nsIDOMHTMLDocument_GetCharacterSet(doc->nsdoc, &charset_str);
107  if(NS_SUCCEEDED(nsres)) {
108  const PRUnichar *charset;
109 
110  nsAString_GetData(&charset_str, &charset);
111 
112  if(*charset) {
116  }
117  }else {
118  ERR("GetCharset failed: %08x\n", nsres);
119  }
120  nsAString_Finish(&charset_str);
121 
122  if(!ret)
123  return CP_UTF8;
124 
125  return doc->charset = ret;
126 }
CFF_Charset charset
Definition: cffcmap.c:138
OLECHAR * BSTR
Definition: compat.h:1934
#define CP_UTF8
Definition: nls.h:20
const WCHAR * str
smooth NULL
Definition: ftsmooth.c:416
BSTR WINAPI SysAllocString(LPCOLESTR str)
Definition: oleaut.c:241
UINT cp_from_charset_string(BSTR charset)
Definition: main.c:38
#define NS_SUCCEEDED(res)
int ret
UINT32 nsAString_GetData(const nsAString *, const PRUnichar **) DECLSPEC_HIDDEN
Definition: nsembed.c:831
#define ERR(fmt,...)
Definition: debug.h:109
void WINAPI DECLSPEC_HOTPATCH SysFreeString(BSTR str)
Definition: oleaut.c:274
unsigned int UINT
Definition: ndis.h:50
BOOL nsAString_Init(nsAString *, const PRUnichar *) DECLSPEC_HIDDEN
Definition: nsembed.c:817
void nsAString_Finish(nsAString *) DECLSPEC_HIDDEN
Definition: nsembed.c:836
HRESULT nsresult
Definition: nsiface.idl:39
WCHAR PRUnichar
Definition: nsiface.idl:48

Referenced by bind_script_to_text().

◆ get_editor_controller()

void get_editor_controller ( NSContainer )

Definition at line 1029 of file nsembed.c.

1030 {
1031  nsIEditingSession *editing_session = NULL;
1032  nsIControllerContext *ctrlctx;
1033  nsresult nsres;
1034 
1035  if(This->editor) {
1036  nsIEditor_Release(This->editor);
1037  This->editor = NULL;
1038  }
1039 
1040  if(This->editor_controller) {
1041  nsIController_Release(This->editor_controller);
1042  This->editor_controller = NULL;
1043  }
1044 
1045  nsres = get_nsinterface((nsISupports*)This->webbrowser, &IID_nsIEditingSession,
1046  (void**)&editing_session);
1047  if(NS_FAILED(nsres)) {
1048  ERR("Could not get nsIEditingSession: %08x\n", nsres);
1049  return;
1050  }
1051 
1052  nsres = nsIEditingSession_GetEditorForWindow(editing_session,
1053  This->doc->basedoc.window->nswindow, &This->editor);
1054  nsIEditingSession_Release(editing_session);
1055  if(NS_FAILED(nsres)) {
1056  ERR("Could not get editor: %08x\n", nsres);
1057  return;
1058  }
1059 
1060  nsres = nsIComponentManager_CreateInstanceByContractID(pCompMgr,
1061  NS_EDITORCONTROLLER_CONTRACTID, NULL, &IID_nsIControllerContext, (void**)&ctrlctx);
1062  if(NS_SUCCEEDED(nsres)) {
1063  nsres = nsIControllerContext_SetCommandContext(ctrlctx, (nsISupports *)This->editor);
1064  if(NS_FAILED(nsres))
1065  ERR("SetCommandContext failed: %08x\n", nsres);
1066  nsres = nsIControllerContext_QueryInterface(ctrlctx, &IID_nsIController,
1067  (void**)&This->editor_controller);
1068  nsIControllerContext_Release(ctrlctx);
1069  if(NS_FAILED(nsres))
1070  ERR("Could not get nsIController interface: %08x\n", nsres);
1071  }else {
1072  ERR("Could not create edit controller: %08x\n", nsres);
1073  }
1074 }
#define NS_EDITORCONTROLLER_CONTRACTID
Definition: nsembed.c:30
smooth NULL
Definition: ftsmooth.c:416
static nsIComponentManager * pCompMgr
Definition: nsembed.c:62
#define NS_FAILED(res)
#define NS_SUCCEEDED(res)
nsresult get_nsinterface(nsISupports *iface, REFIID riid, void **ppv)
Definition: nsembed.c:907
#define ERR(fmt,...)
Definition: debug.h:109
HRESULT nsresult
Definition: nsiface.idl:39

Referenced by handle_edit_load().

◆ get_elem()

HRESULT get_elem ( HTMLDocumentNode ,
nsIDOMElement ,
HTMLElement **   
)

Definition at line 4078 of file htmlelem.c.

4079 {
4080  HTMLDOMNode *node;
4081  HRESULT hres;
4082 
4083  hres = get_node(doc, (nsIDOMNode*)nselem, TRUE, &node);
4084  if(FAILED(hres))
4085  return hres;
4086 
4088  return S_OK;
4089 }
#define TRUE
Definition: types.h:120
struct node node
HRESULT hres
Definition: protocol.c:465
LONG HRESULT
Definition: typedefs.h:77
int ret
#define S_OK
Definition: intsafe.h:59
HRESULT get_node(HTMLDocumentNode *This, nsIDOMNode *nsnode, BOOL create, HTMLDOMNode **ret)
Definition: htmlnode.c:1339
static HTMLElement * impl_from_HTMLDOMNode(HTMLDOMNode *iface)
Definition: htmlelem.c:3733
Definition: dlist.c:348

Referenced by get_doc_elem_by_id(), and HTMLDocument_get_activeElement().

◆ get_elem_attr_value()

nsresult get_elem_attr_value ( nsIDOMHTMLElement ,
const WCHAR ,
nsAString ,
const PRUnichar **   
)

Definition at line 143 of file htmlelem.c.

144 {
145  nsAString name_str;
146  nsresult nsres;
147 
148  nsAString_InitDepend(&name_str, name);
149  nsAString_Init(val_str, NULL);
150  nsres = nsIDOMHTMLElement_GetAttribute(nselem, &name_str, val_str);
151  nsAString_Finish(&name_str);
152  if(NS_FAILED(nsres)) {
153  ERR("GetAttribute(%s) failed: %08x\n", debugstr_w(name), nsres);
154  nsAString_Finish(val_str);
155  return nsres;
156  }
157 
158  nsAString_GetData(val_str, val);
159  return NS_OK;
160 }
#define NS_OK
#define debugstr_w
Definition: kernel32.h:32
smooth NULL
Definition: ftsmooth.c:416
GLuint GLfloat * val
Definition: glext.h:7180
#define NS_FAILED(res)
UINT32 nsAString_GetData(const nsAString *, const PRUnichar **) DECLSPEC_HIDDEN
Definition: nsembed.c:831
#define ERR(fmt,...)
Definition: debug.h:109
void nsAString_InitDepend(nsAString *, const PRUnichar *) DECLSPEC_HIDDEN
Definition: nsembed.c:826
BOOL nsAString_Init(nsAString *, const PRUnichar *) DECLSPEC_HIDDEN
Definition: nsembed.c:817
void nsAString_Finish(nsAString *) DECLSPEC_HIDDEN
Definition: nsembed.c:836
Definition: name.c:36
HRESULT nsresult
Definition: nsiface.idl:39

Referenced by check_codebase(), check_event_attr(), elem_string_attr_getter(), fill_props(), get_elem_clsid(), get_font_size(), get_script_guid(), HTMLFormElement_get_dispid(), and is_elem_name().

◆ get_elem_attr_value_by_dispid()

HRESULT get_elem_attr_value_by_dispid ( HTMLElement ,
DISPID  ,
DWORD  ,
VARIANT  
)

Definition at line 621 of file htmlelem.c.

622 {
623  DISPPARAMS dispParams = {NULL, NULL, 0, 0};
624  EXCEPINFO excep;
625  HRESULT hres;
626 
627  hres = IDispatchEx_InvokeEx(&elem->node.event_target.dispex.IDispatchEx_iface, dispid, LOCALE_SYSTEM_DEFAULT,
628  DISPATCH_PROPERTYGET, &dispParams, ret, &excep, NULL);
629  if(FAILED(hres))
630  return hres;
631 
632  if(flags & ATTRFLAG_ASSTRING) {
633  switch(V_VT(ret)) {
634  case VT_BSTR:
635  break;
636  case VT_DISPATCH:
637  IDispatch_Release(V_DISPATCH(ret));
638  V_VT(ret) = VT_BSTR;
640  break;
641  default:
643  if(FAILED(hres))
644  return hres;
645  }
646  }
647 
648  return S_OK;
649 }
HRESULT WINAPI DECLSPEC_HOTPATCH VariantChangeType(VARIANTARG *pvargDest, VARIANTARG *pvargSrc, USHORT wFlags, VARTYPE vt)
Definition: variant.c:965
#define DISPATCH_PROPERTYGET
Definition: oleauto.h:1007
#define V_DISPATCH(A)
Definition: oleauto.h:239
#define ATTRFLAG_ASSTRING
static size_t elem
Definition: string.c:68
smooth NULL
Definition: ftsmooth.c:416
BSTR WINAPI SysAllocString(LPCOLESTR str)
Definition: oleaut.c:241
HRESULT hres
Definition: protocol.c:465
LONG HRESULT
Definition: typedefs.h:77
#define LOCALE_SYSTEM_DEFAULT
GLbitfield flags
Definition: glext.h:7161
int ret
#define V_VT(A)
Definition: oleauto.h:211
#define V_BSTR(A)
Definition: oleauto.h:226
struct stdole::EXCEPINFO EXCEPINFO
#define S_OK
Definition: intsafe.h:59
struct stdole::DISPPARAMS DISPPARAMS

Referenced by HTMLDOMAttribute2_get_value(), HTMLDOMAttribute_get_nodeValue(), and HTMLElement_getAttribute().

◆ get_elem_source_index()

HRESULT get_elem_source_index ( HTMLElement ,
LONG  
)

Definition at line 740 of file htmlelemcol.c.

741 {
742  elem_vector_t buf = {NULL, 0, 8};
743  nsIDOMNode *parent_node, *iter;
744  UINT16 parent_type;
745  HTMLDOMNode *node;
746  int i;
747  nsresult nsres;
748  HRESULT hres;
749 
750  iter = elem->node.nsnode;
751  nsIDOMNode_AddRef(iter);
752 
753  /* Find document or document fragment parent. */
754  while(1) {
755  nsres = nsIDOMNode_GetParentNode(iter, &parent_node);
756  nsIDOMNode_Release(iter);
757  assert(nsres == NS_OK);
758  if(!parent_node)
759  break;
760 
761  nsres = nsIDOMNode_GetNodeType(parent_node, &parent_type);
762  assert(nsres == NS_OK);
763 
764  if(parent_type != ELEMENT_NODE) {
765  if(parent_type != DOCUMENT_NODE && parent_type != DOCUMENT_FRAGMENT_NODE)
766  FIXME("Unexpected parent_type %d\n", parent_type);
767  break;
768  }
769 
770  iter = parent_node;
771  }
772 
773  if(!parent_node) {
774  *ret = -1;
775  return S_OK;
776  }
777 
778  hres = get_node(elem->node.doc, parent_node, TRUE, &node);
779  nsIDOMNode_Release(parent_node);
780  if(FAILED(hres))
781  return hres;
782 
783 
784  /* Create all children collection and find the element in it.
785  * This could be optimized if we ever find the reason. */
786  buf.buf = heap_alloc(buf.size*sizeof(*buf.buf));
787  if(!buf.buf) {
788  IHTMLDOMNode_Release(&node->IHTMLDOMNode_iface);
789  return E_OUTOFMEMORY;
790  }
791 
792  create_all_list(elem->node.doc, node, &buf);
793 
794  for(i=0; i < buf.len; i++) {
795  if(buf.buf[i] == elem)
796  break;
797  }
798  IHTMLDOMNode_Release(&node->IHTMLDOMNode_iface);
799  heap_free(buf.buf);
800  if(i == buf.len) {
801  FIXME("The element is not in parent's child list?\n");
802  return E_UNEXPECTED;
803  }
804 
805  *ret = i;
806  return S_OK;
807 }
#define TRUE
Definition: types.h:120
GLenum GLuint GLenum GLsizei const GLchar * buf
Definition: glext.h:7751
#define assert(x)
Definition: debug.h:53
static void create_all_list(HTMLDocumentNode *doc, HTMLDOMNode *elem, elem_vector_t *buf)
Definition: htmlelemcol.c:614
static void * heap_alloc(size_t len)
Definition: appwiz.h:65
#define NS_OK
struct node node
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
Definition: glfuncs.h:248
#define E_OUTOFMEMORY
Definition: ddrawi.h:100
static size_t elem
Definition: string.c:68
#define FIXME(fmt,...)
Definition: debug.h:110
smooth NULL
Definition: ftsmooth.c:416
HRESULT hres
Definition: protocol.c:465
LONG HRESULT
Definition: typedefs.h:77
int ret
#define S_OK
Definition: intsafe.h:59
HRESULT get_node(HTMLDocumentNode *This, nsIDOMNode *nsnode, BOOL create, HTMLDOMNode **ret)
Definition: htmlnode.c:1339
unsigned short UINT16
#define E_UNEXPECTED
Definition: winerror.h:2456
HRESULT nsresult
Definition: nsiface.idl:39
static BOOL heap_free(void *mem)
Definition: appwiz.h:75
Definition: dlist.c:348

Referenced by HTMLElement_get_sourceIndex().

◆ get_frame_by_name()

HRESULT get_frame_by_name ( HTMLOuterWindow ,
const WCHAR ,
BOOL  ,
HTMLOuterWindow **   
)

Definition at line 343 of file htmlwindow.c.

344 {
345  nsIDOMWindowCollection *nsframes;
347  nsIDOMWindow *nswindow;
348  nsAString name_str;
349  UINT32 length, i;
350  nsresult nsres;
351  HRESULT hres = S_OK;
352 
353  nsres = nsIDOMWindow_GetFrames(This->nswindow, &nsframes);
354  if(NS_FAILED(nsres)) {
355  FIXME("nsIDOMWindow_GetFrames failed: 0x%08x\n", nsres);
356  return E_FAIL;
357  }
358 
359  if(!nsframes) {
360  WARN("nsIDOMWindow_GetFrames returned NULL nsframes: %p\n", This->nswindow);
361  return DISP_E_MEMBERNOTFOUND;
362  }
363 
364  nsAString_InitDepend(&name_str, name);
365  nsres = nsIDOMWindowCollection_NamedItem(nsframes, &name_str, &nswindow);
366  nsAString_Finish(&name_str);
367  if(NS_FAILED(nsres)) {
368  nsIDOMWindowCollection_Release(nsframes);
369  return E_FAIL;
370  }
371 
372  if(nswindow) {
373  *ret = nswindow_to_window(nswindow);
374  return S_OK;
375  }
376 
377  nsres = nsIDOMWindowCollection_GetLength(nsframes, &length);
378  assert(nsres == NS_OK);
379 
380  for(i = 0; i < length && !window; ++i) {
381  HTMLOuterWindow *window_iter;
382  BSTR id;
383 
384  nsres = nsIDOMWindowCollection_Item(nsframes, i, &nswindow);
385  if(NS_FAILED(nsres)) {
386  FIXME("nsIDOMWindowCollection_Item failed: 0x%08x\n", nsres);
387  hres = E_FAIL;
388  break;
389  }
390 
391  window_iter = nswindow_to_window(nswindow);
392 
393  nsIDOMWindow_Release(nswindow);
394 
395  if(!window_iter) {
396  WARN("nsIDOMWindow without HTMLOuterWindow: %p\n", nswindow);
397  continue;
398  }
399 
400  hres = IHTMLElement_get_id(&window_iter->frame_element->element.IHTMLElement_iface, &id);
401  if(FAILED(hres)) {
402  FIXME("IHTMLElement_get_id failed: 0x%08x\n", hres);
403  break;
404  }
405 
406  if(id && !strcmpiW(id, name))
407  window = window_iter;
408 
409  SysFreeString(id);
410 
411  if(!window && deep)
412  get_frame_by_name(window_iter, name, TRUE, &window);
413  }
414 
415  nsIDOMWindowCollection_Release(nsframes);
416  if(FAILED(hres))
417  return hres;
418 
419  *ret = window;
420  return NS_OK;
421 }
#define TRUE
Definition: types.h:120
#define WARN(fmt,...)
Definition: debug.h:111
#define DISP_E_MEMBERNOTFOUND
Definition: winerror.h:2512
#define assert(x)
Definition: debug.h:53
OLECHAR * BSTR
Definition: compat.h:1934
#define E_FAIL
Definition: ddrawi.h:102
HTMLFrameBase * frame_element
#define NS_OK
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
Definition: glfuncs.h:248
unsigned int UINT32
#define FIXME(fmt,...)
Definition: debug.h:110
smooth NULL
Definition: ftsmooth.c:416
HTMLOuterWindow * nswindow_to_window(const nsIDOMWindow *nswindow)
Definition: htmlwindow.c:3099
#define NS_FAILED(res)
HRESULT hres
Definition: protocol.c:465
LONG HRESULT
Definition: typedefs.h:77
GLenum GLuint GLenum GLsizei length
Definition: glext.h:5579
int ret
HTMLElement element
static IHTMLWindow2 * window
Definition: events.c:77
#define strcmpiW(s1, s2)
Definition: unicode.h:39
IHTMLElement IHTMLElement_iface
#define S_OK
Definition: intsafe.h:59
void nsAString_InitDepend(nsAString *, const PRUnichar *) DECLSPEC_HIDDEN
Definition: nsembed.c:826
void WINAPI DECLSPEC_HOTPATCH SysFreeString(BSTR str)
Definition: oleaut.c:274
void nsAString_Finish(nsAString *) DECLSPEC_HIDDEN
Definition: nsembed.c:836
Definition: name.c:36
HRESULT nsresult
Definition: nsiface.idl:39
GLenum GLuint id
Definition: glext.h:5579
HRESULT get_frame_by_name(HTMLOuterWindow *This, const WCHAR *name, BOOL deep, HTMLOuterWindow **ret)
Definition: htmlwindow.c:343

Referenced by get_frame_by_name(), get_target_window(), HTMLWindow2_item(), HTMLWindow_invoke(), and WindowDispEx_GetDispID().

◆ get_htmldoc_classinfo()

HRESULT get_htmldoc_classinfo ( ITypeInfo **  typeinfo)

Definition at line 172 of file dispex.c.

173 {
174  HRESULT hres;
175 
176  if (!typelib)
177  hres = load_typelib();
178  if (!typelib)
179  return hres;
180 
181  hres = ITypeLib_GetTypeInfoOfGuid(typelib, &CLSID_HTMLDocument, typeinfo);
182  if(FAILED(hres))
183  ERR("GetTypeInfoOfGuid failed: %08x\n", hres);
184  return hres;
185 }
static ITypeLib * typelib
Definition: dispex.c:90
static HRESULT load_typelib(void)
Definition: dispex.c:102
HRESULT hres
Definition: protocol.c:465
LONG HRESULT
Definition: typedefs.h:77
#define ERR(fmt,...)
Definition: debug.h:109

Referenced by ProvideClassInfo_GetClassInfo().

◆ get_node()

HRESULT get_node ( HTMLDocumentNode ,
nsIDOMNode ,
BOOL  ,
HTMLDOMNode **   
)

Definition at line 1339 of file htmlnode.c.

1340 {
1341  nsISupports *unk = NULL;
1342  nsresult nsres;
1343 
1344  nsres = nsIDOMNode_GetMshtmlNode(nsnode, &unk);
1345  assert(nsres == NS_OK);
1346 
1347  if(unk) {
1348  *ret = get_node_obj((IHTMLDOMNode*)unk);
1349  nsISupports_Release(unk);
1350  return NS_OK;
1351  }
1352 
1353  if(!create) {
1354  *ret = NULL;
1355  return S_OK;
1356  }
1357 
1358  return create_node(This, nsnode, ret);
1359 }
#define assert(x)
Definition: debug.h:53
#define NS_OK
smooth NULL
Definition: ftsmooth.c:416
static HRESULT create_node(HTMLDocumentNode *, nsIDOMNode *, HTMLDOMNode **)
Definition: htmlnode.c:1216
int ret
#define S_OK
Definition: intsafe.h:59
HRESULT nsresult
Definition: nsiface.idl:39
static const struct access_res create[16]
Definition: package.c:7720
static HTMLDOMNode * get_node_obj(IHTMLDOMNode *)
Definition: htmlnode.c:1045

Referenced by check_event_attr(), create_all_list(), create_collection_from_htmlcol(), create_collection_from_nodelist(), fire_event(), fire_event_obj(), get_elem(), get_elem_source_index(), HTMLDocument3_get_documentElement(), HTMLDocument_elementFromPoint(), HTMLDocument_get_all(), HTMLDocument_get_body(), HTMLDocumentNode_invoke(), HTMLDOMChildrenCollection_item(), HTMLDOMChildrenCollectionEnum_Next(), HTMLDOMNode_appendChild(), HTMLDOMNode_get_firstChild(), HTMLDOMNode_get_lastChild(), HTMLDOMNode_get_nextSibling(), HTMLDOMNode_get_parentNode(), HTMLDOMNode_get_previousSibling(), HTMLDOMNode_insertBefore(), HTMLDOMNode_removeChild(), HTMLDOMNode_replaceChild(), HTMLDOMTextNode_splitText(), HTMLElement_get_offsetParent(), htmlform_item(), HTMLInputElement_get_form(), HTMLOptionElement_get_form(), HTMLOptionElementFactory_create(), htmlselect_item(), HTMLSelectElement_get_form(), HTMLTextAreaElement_get_form(), HTMLTxtRange_parentElement(), insert_adjacent_node(), NPP_New(), nsContextMenuListener_OnShowContextMenu(), run_bind_to_tree(), and script_elem_from_nsscript().

◆ get_node_text()

HRESULT get_node_text ( HTMLDOMNode ,
BSTR  
)

Definition at line 515 of file txtrange.c.

516 {
517  wstrbuf_t buf;
518  HRESULT hres = S_OK;
519 
520  if (!wstrbuf_init(&buf))
521  return E_OUTOFMEMORY;
522  wstrbuf_append_node_rec(&buf, node->nsnode);
523  if(buf.buf) {
524  *ret = SysAllocString(buf.buf);
525  if(!*ret)
527  } else {
528  *ret = NULL;
529  }
531 
532  if(SUCCEEDED(hres))
533  TRACE("ret %s\n", debugstr_w(*ret));
534  return hres;
535 }
GLenum GLuint GLenum GLsizei const GLchar * buf
Definition: glext.h:7751
static void wstrbuf_finish(wstrbuf_t *buf)
Definition: txtrange.c:354
static BOOL wstrbuf_init(wstrbuf_t *buf)
Definition: txtrange.c:344
#define E_OUTOFMEMORY
Definition: ddrawi.h:100
#define debugstr_w
Definition: kernel32.h:32
smooth NULL
Definition: ftsmooth.c:416
BSTR WINAPI SysAllocString(LPCOLESTR str)
Definition: oleaut.c:241
#define TRACE(s)
Definition: solgame.cpp:4
HRESULT hres
Definition: protocol.c:465
LONG HRESULT
Definition: typedefs.h:77
int ret
#define S_OK
Definition: intsafe.h:59
#define SUCCEEDED(hr)
Definition: intsafe.h:57
static void wstrbuf_append_node_rec(wstrbuf_t *buf, nsIDOMNode *node)
Definition: txtrange.c:439
Definition: dlist.c:348

Referenced by HTMLElement_get_innerText().

◆ get_nscategory_entry()

char* get_nscategory_entry ( const char ,
const char  
)

Definition at line 898 of file nsembed.c.

899 {
900  char *ret = NULL;
901  nsresult nsres;
902 
903  nsres = nsICategoryManager_GetCategoryEntry(cat_mgr, category, entry, &ret);
904  return NS_SUCCEEDED(nsres) ? ret : NULL;
905 }
static nsICategoryManager * cat_mgr
Definition: nsembed.c:63
smooth NULL
Definition: ftsmooth.c:416
#define NS_SUCCEEDED(res)
int ret
uint32_t entry
Definition: isohybrid.c:63
HRESULT nsresult
Definition: nsiface.idl:39

Referenced by is_supported_doc_mime().

◆ get_nsinterface()

nsresult get_nsinterface ( nsISupports ,
REFIID  ,
void **   
)

Definition at line 907 of file nsembed.c.

908 {
909  nsIInterfaceRequestor *iface_req;
910  nsresult nsres;
911 
912  nsres = nsISupports_QueryInterface(iface, &IID_nsIInterfaceRequestor, (void**)&iface_req);
913  if(NS_FAILED(nsres))
914  return nsres;
915 
916  nsres = nsIInterfaceRequestor_GetInterface(iface_req, riid, ppv);
917  nsIInterfaceRequestor_Release(iface_req);
918 
919  return nsres;
920 }
REFIID riid
Definition: precomp.h:44
REFIID LPVOID * ppv
Definition: atlbase.h:39
#define NS_FAILED(res)
HRESULT nsresult
Definition: nsiface.idl:39

Referenced by CustomDoc_Release(), do_ns_command(), exec_print(), get_clipboard_commands(), get_editor_controller(), get_ns_command_state(), load_nsuri(), and set_viewer_zoom().

◆ get_readystate_string()

HRESULT get_readystate_string ( READYSTATE  ,
BSTR  
)

Definition at line 205 of file htmlelem.c.

206 {
207  static const WCHAR uninitializedW[] = {'u','n','i','n','i','t','i','a','l','i','z','e','d',0};
208  static const WCHAR loadingW[] = {'l','o','a','d','i','n','g',0};
209  static const WCHAR loadedW[] = {'l','o','a','d','e','d',0};
210  static const WCHAR interactiveW[] = {'i','n','t','e','r','a','c','t','i','v','e',0};
211  static const WCHAR completeW[] = {'c','o','m','p','l','e','t','e',0};
212 
213  static const LPCWSTR readystate_strs[] = {
214  uninitializedW,
215  loadingW,
216  loadedW,
217  interactiveW,
218  completeW
219  };
220 
221  assert(readystate <= READYSTATE_COMPLETE);
222  *p = SysAllocString(readystate_strs[readystate]);
223  return *p ? S_OK : E_OUTOFMEMORY;
224 }
const WCHAR * LPCWSTR
Definition: xmlstorage.h:185
#define assert(x)
Definition: debug.h:53
#define E_OUTOFMEMORY
Definition: ddrawi.h:100
BSTR WINAPI SysAllocString(LPCOLESTR str)
Definition: oleaut.c:241
__wchar_t WCHAR
Definition: xmlstorage.h:180
#define S_OK
Definition: intsafe.h:59
GLfloat GLfloat p
Definition: glext.h:8902

Referenced by HTMLDocument_get_readyState(), and HTMLScriptElement_get_readyState().

◆ get_shdoclc()

HINSTANCE get_shdoclc ( void  )

Definition at line 155 of file main.c.

156 {
157  static const WCHAR wszShdoclc[] =
158  {'s','h','d','o','c','l','c','.','d','l','l',0};
159 
160  if(shdoclc)
161  return shdoclc;
162 
163  return shdoclc = LoadLibraryExW(wszShdoclc, NULL, LOAD_LIBRARY_AS_DATAFILE);
164 }
HINSTANCE WINAPI DECLSPEC_HOTPATCH LoadLibraryExW(LPCWSTR lpLibFileName, HANDLE hFile, DWORD dwFlags)
Definition: loader.c:288
smooth NULL
Definition: ftsmooth.c:416
__wchar_t WCHAR
Definition: xmlstorage.h:180
#define LOAD_LIBRARY_AS_DATAFILE
Definition: winbase.h:338
static HINSTANCE shdoclc
Definition: main.c:33

Referenced by HTMLWindow2_alert(), HTMLWindow2_confirm(), prompt_dlgproc(), set_default_templates(), and show_context_menu().

◆ get_target_window()

HTMLOuterWindow* get_target_window ( HTMLOuterWindow ,
nsAString ,
BOOL  
)

Definition at line 45 of file htmlanchor.c.

46 {
47  HTMLOuterWindow *top_window, *ret_window;
48  const PRUnichar *target;
49  HRESULT hres;
50 
51  static const WCHAR _parentW[] = {'_','p','a','r','e','n','t',0};
52  static const WCHAR _selfW[] = {'_','s','e','l','f',0};
53  static const WCHAR _topW[] = {'_','t','o','p',0};
54 
55  *use_new_window = FALSE;
56 
57  nsAString_GetData(target_str, &target);
58  TRACE("%s\n", debugstr_w(target));
59 
60  if(!*target || !strcmpiW(target, _selfW)) {
61  IHTMLWindow2_AddRef(&window->base.IHTMLWindow2_iface);
62  return window;
63  }
64 
65  if(!strcmpiW(target, _topW)) {
66  get_top_window(window, &top_window);
67  IHTMLWindow2_AddRef(&top_window->base.IHTMLWindow2_iface);
68  return top_window;
69  }
70 
71