/[gcjwebplugin]/gcjwebplugin/src/GCJPluginInstance.cc
ViewVC logotype

Diff of /gcjwebplugin/src/GCJPluginInstance.cc

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.11 by fitzsim, Sun Jul 27 19:03:22 2003 UTC revision 1.12 by mkoch, Mon Jul 28 07:00:43 2003 UTC
# Line 147  GCJPluginInstance::Initialize (nsIPlugin Line 147  GCJPluginInstance::Initialize (nsIPlugin
147        // Load applet        // Load applet
148        //        //
149        PLUGIN_DEBUG ("GCJPluginInstance::Initialize: AppletLoader.<init>\n");        PLUGIN_DEBUG ("GCJPluginInstance::Initialize: AppletLoader.<init>\n");
150        m_appletLoader = m_jniEnv->NewObject (appletLoader_cl, appletLoader_init);        JNI_NewObject0 (m_jniEnv, appletLoader_cl, appletLoader_init, m_appletLoader);
       assert (m_appletLoader != NULL);  
       CHECK_EXCEPTIONS;  
151    
152        if (tmp_code != NULL)        if (tmp_code != NULL)
153          {          {
154            PLUGIN_DEBUG ("GCJPluginInstance::Initialize: AppletLoader.setCode\n");            PLUGIN_DEBUG ("GCJPluginInstance::Initialize: AppletLoader.setCode\n");
155            m_jniEnv->CallVoidMethod (m_appletLoader, appletLoader_setCode, code);            JNI_CallVoidMethod1 (m_jniEnv, m_appletLoader, appletLoader_setCode, code);
           CHECK_EXCEPTIONS;  
156          }          }
157    
158        if (tmp_codeBase != NULL)        if (tmp_codeBase != NULL)
159          {          {
160            PLUGIN_DEBUG ("GCJPluginInstance::Initialize: AppletLoader.setCodeBase\n");            PLUGIN_DEBUG ("GCJPluginInstance::Initialize: AppletLoader.setCodeBase\n");
161            m_jniEnv->CallVoidMethod (m_appletLoader, appletLoader_setCodeBase, codeBase);            JNI_CallVoidMethod1 (m_jniEnv, m_appletLoader, appletLoader_setCodeBase, codeBase);
           CHECK_EXCEPTIONS;  
162          }          }
163    
164        if (tmp_documentBase != NULL)        if (tmp_documentBase != NULL)
165          {          {
166            PLUGIN_DEBUG ("GCJPluginInstance::Initialize: AppletLoader.setDocumentBase\n");            PLUGIN_DEBUG ("GCJPluginInstance::Initialize: AppletLoader.setDocumentBase\n");
167            m_jniEnv->CallVoidMethod (m_appletLoader, appletLoader_setDocumentBase, documentBase);            JNI_CallVoidMethod1 (m_jniEnv, m_appletLoader, appletLoader_setDocumentBase, documentBase);
           CHECK_EXCEPTIONS;  
168          }          }
169    
170        if (tmp_archive != NULL)        if (tmp_archive != NULL)
171          {          {
172            PLUGIN_DEBUG ("GCJPluginInstance::Initialize: AppletLoader.setArchive\n");            PLUGIN_DEBUG ("GCJPluginInstance::Initialize: AppletLoader.setArchive\n");
173            m_jniEnv->CallVoidMethod (m_appletLoader, appletLoader_setArchive, archive);            JNI_CallVoidMethod1 (m_jniEnv, m_appletLoader, appletLoader_setArchive, archive);
           CHECK_EXCEPTIONS;  
174          }          }
175    
176        for (int count = 0; count < numParams; count++)        for (int count = 0; count < numParams; count++)
177          {          {
178            PLUGIN_DEBUG ("GCJPluginInstance::Initialize: AppletLoader.addParameter\n");            PLUGIN_DEBUG ("GCJPluginInstance::Initialize: AppletLoader.addParameter\n");
179            m_jniEnv->CallVoidMethod (m_appletLoader, appletLoader_addParameter,            JNI_CallVoidMethod2 (m_jniEnv, m_appletLoader, appletLoader_addParameter,
180                                      m_jniEnv->NewStringUTF (tmp_paramNames [count]),                                 m_jniEnv->NewStringUTF (tmp_paramNames [count]),
181                                      m_jniEnv->NewStringUTF (tmp_paramValues [count]));                                 m_jniEnv->NewStringUTF (tmp_paramValues [count]));
           CHECK_EXCEPTIONS;  
182          }          }
183    
184        PLUGIN_DEBUG ("GCJPluginInstance::Initialize: AppletLoader.loadApplet\n");        PLUGIN_DEBUG ("GCJPluginInstance::Initialize: AppletLoader.loadApplet\n");
185        m_applet = m_jniEnv->CallObjectMethod (m_appletLoader, appletLoader_loadApplet);        JNI_CallObjectMethod0 (m_jniEnv, m_appletLoader, appletLoader_loadApplet, m_applet);
       CHECK_EXCEPTIONS;  
186      }      }
187    
188    pluginTagInfo->Release();    pluginTagInfo->Release();
# Line 202  GCJPluginInstance::Initialize (nsIPlugin Line 194  GCJPluginInstance::Initialize (nsIPlugin
194        return  NS_ERROR_FAILURE;        return  NS_ERROR_FAILURE;
195      }      }
196    
197    jclass applet_cl = m_jniEnv->GetObjectClass (m_applet);    jclass applet_cl;
198    assert (applet_cl != NULL);    jmethodID applet_init;
199    
200    jmethodID applet_init = m_jniEnv->GetMethodID (applet_cl, "init", "()V");    JNI_GetObjectClass (m_jniEnv, m_applet, applet_cl);
201    assert (applet_init);    JNI_GetMethodID (m_jniEnv, applet_cl, "init", "()V", applet_init);
202      JNI_CallVoidMethod0 (m_jniEnv, m_applet, applet_init);
   m_jniEnv->CallVoidMethod (m_applet, applet_init);  
   CHECK_EXCEPTIONS;  
203        
204    return NS_OK;    return NS_OK;
205  }  }
# Line 230  GCJPluginInstance::Start () Line 220  GCJPluginInstance::Start ()
220    
221    if (m_applet != NULL)    if (m_applet != NULL)
222      {      {
223        jclass applet_cl = m_jniEnv->GetObjectClass (m_applet);        jclass applet_cl;
224        assert (applet_cl != NULL);        jmethodID applet_start;
225          
226        jmethodID applet_start = m_jniEnv->GetMethodID (applet_cl, "start", "()V");        JNI_GetObjectClass (m_jniEnv, m_applet, applet_cl);
227        assert (applet_start);        JNI_GetMethodID (m_jniEnv, applet_cl, "start", "()V", applet_start);
228          JNI_CallVoidMethod0 (m_jniEnv, m_applet, applet_start);
       m_jniEnv->CallVoidMethod (m_applet, applet_start);  
       CHECK_EXCEPTIONS;  
229      }      }
230        
231    return NS_OK;    return NS_OK;
# Line 250  GCJPluginInstance::Stop () Line 238  GCJPluginInstance::Stop ()
238    
239    if (m_applet != NULL)    if (m_applet != NULL)
240      {      {
241        jclass applet_cl = m_jniEnv->GetObjectClass (m_applet);        jclass applet_cl;
242        assert (applet_cl != NULL);        jmethodID applet_stop;
243          
244        jmethodID applet_stop = m_jniEnv->GetMethodID (applet_cl, "stop", "()V");        JNI_GetObjectClass (m_jniEnv, m_applet, applet_cl);
245        assert (applet_stop);        JNI_GetMethodID (m_jniEnv, applet_cl, "stop", "()V", applet_stop);
246          JNI_CallVoidMethod0 (m_jniEnv, m_applet, applet_stop);
       m_jniEnv->CallVoidMethod (m_applet, applet_stop);  
       CHECK_EXCEPTIONS;  
247      }      }
248        
249    return NS_OK;    return NS_OK;
# Line 270  GCJPluginInstance::Destroy () Line 256  GCJPluginInstance::Destroy ()
256        
257    if (m_applet != NULL)    if (m_applet != NULL)
258      {      {
259        jclass applet_cl = m_jniEnv->GetObjectClass (m_applet);        jclass applet_cl;
260        assert (applet_cl != NULL);        jmethodID applet_destroy;
261          
262        jmethodID applet_destroy = m_jniEnv->GetMethodID (applet_cl,        JNI_GetObjectClass (m_jniEnv, m_applet, applet_cl);
263                                                          "destroy", "()V");        JNI_GetMethodID (m_jniEnv, applet_cl, "destroy", "()V", applet_destroy);
264        assert (applet_destroy);        JNI_CallVoidMethod0 (m_jniEnv, m_applet, applet_destroy);
   
       m_jniEnv->CallVoidMethod (m_applet, applet_destroy);  
       CHECK_EXCEPTIONS;  
265      }      }
266        
267    return NS_OK;    return NS_OK;
# Line 294  GCJPluginInstance::SetWindow (nsPluginWi Line 277  GCJPluginInstance::SetWindow (nsPluginWi
277        // First, create an embedded window.        // First, create an embedded window.
278        PLUGIN_DEBUG (" Finding EmbeddedWindow methods...\n");        PLUGIN_DEBUG (" Finding EmbeddedWindow methods...\n");
279    
280        jclass embeddedWindow_cl = m_jniEnv->FindClass (        jclass embeddedWindow_cl;
281                                     "gnu/java/awt/EmbeddedWindow");        jmethodID embeddedWindow_init;
282        assert (embeddedWindow_cl);        jmethodID embeddedWindow_setSize;
283          
284        jmethodID embeddedWindow_init = m_jniEnv->GetMethodID (        JNI_FindClass (m_jniEnv, "gnu/java/awt/EmbeddedWindow",
285                                                       embeddedWindow_cl,                       embeddedWindow_cl);
286                                                       "<init>", "(I)V");        JNI_GetMethodID (m_jniEnv, embeddedWindow_cl, "<init>", "(I)V",
287        assert (embeddedWindow_init);                         embeddedWindow_init);
288          JNI_GetMethodID (m_jniEnv, embeddedWindow_cl, "setSize", "(II)V",
289        jmethodID embeddedWindow_setSize = m_jniEnv->GetMethodID (                         embeddedWindow_setSize);
                                                         embeddedWindow_cl,  
                                                         "setSize", "(II)V");  
       assert (embeddedWindow_setSize);  
290    
291        PLUGIN_DEBUG2 (" Initializing EmbeddedWindow: %d...\n", (unsigned long) window->window);        PLUGIN_DEBUG2 (" Initializing EmbeddedWindow: %d...\n", (unsigned long) window->window);
292    
293        m_embeddedWindow = m_jniEnv->NewObject (embeddedWindow_cl, embeddedWindow_init,        JNI_NewObject1 (m_jniEnv, embeddedWindow_cl, embeddedWindow_init,
294                                                (jint) window->window);                        (jint) window->window, m_embeddedWindow);
       assert (m_embeddedWindow);  
295    
296        PLUGIN_DEBUG2 (" Setting EmbeddedWindow size: width  %d...\n", (unsigned long) window->width);        PLUGIN_DEBUG2 (" Setting EmbeddedWindow size: width  %d...\n", (unsigned long) window->width);
297        PLUGIN_DEBUG2 (" Setting EmbeddedWindow size: height %d...\n", (unsigned long) window->height);        PLUGIN_DEBUG2 (" Setting EmbeddedWindow size: height %d...\n", (unsigned long) window->height);
298    
299        m_jniEnv->CallVoidMethod (m_embeddedWindow, embeddedWindow_setSize,        JNI_CallVoidMethod2 (m_jniEnv, m_embeddedWindow, embeddedWindow_setSize,
300                                  (jint) (window->width), (jint) (window->height));                             (jint) (window->width), (jint) (window->height));
301    
302        PLUGIN_DEBUG (" Finding AppletLoader...\n");        PLUGIN_DEBUG (" Finding AppletLoader...\n");
303    
304        /* Now add the applet to this window. */        /* Now add the applet to this window. */
305        jclass appletLoader_cl = m_jniEnv->FindClass ("gnu/applet/AppletLoader");        jclass appletLoader_cl;
306        assert (appletLoader_cl != NULL);        jmethodID appletLoader_setEmbeddedWindow;
307          
308          JNI_FindClass (m_jniEnv, "gnu/applet/AppletLoader", appletLoader_cl);
309    
310        PLUGIN_DEBUG (" Finding setEmbeddedWindow...\n");        PLUGIN_DEBUG (" Finding setEmbeddedWindow...\n");
311    
312        jmethodID appletLoader_setEmbeddedWindow = m_jniEnv->GetMethodID (        JNI_GetMethodID (m_jniEnv, appletLoader_cl, "setEmbeddedWindow",
313                                                     appletLoader_cl,                         "(Lgnu.java.awt.EmbeddedWindow;)V", appletLoader_setEmbeddedWindow);
                                                    "setEmbeddedWindow", "(Lgnu.java.awt.EmbeddedWindow;)V");  
       assert (appletLoader_setEmbeddedWindow != NULL);  
314    
315        PLUGIN_DEBUG (" Calling setEmbeddedWindow...\n");        PLUGIN_DEBUG (" Calling setEmbeddedWindow...\n");
316    
# Line 341  GCJPluginInstance::SetWindow (nsPluginWi Line 320  GCJPluginInstance::SetWindow (nsPluginWi
320        if (!m_embeddedWindow)        if (!m_embeddedWindow)
321          PLUGIN_DEBUG (" no m_embeddedWindow!...\n");          PLUGIN_DEBUG (" no m_embeddedWindow!...\n");
322    
323        m_jniEnv->CallVoidMethod (m_appletLoader, appletLoader_setEmbeddedWindow, m_embeddedWindow);        JNI_CallVoidMethod1 (m_jniEnv, m_appletLoader,
324                               appletLoader_setEmbeddedWindow, m_embeddedWindow);
325    
       CHECK_EXCEPTIONS;  
326      }      }
327    
328    return NS_OK;    return NS_OK;
# Line 388  GCJPluginInstance::GetValue (nsPluginIns Line 367  GCJPluginInstance::GetValue (nsPluginIns
367          *(PRBool*) value = PR_FALSE;          *(PRBool*) value = PR_FALSE;
368          break;          break;
369    
370    /*
371        case (nsPluginInstanceVariable)NPPVpluginNeedsXEmbed:        case (nsPluginInstanceVariable)NPPVpluginNeedsXEmbed:
372          *(PRBool*) value = PR_TRUE;          *(PRBool*) value = PR_TRUE;
373          break;          break;
374    */
375    
376        default:        default:
377          PLUGIN_DEBUG ("GCJPluginInstance::GetValue: Requested unknown value\n");          PLUGIN_DEBUG ("GCJPluginInstance::GetValue: Requested unknown value\n");

Legend:
Removed from v.1.11  
changed lines
  Added in v.1.12

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26