Ejemplo n.º 1
0
RenderWidget* HTMLAppletElement::renderWidgetForJSBindings()
{
    if (!canEmbedJava())
        return 0;

    RenderApplet* applet = toRenderApplet(renderer());
    if (applet)
        applet->createWidgetIfNecessary();

    return applet;
}
Ejemplo n.º 2
0
RenderWidget* HTMLAppletElement::renderWidgetForJSBindings() const
{
    Settings* settings = document()->settings();
    if (!settings || !settings->isJavaEnabled())
        return 0;

    RenderApplet* applet = static_cast<RenderApplet*>(renderer());
    if (applet)
        applet->createWidgetIfNecessary();

    return applet;
}
Ejemplo n.º 3
0
KJS::Bindings::Instance *HTMLAppletElement::getInstance() const
{
    Frame *frame = document()->frame();
    if (!frame || !frame->settings()->isJavaEnabled())
        return 0;

    if (m_instance)
        return m_instance.get();
    
    RenderApplet *r = static_cast<RenderApplet*>(renderer());
    if (r) {
        r->createWidgetIfNecessary();
        if (r->widget())
            m_instance = frame->createScriptInstanceForWidget(r->widget());
    }
    return m_instance.get();
}
KJS::Bindings::Instance *HTMLAppletElementImpl::getAppletInstance() const
{
    KHTMLPart* part = getDocument()->part();
    if (!part || !part->javaEnabled())
        return 0;

    if (appletInstance)
        return appletInstance;
    
    RenderApplet *r = static_cast<RenderApplet*>(m_render);
    if (r) {
        r->createWidgetIfNecessary();
        if (r->widget()){
            // Call into the part (and over the bridge) to pull the Bindings::Instance
            // from the guts of the plugin.
            void *_view = r->widget()->getView();
            appletInstance = KWQ(part)->getAppletInstanceForView((NSView *)_view);
        }
    }
    return appletInstance;
}