Пример #1
0
    def __engineFromUrlAvailable(self):
        """
        Private slot to add a search engine from the net.
        """
        reply = self.sender()
        if reply is None:
            return

        if reply.error() != QNetworkReply.NoError:
            reply.close()
            if reply in self.__replies:
                self.__replies.remove(reply)
            return

        reader = OpenSearchReader()
        engine = reader.read(reply)

        reply.close()
        if reply in self.__replies:
            self.__replies.remove(reply)

        if not engine.isValid():
            return

        if self.engineExists(engine.name()):
            return

        if not self.__confirmAddition(engine):
            return

        if not self.__addEngineByEngine(engine):
            return
Пример #2
0
    def restoreDefaults(self):
        """
        Public method to restore the default search engines.
        """
        reader = OpenSearchReader()
        for engine in OpenSearchDefaultEngines:
            engineDescription = QByteArray(OpenSearchDefaultEngines[engine])
            buffer_ = QBuffer(engineDescription)
            if not buffer_.open(QIODevice.ReadOnly):
                continue

            engine = reader.read(buffer_)

            self.__addEngineByEngine(engine)
Пример #3
0
    def __addEngineByFile(self, filename):
        """
        Private method to add a new search engine given a filename.
        
        @param filename name of a file containing the engine definition
            (string or QString)
        @return flag indicating success (boolean)
        """
        file_ = QFile(filename)
        if not file_.open(QIODevice.ReadOnly):
            return False

        reader = OpenSearchReader()
        engine = reader.read(file_)

        if not self.__addEngineByEngine(engine):
            return False

        return True