本文整理汇总了C++中KHTMLView::clear方法的典型用法代码示例。如果您正苦于以下问题:C++ KHTMLView::clear方法的具体用法?C++ KHTMLView::clear怎么用?C++ KHTMLView::clear使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类KHTMLView
的用法示例。
在下文中一共展示了KHTMLView::clear方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: documentFromXMLDocPtr
DocumentImpl* XSLTProcessorImpl::documentFromXMLDocPtr(xmlDocPtr resultDoc, xsltStylesheetPtr sheet)
{
// FIXME: For now we serialize and then reparse. It might be more optimal to write a DOM
// converter.
if (!resultDoc || !sheet) return 0;
DocumentImpl* result = 0;
xmlOutputBufferPtr outputBuf = xmlAllocOutputBuffer(NULL);
if (outputBuf) {
outputBuf->context = this;
outputBuf->writecallback = bufferWrite;
if (xsltSaveResultTo(outputBuf, resultDoc, sheet) < 0)
return 0;
// There are three types of output we need to be able to deal with:
// HTML (create an HTML document), XML (create an XML document), and text (wrap in a <pre> and
// make an XML document).
KHTMLView* view = m_sourceDocument->view();
const xmlChar* method;
XSLT_GET_IMPORT_PTR(method, sheet, method);
if (method == NULL && resultDoc->type == XML_HTML_DOCUMENT_NODE)
method = (const xmlChar*)"html";
if (xmlStrEqual(method, (const xmlChar*)"html"))
result = m_sourceDocument->implementation()->createHTMLDocument(view);
else
result = m_sourceDocument->implementation()->createDocument(view);
result->attach();
result->setURL(m_sourceDocument->URL());
result->setBaseURL(m_sourceDocument->baseURL());
result->setDecoder(m_sourceDocument->decoder()); // FIXME: Should just be UTF-16.
result->docLoader()->setShowAnimations(m_sourceDocument->docLoader()->showAnimations());
result->setTransformSourceDocument(m_sourceDocument);
if (xmlStrEqual(method, (const xmlChar*)"text")) {
// Modify the output so that it is a well-formed XHTML document with a <pre> tag enclosing
// the text.
QString beforeString("<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/strict.dtd\">\n<html xmlns=\"http://www.w3.org/1999/xhtml\">\n<body>\n<pre>\n<![CDATA[");
QString afterString("]]>\n</pre>\n</body>\n</html>\n");
m_resultOutput = beforeString + m_resultOutput + afterString;
}
// Before parsing, we need to detach the old document completely and get the new document
// in place. We have to do this only if we're rendering the result document.
if (view) {
view->clear();
view->part()->replaceDocImpl(result);
}
result->open();
result->determineParseMode(m_resultOutput); // Make sure we parse in the correct mode.
result->write(m_resultOutput);
result->finishParsing();
if (view)
view->part()->checkCompleted();
else
result->close(); // FIXME: Even viewless docs can load subresources. onload will fire too early.
// This is probably a bug in XMLHttpRequestObjects as well.
}
return result;
}