bool wxWebView::Create(wxWindow* parent, int id, const wxPoint& position, const wxSize& size, long style, const wxString& name) { if ( (style & wxBORDER_MASK) == 0) style |= wxBORDER_NONE; if (!wxWindow::Create(parent, id, position, size, style, name)) return false; WTF::initializeThreading(); // This is necessary because we are using SharedTimerWin.cpp on Windows, // due to a problem with exceptions getting eaten when using the callback // approach to timers (which wx itself uses). #if __WXMSW__ WebCore::Page::setInstanceHandle(wxGetInstance()); #endif // this helps reduce flicker on platforms like MSW SetBackgroundStyle(wxBG_STYLE_CUSTOM); m_impl = new WebViewPrivate(); WebCore::InitializeLoggingChannelsIfNecessary(); WebCore::HTMLFrameOwnerElement* parentFrame = 0; WebCore::EditorClientWx* editorClient = new WebCore::EditorClientWx(); m_impl->page = new WebCore::Page(new WebCore::ChromeClientWx(this), new WebCore::ContextMenuClientWx(), editorClient, new WebCore::DragClientWx(), new WebCore::InspectorClientWx(), 0, 0); editorClient->setPage(m_impl->page); m_mainFrame = new wxWebFrame(this); // Default settings - we should have wxWebViewSettings class for this // eventually WebCore::Settings* settings = m_impl->page->settings(); settings->setLoadsImagesAutomatically(true); settings->setDefaultFixedFontSize(13); settings->setDefaultFontSize(16); settings->setSerifFontFamily("Times New Roman"); settings->setFixedFontFamily("Courier New"); settings->setSansSerifFontFamily("Arial"); settings->setStandardFontFamily("Times New Roman"); settings->setJavaScriptEnabled(true); #if ENABLE(DATABASE) settings->setDatabasesEnabled(true); #endif m_isInitialized = true; return true; }
bool WebView::Create(wxWindow* parent, const wxString& url, int id, const wxPoint& position, const wxSize& size, long style, const wxString& name) { #if OS(DARWIN) InitWebCoreSystemInterface(); #endif if ( (style & wxBORDER_MASK) == 0) style |= wxBORDER_NONE; if (!wxWindow::Create(parent, id, position, size, style, name)) return false; JSC::initializeThreading(); WTF::initializeMainThread(); // This is necessary because we are using SharedTimerWin.cpp on Windows, // due to a problem with exceptions getting eaten when using the callback // approach to timers (which wx itself uses). #if __WXMSW__ WebCore::setInstanceHandle(wxGetInstance()); #endif // this helps reduce flicker on platforms like MSW SetBackgroundStyle(wxBG_STYLE_CUSTOM); m_impl = new WebViewPrivate(); #if !LOG_DISABLED WebCore::initializeLoggingChannelsIfNecessary(); #endif // !LOG_DISABLED WebCore::HTMLFrameOwnerElement* parentFrame = 0; WebCore::EditorClientWx* editorClient = new WebCore::EditorClientWx(); WebCore::Page::PageClients pageClients; pageClients.chromeClient = new WebCore::ChromeClientWx(this); pageClients.contextMenuClient = new WebCore::ContextMenuClientWx(); pageClients.editorClient = editorClient; pageClients.dragClient = new WebCore::DragClientWx(); pageClients.inspectorClient = new WebCore::InspectorClientWx(); m_impl->page = new WebCore::Page(pageClients); editorClient->setPage(m_impl->page); m_mainFrame = new WebFrame(this); // Default settings - we should have WebViewSettings class for this // eventually WebCore::Settings* settings = m_impl->page->settings(); settings->setLoadsImagesAutomatically(true); settings->setDefaultFixedFontSize(13); settings->setDefaultFontSize(16); settings->setSerifFontFamily("Times New Roman"); settings->setFixedFontFamily("Courier New"); settings->setSansSerifFontFamily("Arial"); settings->setStandardFontFamily("Times New Roman"); settings->setScriptEnabled(true); #if ENABLE(SQL_DATABASE) SetDatabasesEnabled(true); #endif // we need to do this so that objects like the focusController are properly // initialized so that the activate handler is run properly. LoadURL(url); m_isInitialized = true; return true; }