00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
#ifndef _XMLHTTPREQUEST_H_
00022
#define _XMLHTTPREQUEST_H_
00023
00024
#include "ecma/kjs_binding.h"
00025
#include "ecma/kjs_dom.h"
00026
#include "misc/loader.h"
00027
00028
namespace KJS {
00029
00030
class XMLHttpRequestConstructorImp :
public ObjectImp {
00031
public:
00032 XMLHttpRequestConstructorImp(ExecState *exec,
const DOM::Document &d);
00033
virtual bool implementsConstruct() const;
00034 virtual Object construct(ExecState *exec, const List &args);
00035 private:
00036 DOM::
Document doc;
00037 };
00038
00039 class XMLHttpRequest : public
DOMObject, public khtml::CachedObjectClient {
00040
public:
00041 XMLHttpRequest(ExecState *,
const DOM::Document &d);
00042 ~XMLHttpRequest();
00043
virtual Value tryGet(ExecState *exec,
const Identifier &propertyName)
const;
00044 Value getValueProperty(ExecState *exec,
int token)
const;
00045
virtual void tryPut(ExecState *exec,
const Identifier &propertyName,
const Value& value,
int attr = None);
00046
void putValueProperty(ExecState *exec,
int token,
const Value& value,
int );
00047
void notifyFinished(khtml::CachedObject *);
00048
virtual bool toBoolean(ExecState *)
const {
return true; }
00049
virtual const ClassInfo* classInfo()
const {
return &info; }
00050
static const ClassInfo info;
00051
enum { Onreadystatechange, ReadyState, ResponseText, ResponseXML, Status, StatusText, Abort, GetAllResponseHeaders, GetResponseHeader, Open, Send, SetRequestHeader };
00052
private:
00053 };
00054
00055 }
00056
00057
#endif