def nextBtnClick(self, text): check = self.matchCase.isChecked() if check: self.browser.findText(text, QWebEnginePage.FindFlags(2), lambda result: self.changeMatchTip(result)) else: self.browser.findText(text, QWebEnginePage.FindFlags(0), lambda result: self.changeMatchTip(result))
def searchPage(self, text): if not text.strip(): self.searchDelIcon.setVisible(False) else: self.searchDelIcon.setVisible(True) check = self.matchCase.isChecked() if check: self.browser.findText(text, QWebEnginePage.FindFlags(2), lambda result: self.changeMatchTip(result)) else: self.browser.findText(text, QWebEnginePage.FindFlags(0), lambda result: self.changeMatchTip(result))
def prev_result(self, *, result_cb=None): # The int() here makes sure we get a copy of the flags. flags = QWebEnginePage.FindFlags(int(self._flags)) if flags & QWebEnginePage.FindBackward: flags &= ~QWebEnginePage.FindBackward else: flags |= QWebEnginePage.FindBackward self._find(self.text, flags, result_cb, 'prev_result')
def _findNext(self, query: FindQuery): flags = 0 if query.direction == FindDirection.Backward: flags |= QWebEnginePage.FindBackward if query.options.caseSensitive: flags |= QWebEnginePage.FindCaseSensitively self.findText(query.expression, QWebEnginePage.FindFlags(flags), query.callback)
def findText(self, text, flags): options = QWebEnginePage.FindFlags() if flags & QTextDocument.FindFlag.FindBackward: options |= QWebEnginePage.FindFlag.FindBackward if flags & QTextDocument.FindFlag.FindCaseSensitively: options |= QWebEnginePage.FindFlag.FindCaseSensitively super().findText(text, options) return True
def search(self, text, *, ignore_case='never', reverse=False, result_cb=None): self.text = text self._flags = QWebEnginePage.FindFlags(0) if self._is_case_sensitive(ignore_case): self._flags |= QWebEnginePage.FindCaseSensitively if reverse: self._flags |= QWebEnginePage.FindBackward self._find(text, self._flags, result_cb, 'search')
def search(self, text, *, ignore_case=False, reverse=False, result_cb=None): flags = QWebEnginePage.FindFlags(0) if ignore_case == 'smart': if not text.islower(): flags |= QWebEnginePage.FindCaseSensitively elif not ignore_case: flags |= QWebEnginePage.FindCaseSensitively if reverse: flags |= QWebEnginePage.FindBackward self.text = text self._flags = flags self._find(text, flags, result_cb)
def search(self, text, *, ignore_case='never', reverse=False, result_cb=None): # Don't go to next entry on duplicate search if self.text == text and self.search_displayed: log.webview.debug("Ignoring duplicate search request" " for {}".format(text)) return self.text = text self._flags = QWebEnginePage.FindFlags(0) if self._is_case_sensitive(ignore_case): self._flags |= QWebEnginePage.FindCaseSensitively if reverse: self._flags |= QWebEnginePage.FindBackward self._find(text, self._flags, result_cb, 'search')
def __findPrevNextQWebEngineView(self, backwards): """ Private method to to search the associated edit widget of type QWebEngineView. @param backwards flag indicating a backwards search @type bool """ from PyQt5.QtWebEngineWidgets import QWebEnginePage findFlags = QWebEnginePage.FindFlags() if self.caseCheckBox.isChecked(): findFlags |= QWebEnginePage.FindCaseSensitively if backwards: findFlags |= QWebEnginePage.FindBackward self.__textedit.findText(self.findtextCombo.currentText(), findFlags, self.__findNextPrevCallback)
def search(self): self.view.page().findText(self.dlgSearch.lneSearch.text(), QWebEnginePage.FindFlags())
def find(self, forwards=True): text = unicode_type(self.search_text.text()).strip() flags = QWebEnginePage.FindFlags(0) if forwards else QWebEnginePage.FindFlag.FindBackward self.find_data = text, flags, forwards self.view.findText(text, flags, self.find_callback)
def __init__(self, parent=None): super().__init__(parent) self._flags = QWebEnginePage.FindFlags(0)
def find(self, direction): text = unicode_type(self.search.text()) self.view._page.findText(text, (QWebEnginePage.FindBackward if direction == 'prev' else QWebEnginePage.FindFlags(0)))