00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef KJSEMBEDJSBINDING_H
00023 #define KJSEMBEDJSBINDING_H
00024
00025 #include <qstring.h>
00026 #include <qvariant.h>
00027
00028 #include <kjs/interpreter.h>
00029 #include <kjs/object.h>
00030 #include <kjs/types.h>
00031
00038 namespace KJS {
00039
00040 inline UString::UString( const QString &d )
00041 {
00042 uint len = d.length();
00043 UChar *dat = new UChar[len];
00044 memcpy( dat, d.unicode(), len * sizeof(UChar) );
00045 rep = UString::Rep::create(dat, len);
00046 }
00047
00048 inline QString UString::qstring() const
00049 {
00050 return QString((QChar*) data(), size());
00051 }
00052
00053 inline QConstString UString::qconststring() const
00054 {
00055 return QConstString((QChar*) data(), size());
00056 }
00057
00058 inline QString Identifier::qstring() const
00059 {
00060 return QString((QChar*) data(), size());
00061 }
00062
00063 }
00064
00065 namespace KJSEmbed {
00066 class JSObjectProxy;
00067
00069 KJS::Value convertToValue( KJS::ExecState *exec, const QVariant &val);
00070
00072 QVariant convertToVariant( KJS::ExecState *exec, const KJS::Value &v );
00073
00075 QString dumpObject( KJS::ExecState *exec, KJS::Object &obj );
00076
00078 QString dumpQObject( KJS::ExecState *exec, KJS::Object &obj );
00079
00083 QStringList dumpCompletion( KJS::ExecState *exec, KJS::Object &obj);
00084
00085 QPen extractQPen(KJS::ExecState *exec, const KJS::List &args, int idx);
00086 QFont extractQFont(KJS::ExecState *exec, const KJS::List &args, int idx);
00087 QBrush extractQBrush(KJS::ExecState *exec, const KJS::List &args, int idx);
00088 QPixmap extractQPixmap( KJS::ExecState *exec, const KJS::List &args, int idx);
00089 QImage extractQImage( KJS::ExecState *exec, const KJS::List &args, int idx);
00090 QString extractQString( KJS::ExecState *exec, const KJS::List &args, int idx);
00091 int extractInt( KJS::ExecState *exec, const KJS::List &args, int idx);
00092 QColor extractQColor(KJS::ExecState *exec, const KJS::List &args, int idx);
00093 QSize extractQSize(KJS::ExecState *exec, const KJS::List &args, int idx);
00094 bool extractBool(KJS::ExecState *exec, const KJS::List &args, int idx);
00095 double extractDouble(KJS::ExecState *exec, const KJS::List &args, int idx);
00096 uint extractUInt(KJS::ExecState *exec, const KJS::List &args, int idx);
00097 QStringList extractQStringList(KJS::ExecState *exec, const KJS::List &args, int idx);
00098
00099 QDateTime extractQDateTime(KJS::ExecState *exec, const KJS::List &args, int idx);
00100 QDate extractQDate(KJS::ExecState *exec, const KJS::List &args, int idx);
00101 QTime extractQTime(KJS::ExecState *exec, const KJS::List &args, int idx);
00102 QRect extractQRect(KJS::ExecState *exec, const KJS::List &args, int idx);
00103
00104 QFont extractQFont(KJS::ExecState *exec, const KJS::List &args, int idx);
00105 QStrList extractQStrList(KJS::ExecState *exec, const KJS::List &args, int idx);
00106
00107
00108 QStrList convertArrayToStrList( KJS::ExecState *exec, const KJS::Value &value);
00109 QStringList convertArrayToStringList( KJS::ExecState *exec, const KJS::Value &value);
00110 QDateTime convertDateToDateTime(KJS::ExecState *exec, const KJS::Value &value);
00111 }
00112
00113 #endif // KJSEMBEDJSBINDING_H
00114
00115
00116
00117