ReactOS 0.4.16-dev-297-gc569aee
binding.h
Go to the documentation of this file.
1/*
2 * Copyright 2011 Jacek Caban for CodeWeavers
3 *
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
8 *
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
13 *
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
17 */
18
19#pragma once
20
21typedef struct nsWineURI nsWineURI;
22
23/* Keep sync with request_method_strings in nsio.c */
24typedef enum {
29
30typedef enum {
35
36typedef struct {
40
42
54 char *charset;
58 struct list response_headers;
59 struct list request_headers;
60} nsChannel;
61
62typedef struct {
68
70
71struct BSCallback {
76
78
80
86
89
91
92 struct list entry;
93};
94
96
99
106
108};
109
119};
120
121typedef struct {
122 struct list entry;
126
127#define BINDING_NAVIGATED 0x0001
128#define BINDING_REPLACE 0x0002
129#define BINDING_FROMHIST 0x0004
130#define BINDING_REFRESH 0x0008
131#define BINDING_SUBMIT 0x0010
132#define BINDING_NOFRAG 0x0020
133
134HRESULT set_http_header(struct list*,const WCHAR*,int,const WCHAR*,int) DECLSPEC_HIDDEN;
136
148
154
156
160
unsigned int UINT32
void set_current_mon(HTMLOuterWindow *, IMoniker *, DWORD) DECLSPEC_HIDDEN
Definition: persist.c:99
IUri * nsuri_get_uri(nsWineURI *) DECLSPEC_HIDDEN
Definition: nsio.c:68
HRESULT read_stream(BSCallback *, IStream *, void *, DWORD, DWORD *) DECLSPEC_HIDDEN
Definition: navigate.c:602
IUri * get_uri_nofrag(IUri *) DECLSPEC_HIDDEN
Definition: nsio.c:77
HRESULT submit_form(HTMLOuterWindow *, const WCHAR *, IUri *, nsIInputStream *) DECLSPEC_HIDDEN
Definition: navigate.c:2361
binding_bom_t
Definition: binding.h:30
@ BOM_UTF8
Definition: binding.h:32
@ BOM_UTF16
Definition: binding.h:33
@ BOM_NONE
Definition: binding.h:31
REQUEST_METHOD
Definition: binding.h:24
@ METHOD_PUT
Definition: binding.h:26
@ METHOD_POST
Definition: binding.h:27
@ METHOD_GET
Definition: binding.h:25
void channelbsc_set_channel(nsChannelBSC *, nsChannel *, nsIStreamListener *, nsISupports *) DECLSPEC_HIDDEN
Definition: navigate.c:1839
HRESULT set_http_header(struct list *, const WCHAR *, int, const WCHAR *, int) DECLSPEC_HIDDEN
Definition: nsio.c:380
HRESULT super_navigate(HTMLOuterWindow *, IUri *, DWORD, const WCHAR *, BYTE *, DWORD) DECLSPEC_HIDDEN
Definition: navigate.c:2016
HRESULT channelbsc_load_stream(HTMLInnerWindow *, IMoniker *, IStream *) DECLSPEC_HIDDEN
Definition: navigate.c:1811
nsresult on_start_uri_open(NSContainer *, nsIURI *, cpp_bool *) DECLSPEC_HIDDEN
Definition: nsio.c:4019
void prepare_for_binding(HTMLDocument *, IMoniker *, DWORD) DECLSPEC_HIDDEN
Definition: persist.c:271
HRESULT set_moniker(HTMLOuterWindow *, IMoniker *, IUri *, IBindCtx *, nsChannelBSC *, BOOL) DECLSPEC_HIDDEN
Definition: persist.c:329
HRESULT load_nsuri(HTMLOuterWindow *, nsWineURI *, nsIInputStream *, nsChannelBSC *, DWORD) DECLSPEC_HIDDEN
Definition: nsio.c:250
HRESULT create_relative_uri(HTMLOuterWindow *, const WCHAR *, IUri **) DECLSPEC_HIDDEN
Definition: persist.c:163
HRESULT create_uri(const WCHAR *, DWORD, IUri **) DECLSPEC_HIDDEN
Definition: persist.c:158
HRESULT load_uri(HTMLOuterWindow *, IUri *, DWORD) DECLSPEC_HIDDEN
Definition: navigate.c:2306
HRESULT navigate_url(HTMLOuterWindow *, const WCHAR *, IUri *, DWORD) DECLSPEC_HIDDEN
Definition: navigate.c:2391
void init_bscallback(BSCallback *, const BSCallbackVtbl *, IMoniker *, DWORD) DECLSPEC_HIDDEN
Definition: navigate.c:584
HRESULT navigate_new_window(HTMLOuterWindow *, IUri *, const WCHAR *, request_data_t *, IHTMLWindow2 **) DECLSPEC_HIDDEN
Definition: navigate.c:2132
HRESULT hlink_frame_navigate(HTMLDocument *, LPCWSTR, nsChannel *, DWORD, BOOL *) DECLSPEC_HIDDEN
Definition: navigate.c:2193
void set_current_uri(HTMLOuterWindow *, IUri *) DECLSPEC_HIDDEN
Definition: persist.c:68
HRESULT create_channelbsc(IMoniker *, const WCHAR *, BYTE *, DWORD, BOOL, nsChannelBSC **) DECLSPEC_HIDDEN
Definition: navigate.c:1693
HRESULT create_redirect_nschannel(const WCHAR *, nsChannel *, nsChannel **) DECLSPEC_HIDDEN
Definition: nsio.c:3251
HRESULT create_doc_uri(HTMLOuterWindow *, IUri *, nsWineURI **) DECLSPEC_HIDDEN
Definition: nsio.c:3210
Definition: list.h:37
#define DECLSPEC_HIDDEN
Definition: precomp.h:8
unsigned char cpp_bool
Definition: atl.c:38
unsigned int BOOL
Definition: ntddk_ex.h:94
unsigned long DWORD
Definition: ntddk_ex.h:95
uint32_t entry
Definition: isohybrid.c:63
interface IHTMLWindow2 IHTMLWindow2
Definition: mshtmhst.idl:64
uint32_t nsLoadFlags
Definition: nsiface.idl:67
#define DWORD
Definition: nt_native.h:44
long LONG
Definition: pedump.c:60
HRESULT(* stop_binding)(BSCallback *, HRESULT)
Definition: binding.h:114
HRESULT(* on_progress)(BSCallback *, ULONG, LPCWSTR)
Definition: binding.h:116
HRESULT(* init_bindinfo)(BSCallback *)
Definition: binding.h:112
void(* destroy)(BSCallback *)
Definition: binding.h:111
HRESULT(* start_binding)(BSCallback *)
Definition: binding.h:113
HRESULT(* beginning_transaction)(BSCallback *, WCHAR **)
Definition: binding.h:118
HRESULT(* on_response)(BSCallback *, DWORD, LPCWSTR)
Definition: binding.h:117
DWORD bindf
Definition: binding.h:83
IHttpNegotiate2 IHttpNegotiate2_iface
Definition: binding.h:74
struct list entry
Definition: binding.h:92
IBindStatusCallback IBindStatusCallback_iface
Definition: binding.h:72
IInternetBindInfo IInternetBindInfo_iface
Definition: binding.h:75
ULONG readed
Definition: binding.h:82
IBinding * binding
Definition: binding.h:88
LONG ref
Definition: binding.h:79
request_data_t request_data
Definition: binding.h:81
IServiceProvider IServiceProvider_iface
Definition: binding.h:73
HTMLInnerWindow * window
Definition: binding.h:90
IMoniker * mon
Definition: binding.h:87
BOOL bindinfo_ready
Definition: binding.h:84
const BSCallbackVtbl * vtbl
Definition: binding.h:77
binding_bom_t bom
Definition: binding.h:85
WCHAR * data
Definition: binding.h:124
WCHAR * header
Definition: binding.h:123
nsChannel * nschannel
Definition: binding.h:100
BOOL is_js
Definition: binding.h:103
nsISupports * nscontext
Definition: binding.h:102
nsIStreamListener * nslistener
Definition: binding.h:101
BSCallback bsc
Definition: binding.h:98
BOOL is_doc_channel
Definition: binding.h:104
BOOL response_processed
Definition: binding.h:105
nsProtocolStream * nsstream
Definition: binding.h:107
char * content_type
Definition: binding.h:53
nsIInterfaceRequestor * notif_callback
Definition: binding.h:47
char * charset
Definition: binding.h:54
LONG ref
Definition: binding.h:41
nsILoadGroup * load_group
Definition: binding.h:46
nsIURI * original_uri
Definition: binding.h:51
nsIUploadChannel nsIUploadChannel_iface
Definition: binding.h:38
nsIInputStream * post_data_stream
Definition: binding.h:44
nsWineURI * uri
Definition: binding.h:43
nsLoadFlags load_flags
Definition: binding.h:50
nsIHttpChannel nsIHttpChannel_iface
Definition: binding.h:37
char * response_status_text
Definition: binding.h:56
nsIHttpChannelInternal nsIHttpChannelInternal_iface
Definition: binding.h:39
REQUEST_METHOD request_method
Definition: binding.h:57
nsISupports * owner
Definition: binding.h:48
UINT32 response_status
Definition: binding.h:55
nsIURI * referrer
Definition: binding.h:52
BOOL post_data_contains_headers
Definition: binding.h:45
nsILoadInfo * load_info
Definition: binding.h:49
Definition: nsio.c:34
WCHAR * headers
Definition: binding.h:64
ULONG post_data_len
Definition: binding.h:66
nsIInputStream * post_stream
Definition: binding.h:63
HGLOBAL post_data
Definition: binding.h:65
uint32_t ULONG
Definition: typedefs.h:59
#define HRESULT
Definition: msvc.h:7
__wchar_t WCHAR
Definition: xmlstorage.h:180
const WCHAR * LPCWSTR
Definition: xmlstorage.h:185
unsigned char BYTE
Definition: xxhash.c:193