00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef KJSEMBEDPARTIMP_H
00023 #define KJSEMBEDPARTIMP_H
00024
00025 #include <qstringlist.h>
00026
00027 #include <kparts/part.h>
00028 #include <kjs/interpreter.h>
00029 #include <kjs/object.h>
00030 #include <kjsembed/jsbinding.h>
00031 #include <kjsembed/xmlactionclient.h>
00032 #include <kjsembed/kjsembedpart.h>
00033
00037 namespace KJSEmbed {
00038 namespace Bindings {
00039
00043 class KJSEmbedPartImp : public KJS::ObjectImp
00044 {
00045 public:
00047 enum MethodId {
00048 MethodPrint, MethodPrintLn, MethodWarn,
00049 MethodReadLine, MethodReadFile,
00050 MethodCreate, MethodLoadUI, MethodLoadScript,
00051 ConstructImage, ConstructTextStream, ConstructQObject,
00052 MethodDumpObject,
00053 CustomMethod=0x1000
00054 };
00055
00056 KJSEmbedPartImp( KJSEmbedPart *part, int id, const QString ¶m=QString::null );
00057 ~KJSEmbedPartImp();
00058
00059 QString parameter() const { return param; }
00060
00061 virtual bool implementsCall() const { return true; }
00062 virtual KJS::Value call( KJS::ExecState *exec, KJS::Object &self, const KJS::List &args );
00063
00064 virtual bool implementsConstruct() const { return true; }
00065 virtual KJS::Object construct( KJS::ExecState *exec, const KJS::List &args );
00066
00067 private:
00068 KJSEmbedPart *part;
00069 int id;
00070 QString param;
00071 };
00072
00073 }
00074 };
00075
00076 #endif // KJSEMBEDPARTIMP_H
00077
00078
00079
00080