wxWebFrame::wxWebFrame(wxWebView* container, wxWebFrame* parent, WebViewFrameData* data) : m_textMagnifier(1.0), m_isEditable(false), m_isInitialized(false), m_beingDestroyed(false), m_title(wxEmptyString) { m_impl = new WebFramePrivate(); WebCore::HTMLFrameOwnerElement* parentFrame = 0; if (data) { parentFrame = data->ownerElement; } WebCore::FrameLoaderClientWx* loaderClient = new WebCore::FrameLoaderClientWx(); m_impl->frame = WebCore::Frame::create(container->m_impl->page, parentFrame, loaderClient); m_impl->frame->deref(); loaderClient->setFrame(m_impl->frame.get()); loaderClient->setWebView(container); m_impl->frame->init(); m_isInitialized = true; }
wxWebFrame* kit(WebCore::Frame* frame) { if (!frame) return 0; if (!frame->loader()) return 0; WebCore::FrameLoaderClientWx* loaderClient = dynamic_cast<WebCore::FrameLoaderClientWx*>(frame->loader()->client()); if (loaderClient) return loaderClient->webFrame(); return 0; }
wxWebFrame::wxWebFrame(wxWebView* container, wxWebFrame* parent, WebViewFrameData* data) : m_textMagnifier(1.0), m_isEditable(false), m_isInitialized(false), m_beingDestroyed(false) { m_impl = new WebFramePrivate(); WebCore::HTMLFrameOwnerElement* parentFrame = 0; if (data) { parentFrame = data->ownerElement; } WebCore::FrameLoaderClientWx* loaderClient = new WebCore::FrameLoaderClientWx(); RefPtr<WebCore::Frame> newFrame = WebCore::Frame::create(container->m_impl->page, parentFrame, loaderClient); m_impl->frame = newFrame.get(); if (data) newFrame->tree()->setName(data->name); // Subframes expect to be added to the FrameTree before init is called. if (parentFrame) parentFrame->document()->frame()->tree()->appendChild(newFrame.get()); loaderClient->setFrame(this); loaderClient->setWebView(container); if (data && data->ownerElement) m_impl->frame->ref(); m_impl->frame->init(); m_isInitialized = true; }