void pdf_renderer_control_TextSelected(string selected_text) { if (null != selected_text) { ObjWebBrowser.DoWebSearch(selected_text); } }
private void ReflectPDFDocument(string search_terms) { if (0 < pdf_documents_search_pool.Count) { TxtProgress.Text = String.Format("Document {0} of {1}.", pdf_documents_search_index + 1, pdf_documents_search_pool.Count); ObjProgress.Value = pdf_documents_search_index + 1; ObjProgress.Maximum = pdf_documents_search_pool.Count; } else { TxtProgress.Text = "No documents"; ObjProgress.Value = 1; ObjProgress.Maximum = 1; } if (null != this.pdf_document_rendered) { // Clear down the previous renderer control PDFRendererControlArea.Children.Clear(); if (null != this.pdf_renderer_control) { this.pdf_renderer_control.Dispose(); this.pdf_renderer_control = null; } this.pdf_document_rendered = null; this.DataContext = null; } if (null != pdf_document) { // Force inference of the title in case it has not been populated... PDFMetadataInferenceFromOCR.InferTitleFromOCR(pdf_document, true); this.pdf_document_rendered = pdf_document; this.DataContext = pdf_document.Bindable; if (pdf_document.DocumentExists) { ObjNoPDFAvailableMessage.Visibility = Visibility.Collapsed; PDFRendererControlArea.Visibility = Visibility.Visible; // Make sure the first page is OCRed... pdf_document.PDFRenderer.GetOCRText(1); // Set up the new renderer control this.pdf_renderer_control = new PDFRendererControl(this.pdf_document, false, PDFRendererControl.ZoomType.Zoom1Up); this.pdf_renderer_control.ReconsiderOperationMode(PDFRendererControl.OperationMode.TextSentenceSelect); this.pdf_renderer_control.TextSelected += pdf_renderer_control_TextSelected; PDFRendererControlArea.Children.Add(pdf_renderer_control); } else { ObjNoPDFAvailableMessage.Visibility = Visibility.Visible; PDFRendererControlArea.Visibility = Visibility.Collapsed; } // Make sure we have something to search for if (String.IsNullOrEmpty(search_terms)) { string title_combined = pdf_document.TitleCombined; if (PDFDocument.TITLE_UNKNOWN != title_combined && pdf_document.DownloadLocation != title_combined) { search_terms = pdf_document.TitleCombined; } } // Kick off the search if (!String.IsNullOrEmpty(search_terms)) { ObjWebBrowser.DoWebSearch(search_terms); } } }