/*! See WlanWizardPage::initializePage() */ HbWidget* WlanWizardPageGenericError::initializePage() { OstTraceFunctionEntry0( WLANWIZARDPAGEGENERICERROR_INITIALIZEPAGE_ENTRY ); // Create the visualization at the first time if (!mWidget) { HbDocumentLoader docLoader(mWizard->mainWindow()); bool ok; docLoader.load(":/docml/occ_add_wlan_error.docml", &ok); Q_ASSERT(ok); mWidget = qobject_cast<HbWidget*> (docLoader.findWidget("occ_add_wlan_error")); Q_ASSERT(mWidget != NULL); mLabel = qobject_cast<HbLabel*> (docLoader.findWidget("dialog")); Q_ASSERT(mLabel != NULL); } // Get the error string from the wizards configurations mLabel->setPlainText( mWizard->configuration( WlanWizardHelper::ConfGenericErrorString).toString()); OstTraceFunctionExit0( WLANWIZARDPAGEGENERICERROR_INITIALIZEPAGE_EXIT ); return mWidget; }
bool XSLStyleSheet::parseString(const String& string, bool) { // Parse in a single chunk into an xmlDocPtr const UChar BOM = 0xFEFF; const unsigned char BOMHighByte = *reinterpret_cast<const unsigned char*>(&BOM); setLoaderForLibXMLCallbacks(docLoader()); if (!m_stylesheetDocTaken) xmlFreeDoc(m_stylesheetDoc); m_stylesheetDocTaken = false; #if ENABLE(INSPECTOR) Console* console = 0; if (Frame* frame = ownerDocument()->frame()) console = frame->domWindow()->console(); xmlSetStructuredErrorFunc(console, XSLTProcessor::parseErrorFunc); xmlSetGenericErrorFunc(console, XSLTProcessor::genericErrorFunc); #endif const char* buffer = reinterpret_cast<const char*>(string.characters()); int size = string.length() * sizeof(UChar); xmlParserCtxtPtr ctxt = xmlCreateMemoryParserCtxt(buffer, size); if (m_parentStyleSheet) { // The XSL transform may leave the newly-transformed document // with references to the symbol dictionaries of the style sheet // and any of its children. XML document disposal can corrupt memory // if a document uses more than one symbol dictionary, so we // ensure that all child stylesheets use the same dictionaries as their // parents. xmlDictFree(ctxt->dict); ctxt->dict = m_parentStyleSheet->m_stylesheetDoc->dict; xmlDictReference(ctxt->dict); } m_stylesheetDoc = xmlCtxtReadMemory(ctxt, buffer, size, href().utf8().data(), BOMHighByte == 0xFF ? "UTF-16LE" : "UTF-16BE", XML_PARSE_NOENT | XML_PARSE_DTDATTR | XML_PARSE_NOWARNING | XML_PARSE_NOCDATA); xmlFreeParserCtxt(ctxt); loadChildSheets(); xmlSetStructuredErrorFunc(0, 0); xmlSetGenericErrorFunc(0, 0); setLoaderForLibXMLCallbacks(0); return m_stylesheetDoc; }
// nsIWebProgressListener implementation NS_IMETHODIMP nsMsgPrintEngine::OnStateChange(nsIWebProgress* aWebProgress, nsIRequest *aRequest, PRUint32 progressStateFlags, nsresult aStatus) { nsresult rv = NS_OK; // top-level document load data if (progressStateFlags & nsIWebProgressListener::STATE_IS_DOCUMENT) { if (progressStateFlags & nsIWebProgressListener::STATE_START) { // Tell the user we are loading... nsString msg; GetString(NS_LITERAL_STRING("LoadingMessageToPrint").get(), msg); SetStatusMessage(msg); } if (progressStateFlags & nsIWebProgressListener::STATE_STOP) { nsCOMPtr<nsIDocumentLoader> docLoader(do_QueryInterface(aWebProgress)); if (docLoader) { // Check to see if the document DOMWin that is finished loading is the same // one as the mail msg that we started to load. // We only want to print when the entire msg and all of its attachments // have finished loading. // The mail msg doc is the last one to receive the STATE_STOP notification nsCOMPtr<nsISupports> container; docLoader->GetContainer(getter_AddRefs(container)); nsCOMPtr<nsIDOMWindow> domWindow(do_GetInterface(container)); if (domWindow.get() != mMsgDOMWin.get()) { return NS_OK; } } nsCOMPtr<nsIWebProgressListener> wpl(do_QueryInterface(mPrintPromptService)); if (wpl) { wpl->OnStateChange(nsnull, nsnull, nsIWebProgressListener::STATE_STOP|nsIWebProgressListener::STATE_IS_DOCUMENT, nsnull); mPrintProgressListener = nsnull; mPrintProgress = nsnull; mPrintProgressParams = nsnull; } bool isPrintingCancelled = false; if (mPrintSettings) { mPrintSettings->GetIsCancelled(&isPrintingCancelled); } if (!isPrintingCancelled) { // if aWebProgress is a documentloader than the notification from // loading the documents. If it is NULL (or not a DocLoader) then it // it coming from Printing if (docLoader) { // Now, fire off the print operation! rv = NS_ERROR_FAILURE; // Tell the user the message is loaded... nsString msg; GetString(NS_LITERAL_STRING("MessageLoaded").get(), msg); SetStatusMessage(msg); NS_ASSERTION(mDocShell,"can't print, there is no docshell"); if ( (!mDocShell) || (!aRequest) ) { return StartNextPrintOperation(); } nsCOMPtr<nsIChannel> aChannel = do_QueryInterface(aRequest); if (!aChannel) return NS_ERROR_FAILURE; // Make sure this isn't just "about:blank" finishing.... nsCOMPtr<nsIURI> originalURI = nsnull; if (NS_SUCCEEDED(aChannel->GetOriginalURI(getter_AddRefs(originalURI))) && originalURI) { nsCAutoString spec; if (NS_SUCCEEDED(originalURI->GetSpec(spec))) { if (spec.Equals("about:blank")) { return StartNextPrintOperation(); } } } // If something bad happens here (menaing we can fire the PLEvent, highly unlikely) // we will still ask the msg to print, but if the user "cancels" out of the // print dialog the hidden print window will not be "closed" if (!FirePrintEvent()) { PrintMsgWindow(); } } else { FireStartNextEvent(); rv = NS_OK; } } else { mWindow->Close(); } } } return rv; }