kjavaappletserver.h00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024 #ifndef KJAVAAPPLETSERVER_H
00025 #define KJAVAAPPLETSERVER_H
00026
00027 #include "kjavaprocess.h"
00028 #include <qobject.h>
00029 #include <qmap.h>
00030
00031
00038 class KJavaAppletContext;
00039 class KJavaAppletServerPrivate;
00040 class JSStackFrame;
00041
00042 class KJavaAppletServer : public QObject
00043 {
00044 Q_OBJECT
00045
00046 public:
00051 KJavaAppletServer();
00052 ~KJavaAppletServer();
00053
00058 static KJavaAppletServer *allocateJavaServer();
00059
00064 static void freeJavaServer();
00065
00071 static QString getAppletLabel();
00072
00076 void createContext( int contextId, KJavaAppletContext* context );
00077
00082 void destroyContext( int contextId );
00083
00088 bool createApplet( int contextId, int appletId,
00089 const QString & name, const QString & clazzName,
00090 const QString & baseURL, const QString & user,
00091 const QString & password, const QString & authname,
00092 const QString & codeBase, const QString & jarFile,
00093 QSize size, const QMap<QString, QString>& params,
00094 const QString & windowTitle );
00095
00099 void initApplet( int contextId, int appletId );
00100
00104 void destroyApplet( int contextId, int appletId );
00105
00109 void startApplet( int contextId, int appletId );
00110
00114 void stopApplet( int contextId, int appletId );
00115
00119 void showConsole();
00120
00125 void sendURLData( int loaderID, int code, const QByteArray& data );
00129 void removeDataJob( int loaderID );
00130
00134 void quit();
00135 KJavaProcess* javaProcess() { return process; }
00136
00137 QString appletLabel();
00138
00139 void waitForReturnData(JSStackFrame *);
00140 void endWaitForReturnData();
00141
00142 bool getMember(QStringList & args, QStringList & ret_args);
00143 bool putMember(QStringList & args);
00144 bool callMember(QStringList & args, QStringList & ret_args);
00145 void derefObject(QStringList & args);
00146
00147 bool usingKIO();
00148 protected:
00149 void setupJava( KJavaProcess* p );
00150
00151 KJavaProcess* process;
00152
00153 protected slots:
00154 void slotJavaRequest( const QByteArray& qb );
00155 void checkShutdown();
00156 void timerEvent(QTimerEvent *);
00157
00158 private:
00159 KJavaAppletServerPrivate* d;
00160
00161 };
00162
00163
00164 class PermissionDialog : public QObject
00165 {
00166 Q_OBJECT
00167 public:
00168 PermissionDialog( QWidget* );
00169 ~PermissionDialog();
00170
00171 QCString exec( const QString & cert, const QString & perm );
00172
00173 private slots:
00174 void clicked();
00175
00176 private:
00177 QCString m_button;
00178 };
00179
00180 #endif // KJAVAAPPLETSERVER_H
|