virtual wxString GetCurrentURL();
virtual wxString GetCurrentTitle();
virtual wxString GetPageSource();
+ virtual wxString GetPageText();
//We do not want to hide the other overloads
using wxWebView::SetPage;
virtual void SetPage(const wxString& html, const wxString& baseUrl);
virtual void Reload(wxWebViewReloadFlags flags = wxWEB_VIEW_RELOAD_DEFAULT);
virtual wxString GetPageSource();
+ virtual wxString GetPageText();
virtual bool IsBusy();
virtual wxString GetCurrentURL();
virtual void Reload(wxWebViewReloadFlags flags = wxWEB_VIEW_RELOAD_DEFAULT);
virtual void Stop();
virtual wxString GetPageSource();
+ virtual wxString GetPageText() { return ""; }
virtual void SetPageTitle(const wxString& title) { m_pageTitle = title; }
virtual wxString GetPageTitle(){ return m_pageTitle; }
* shown
*/
virtual wxString GetPageSource() = 0;
+ virtual wxString GetPageText() = 0;
/**
* Get the zoom factor of the page
*/
virtual wxString GetPageSource() = 0;
+ /**
+ Get the text of the current page.
+ */
+ virtual wxString GetPageText() = 0;
+
/**
Returns whether the web control is currently busy (e.g. loading a page).
*/
wxConvUTF8);
}
+wxString wxWebViewWebKit::GetPageText()
+{
+ WebKitDOMDocument* doc;
+ WebKitDOMHTMLElement* body;
+
+ doc = webkit_web_view_get_dom_document(WEBKIT_WEB_VIEW(web_view));
+ body = webkit_dom_document_get_body(WEBKIT_DOM_DOCUMENT(doc));
+ return wxString(webkit_dom_html_element_get_inner_text(WEBKIT_DOM_HTML_ELEMENT(body)),
+ wxConvUTF8);
+}
+
// static
wxVisualAttributes
wxWebViewWebKit::GetClassDefaultAttributes(wxWindowVariant WXUNUSED(variant))
return selected;
}
+wxString wxWebViewIE::GetPageText()
+{
+ IHTMLDocument2* document = GetDocument();
+ BSTR out;
+ IHTMLElement* body;
+ HRESULT hr = document->get_body(&body);
+ if(SUCCEEDED(hr))
+ {
+ body->get_innerText(&out);
+ body->Release();
+ }
+ document->Release();
+ return wxString(out);
+}
+
bool wxWebViewIE::CanExecCommand(wxString command)
{
IHTMLDocument2* document = GetDocument();